Changeset 725

Show
Ignore:
Timestamp:
05/13/06 04:18:50
Author:
typester
Message:
  • added 'svn:executable' on plaggerldr_server
  • optimized a dbic query on subs (PlaggerLDR::C::API)
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/feature-server/plagger/bin/plaggerldr_server.pl

    • Property svn:executable set to *
  • branches/feature-server/plagger/lib/PlaggerLDR/Controller/API.pm

    r708 r725  
    2020    my($self, $c) = @_; 
    2121 
     22    my $feeds = 
     23      $c->req->params->{unread} 
     24      ? $schema->resultset('Feed')->search( 
     25            { 'entries.read' => 0 }, 
     26            { 
     27                join            => [qw/entries/], 
     28                group_by        => [qw/feed/], 
     29                include_columns => ['count(*)'] 
     30            } 
     31      ) 
     32      : $schema->resultset('Feed')->search; 
     33 
    2234    my @subs; 
    23     for my $feed ( $schema->resultset('Feed')->search({ }) ) { 
    24         my $unread = $feed->entries({ read => 0 })->count; 
    25         next if $c->req->param('unread') && $unread == 0; 
    26  
     35    for my $feed ( $feeds->all ) { 
    2736        push @subs, { 
    2837            icon => "http://image.reader.livedoor.com/img/icon/default.gif", # TODO 
    2938            subscribe_id => $feed->id, 
    30             unread_count => $unread
     39            unread_count => eval { $feed->get_column('count(*)') } || 0
    3140            folder => eval { ($feed->tags)[0]->name } || '', 
    3241            tags => [], # TODO