--- trunk/share/web/templates/list 2006/12/05 23:14:53 12 +++ trunk/share/web/templates/list 2006/12/06 20:42:13 14 @@ -1,10 +1,10 @@ <%args> $page => undef; - $author => undef; - $show_actions => undef; - +$per_page => undef; +$from_date => undef; +$to_date => undef; <%init> @@ -21,21 +21,23 @@ $author ||= $filter->argument_value('author'); $show_actions ||= $filter->argument_value('show_actions'); -$page ||= $filter->argument_value('page'); +$page ||= $filter->argument_value('page') || 1; +$per_page ||= $filter->argument_value('per_page') || 10; +$from_date ||= $filter->argument_value('from_date'); +$to_date ||= $filter->argument_value('to_date'); + +$revisions->unlimit(); + +$revisions->limit( column => 'author', value => $author, entry_aggregator => 'AND' ) if ($author); +$revisions->limit( column => 'commit_date', operator => '>=', value => $from_date, entry_aggregator => 'AND' ) if ($from_date); +$revisions->limit( column => 'commit_date', operator => '<=', value => $to_date, entry_aggregator => 'AND' ) if ($to_date); -if ($author) { - $revisions->limit( - column => 'author', - value => $author, - ); -} else { - $revisions->unlimit(); -} $revisions->order_by({ column => 'commit_date', order => 'desc' }); $revisions->set_page_info( current_page => $page, - per_page => 10, + per_page => $per_page, ); + $revisions->goto_first_item; @@ -47,14 +49,17 @@ <% Jifty->web->form->start %> <% $filter->form_field('author', default_value => $author ) %> -<% $filter->button( label => 'Show just this commiter' ) %> +<% $filter->button( label => 'Filter commits' ) %> <% $filter->form_field('show_actions', default_value => $show_actions ) %> +<% $filter->form_field('per_page', default_value => $per_page ) %> +<% $filter->form_field('from_date', default_value => $from_date ) %> +<% $filter->form_field('to_date', default_value => $to_date ) %> <%perl> if (my $nr = $revisions->pager->total_entries) { - $m->out("Found $nr revisions"); + $m->out("$nr revisions found"); } else { - $m->out("No revisions found.") + $m->out("No revisions found in repository"); }