Show
Ignore:
Timestamp:
02/21/08 19:58:16 (21 months ago)
Author:
bchoate
Message:

Fix for call to populate_archive_loop

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • branches/release-30/lib/MT/CMS/Blog.pm

    r1387 r1392  
    11081108} 
    11091109 
    1110 sub _populate_archive_loop { 
    1111     my $app = shift; 
    1112     my ( $blog, $obj ) = @_; 
    1113  
    1114     my $index = $app->config('IndexBasename'); 
    1115     my $ext = $blog->file_extension || ''; 
    1116     $ext = '.' . $ext if $ext ne ''; 
    1117  
    1118     require MT::TemplateMap; 
    1119     my @tmpl_maps = MT::TemplateMap->load( { template_id => $obj->id } ); 
    1120     my @maps; 
    1121     my %types; 
    1122     foreach my $map_obj (@tmpl_maps) { 
    1123         my $map = {}; 
    1124         $map->{map_id}           = $map_obj->id; 
    1125         $map->{map_is_preferred} = $map_obj->is_preferred; 
    1126         my $at = $map->{archive_type} = $map_obj->archive_type; 
    1127         $types{$at}++; 
    1128         $map->{ 'archive_type_preferred_' . $blog->archive_type_preferred } = 1 
    1129           if $blog->archive_type_preferred; 
    1130         $map->{file_template} = $map_obj->file_template 
    1131           if $map_obj->file_template; 
    1132  
    1133         my $archiver = $app->publisher->archiver($at); 
    1134         next unless $archiver; 
    1135         $map->{archive_label} = $archiver->archive_label; 
    1136         my $tmpls     = $archiver->default_archive_templates; 
    1137         my $tmpl_loop = []; 
    1138         foreach (@$tmpls) { 
    1139             my $name = $_->{label}; 
    1140             $name =~ s/\.html$/$ext/; 
    1141             $name =~ s/index$ext$/$index$ext/; 
    1142             push @$tmpl_loop, 
    1143               { 
    1144                 name    => $name, 
    1145                 value   => $_->{template}, 
    1146                 default => ( $_->{default} || 0 ) 
    1147               }; 
    1148         } 
    1149  
    1150         my $custom = 1; 
    1151  
    1152         foreach (@$tmpl_loop) { 
    1153             if (   ( !$map->{file_template} && $_->{default} ) 
    1154                 || ( $map->{file_template} eq $_->{value} ) ) 
    1155             { 
    1156                 $_->{selected}        = 1; 
    1157                 $custom               = 0; 
    1158                 $map->{file_template} = $_->{value} 
    1159                   if !$map->{file_template}; 
    1160             } 
    1161         } 
    1162         if ($custom) { 
    1163             unshift @$tmpl_loop, 
    1164               { 
    1165                 name     => $map->{file_template}, 
    1166                 value    => $map->{file_template}, 
    1167                 selected => 1, 
    1168               }; 
    1169         } 
    1170  
    1171         $map->{archive_tmpl_loop} = $tmpl_loop; 
    1172         if ( 
    1173             1 < MT::TemplateMap->count( 
    1174                 { archive_type => $at, blog_id => $obj->blog_id } 
    1175             ) 
    1176           ) 
    1177         { 
    1178             $map->{has_multiple_archives} = 1; 
    1179         } 
    1180  
    1181         push @maps, $map; 
    1182     } 
    1183     @maps = sort { MT::App::CMS::archive_type_sorter( $a, $b ) } @maps; 
    1184     return \@maps; 
    1185 } 
    1186  
    11871110sub can_view { 
    11881111    my ( $eh, $app, $id ) = @_;