Show
Ignore:
Timestamp:
04/11/08 04:20:13 (19 months ago)
Author:
fumiakiy
Message:

Stopped sorting search results by blog id in multi blog search thus mix search results from multiple blogs. BugId:75781

Added SearchResultsHeader and SearchResultsFooter template tags.

Gave up on resurrecting per blog limiting of number of results.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • branches/release-34/lib/MT/App/Search/TagSearch.pm

    r1516 r1855  
    3535 
    3636    my $format = $app->param('format') || q(); 
    37     my $method = "render$format"; 
     37    my $method = "render"; 
     38    $method .= $format if $format && $app->can($method . $format); 
    3839    $out = $app->$method( $count, $iter ); 
    3940 
     
    195196    ); 
    196197 
     198    my $desc = 'descend' eq $app->{searchparam}{SearchResultDisplay} ? 'DESC' : 'ASC'; 
     199    my @sort; 
    197200    my $sort = $params->{'sort'}; 
    198201    if ( $sort !~ /\w+\!$/ && $app->{searchparam}{SearchSortBy} ) { 
    199202        my $sort_by = $app->{searchparam}{SearchSortBy}; 
    200         $sort_by =~ s/[\w\-\.]+//g; 
    201         $sort = $sort_by; 
    202     } 
     203        $sort_by =~ s/[^\w\-\.\,]+//g; 
     204        if ( $sort_by ) { 
     205            my @sort_bys = split ',', $sort_by; 
     206            foreach my $key ( @sort_bys ) { 
     207                push @sort, { 
     208                    desc   => $desc, 
     209                    column => $key 
     210                }; 
     211            } 
     212        } 
     213    } 
     214    push @sort, { 
     215        desc   => $desc, 
     216        column => $sort 
     217    }; 
    203218 
    204219    my %args = ( 
     
    206221      $limit  ? ( 'limit' => $limit ) : (), 
    207222      $offset ? ( 'offset' => $offset ) : (), 
    208       $sort   ? ( 'sort' => [ 
    209             { desc   => 'descend' eq $app->{searchparam}{SearchResultDisplay} ? 'DESC' : 'ASC', 
    210               column => $sort } 
    211         ] ) : (), 
     223      @sort   ? ( 'sort' => \@sort ) : (), 
    212224    ); 
    213  
    214     if ( exists $app->{searchparam}{IncludeBlogs} ) { 
    215         unshift @{ $args{'sort'} }, 
    216           { desc => 'ASC', 
    217             column    => 'blog_id' }; 
    218     } 
    219225 
    220226    my $blog_class = $app->model('blog');