/[SVNBrowser]/branches/filter-action/share/web/templates/list
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /branches/filter-action/share/web/templates/list

Parent Directory Parent Directory | Revision Log Revision Log


Revision 28 - (hide annotations)
Sun Dec 10 14:06:33 2006 UTC (17 years, 4 months ago) by dpavlin
File size: 4055 byte(s)
make branch for Action::Filter refactoring
1 dpavlin 4 <%args>
2 dpavlin 12 $page => undef;
3 dpavlin 5 $author => undef;
4 dpavlin 10 $show_actions => undef;
5 dpavlin 13 $per_page => undef;
6 dpavlin 14 $from_date => undef;
7     $to_date => undef;
8 dpavlin 19 $search => undef;
9 dpavlin 26 $branch => undef;
10 dpavlin 4 </%args>
11    
12     <%init>
13 dpavlin 5 my $filter = Jifty->web->new_action(
14     class => 'Filter',
15     moniker => 'filer_list',
16 dpavlin 10 # arguments => {
17     # author => $author,
18     # show_actions => $show_actions,
19     # },
20 dpavlin 5 );
21    
22 dpavlin 4 my $revisions = SVNBrowser::Model::RevisionCollection->new();
23 dpavlin 5
24     $author ||= $filter->argument_value('author');
25 dpavlin 10 $show_actions ||= $filter->argument_value('show_actions');
26 dpavlin 13 $page ||= $filter->argument_value('page') || 1;
27     $per_page ||= $filter->argument_value('per_page') || 10;
28 dpavlin 14 $from_date ||= $filter->argument_value('from_date');
29     $to_date ||= $filter->argument_value('to_date');
30 dpavlin 19 $search ||= $filter->argument_value('search');
31 dpavlin 26 $branch ||= $filter->argument_value('branch');
32 dpavlin 5
33 dpavlin 14 $revisions->unlimit();
34    
35     $revisions->limit( column => 'author', value => $author, entry_aggregator => 'AND' ) if ($author);
36     $revisions->limit( column => 'commit_date', operator => '>=', value => $from_date, entry_aggregator => 'AND' ) if ($from_date);
37     $revisions->limit( column => 'commit_date', operator => '<=', value => $to_date, entry_aggregator => 'AND' ) if ($to_date);
38    
39 dpavlin 19 $revisions->limit( column => 'message', operator => 'LIKE', value => '%' . $search . '%' ) if ($search);
40    
41 dpavlin 26 if ($branch) {
42     my $b = SVNBrowser::Model::Branch->new();
43     $b->load_by_cols( path => $branch );
44    
45     my $rev_branches = $revisions->join(
46     alias1 => 'main', column1 => 'revision',
47     table2 => 'revision_branches', column2 => 'revision'
48     );
49     $revisions->limit( alias => $rev_branches, column => 'branch', value => $b->id );
50     }
51    
52 dpavlin 4 $revisions->order_by({ column => 'commit_date', order => 'desc' });
53     $revisions->set_page_info(
54     current_page => $page,
55 dpavlin 13 per_page => $per_page,
56 dpavlin 4 );
57 dpavlin 14
58 dpavlin 19 warn $revisions->build_select_query;
59    
60 dpavlin 4 $revisions->goto_first_item;
61    
62 dpavlin 8
63     my $actions = SVNBrowser::Model::ActionCollection->new();
64    
65 dpavlin 4 </%init>
66    
67 dpavlin 12 <&| /_elements/wrapper, title => "SVN Reporitory Browser" &>
68 dpavlin 4
69 dpavlin 5 <% Jifty->web->form->start %>
70 dpavlin 26
71 dpavlin 5 <% $filter->form_field('author', default_value => $author ) %>
72 dpavlin 26 <% $filter->form_field('branch', default_value => $branch ) %>
73     <% $filter->form_field('search', default_value => $search ) %>
74    
75     <div class="inline">
76 dpavlin 14 <% $filter->form_field('from_date', default_value => $from_date ) %>
77     <% $filter->form_field('to_date', default_value => $to_date ) %>
78 dpavlin 26 <% $filter->form_field('per_page', default_value => $per_page ) %>
79     <% $filter->form_field('show_actions', default_value => $show_actions ) %>
80     </div>
81 dpavlin 5
82 dpavlin 26 <div style="clear: left">
83     <% $filter->button( label => 'Filter commits' ) %>
84    
85 dpavlin 4 <%perl>
86     if (my $nr = $revisions->pager->total_entries) {
87 dpavlin 13 $m->out("$nr revisions found");
88 dpavlin 4 } else {
89 dpavlin 13 $m->out("No revisions found in repository");
90 dpavlin 4 }
91     </%perl>
92 dpavlin 26 </div>
93 dpavlin 4
94     <dl>
95     % while (my $r = $revisions->next) {
96     <dt><% Jifty->web->tangent(
97 dpavlin 24 url => '/rev/' . $r->revision,
98 dpavlin 4 label => $r->revision,
99     ) %>
100     <span class="author"><% $r->author %></span>
101     <span class="commit_date"><% $r->commit_date %></span>
102     </dt>
103     <dd>
104 dpavlin 8 <pre class="commit_message"><% $r->message %></pre>
105 dpavlin 10 % if ($show_actions) {
106     <ul class="actions">
107 dpavlin 20 % $actions->unlimit;
108 dpavlin 10 % $actions->limit( column => 'revision', value => $r->revision );
109     % while (my $a = $actions->next) {
110 dpavlin 25 % my $full_path = $a->branch . $a->rel_path ;
111     <li><tt class="action-<% $a->type %>"><% $a->type %> <% $full_path %>
112     <% Jifty->web->tangent( url => '/rev/' . $r->revision . $full_path, label => 'diff' ) %>
113     </tt></li>
114 dpavlin 10 % }
115     </ul>
116 dpavlin 8 % }
117    
118 dpavlin 4 </dd>
119     % }
120     </dl>
121    
122     % if ($revisions->pager->previous_page) {
123 dpavlin 12 <% $filter->button(
124     label => "&lt;&lt;",
125     escape_label => 0,
126     arguments => {
127 dpavlin 10 page => $revisions->pager->previous_page,
128 dpavlin 12 }
129 dpavlin 4 ) %>
130     % }
131    
132     % if ($revisions->pager->last_page > 1) {
133     page <% $page %> of <% $revisions->pager->last_page %>
134     % }
135    
136     % if ($revisions->pager->next_page) {
137 dpavlin 12 <% $filter->button(
138     label => "&gt;&gt;",
139     escape_label => 0,
140     arguments => {
141 dpavlin 10 page => $revisions->pager->next_page,
142 dpavlin 12 }
143 dpavlin 4 ) %>
144     % }
145    
146 dpavlin 12 <% Jifty->web->form->end %>
147    
148 dpavlin 4 </&>

  ViewVC Help
Powered by ViewVC 1.1.26