Changeset 1747

Show
Ignore:
Timestamp:
04/03/08 08:56:40 (23 months ago)
Author:
takayama
Message:

Fixed BugId:70282
* Fixed for nested category based archive count issue.

Location:
branches/release-33
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • branches/release-33/lib/MT/Template/ContextHandlers.pm

    r1736 r1747  
    60646064sub _hdlr_archive_count { 
    60656065    my $ctx = $_[0]; 
    6066     if ($ctx->{inside_mt_categories}) { 
     6066    my $at = $ctx->{current_archive_type} || $ctx->{archive_type}; 
     6067    my $archiver = MT->publisher->archiver($at); 
     6068    if ($ctx->{inside_mt_categories} && !$archiver->date_based) { 
    60676069        return _hdlr_category_count($ctx); 
    60686070    } elsif (my $count = $ctx->stash('archive_count')) { 
  • branches/release-33/php/lib/archive_lib.php

    r1742 r1747  
    6868    function setup_args($ctx, &$args) { } 
    6969    function template_params(&$ctx) { } 
     70    function is_date_based() { return false; } 
    7071} 
    7172 
     
    145146 
    146147    // Override Method 
     148  function is_date_based() { return true; } 
     149 
    147150    function archive_prev_next($args, $content, &$ctx, &$repeat, $tag, $at) { 
    148151        $localvars = array('current_timestamp', 'current_timestamp_end', 'entries'); 
  • branches/release-33/php/lib/function.mtarchivecount.php

    r1174 r1747  
    77 
    88function smarty_function_mtarchivecount($args, &$ctx) { 
    9     if ($ctx->stash('inside_mt_categories')) { 
     9    $at = ''; 
     10    $archiver = null; 
     11    if ($at = $ctx->stash('current_archive_type')) { 
     12        require_once("archive_lib.php"); 
     13        global $_archivers; 
     14        $archiver = $_archivers[$at]; 
     15    } 
     16    if ($ctx->stash('inside_mt_categories') && !$archiver->is_date_based()) { 
    1017        return $ctx->tag('MTCategoryCount', $args); 
    1118    } elseif ($count = $ctx->stash('archive_count')) { 
     
    1623        $eargs = array(); 
    1724        $eargs['blog_id'] = $ctx->stash('blog_id'); 
    18         if ($at = $ctx->stash('current_archive_type')) { 
    19             require_once("archive_lib.php"); 
     25        if ($at) { 
    2026            $ts = $ctx->stash('current_timestamp'); 
    2127            $tse = $ctx->stash('current_timestamp_end'); 
    22             global $_archivers; 
    23             $archiver = $_archivers[$at]; 
    2428            if (isset($archiver)) { 
    2529                if ($ts && $tse) { 
  • branches/release-33/plugins/WidgetManager/default_widgets/current_category_monthly_archive_list.mtml

    r1463 r1747  
    77        <ul class="widget-list"> 
    88        </mt:ArchiveListHeader> 
    9             <li class="widget-list-item"><a href="<$mt:ArchiveLink$>"><__trans phrase="[_1] ([_2])" params="<$mt:ArchiveTitle$>%%<$mt:ArchiveCount$>"></a></li> 
     9            <li class="widget-list-item"><a href="<$mt:ArchiveLink$>"><__trans phrase="[_1]" params="<$mt:ArchiveTitle$>"></a></li> 
    1010        <mt:ArchiveListFooter> 
    1111        </ul>