summaryrefslogtreecommitdiff
path: root/rt/html/Search/Listing.html
blob: 68b1fd75c46be9407213874b57922c6359abb969 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
%# BEGIN LICENSE BLOCK
%# 
%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
%# 
%# (Except where explictly superceded by other copyright notices)
%# 
%# This work is made available to you under the terms of Version 2 of
%# the GNU General Public License. A copy of that license should have
%# been provided with this software, but in any event can be snarfed
%# from www.gnu.org.
%# 
%# This work is distributed in the hope that it will be useful, but
%# WITHOUT ANY WARRANTY; without even the implied warranty of
%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
%# General Public License for more details.
%# 
%# Unless otherwise specified, all modifications, corrections or
%# extensions to this work which alter its source code become the
%# property of Best Practical Solutions, LLC when submitted for
%# inclusion in the work.
%# 
%# 
%# END LICENSE BLOCK
<& /Elements/Header, Title => $title, Refresh => $session{'tickets_refresh_interval'} &>
<& /Ticket/Elements/Tabs, 
    current_tab => 'Search/Listing.html', 
    Title => $title &>

%if ($ticketcount && !  $ARGS{'HideResults'}) {
<TABLE WIDTH=100% border=0 cellpadding=2 CELLSPACING=0>
<& Elements/TicketHeader, %ARGS &>
% my $i;
%while (my $Ticket = $session{'tickets'}->Next) {
% $i++;
<& Elements/TicketRow, Ticket => $Ticket, i=> $i, %ARGS &>
%}
</TABLE>
<div align=center>
<font size=2>
<a href="<%$RT::WebPath%>/Search/Listing.html?GotoPage=1"><&|/l&>First page</&></a>
&nbsp;&nbsp;
%  if ( $session{'tickets'}->FirstRow >= $session{'tickets_rows_per_page'}-1 ) {
<a href="<%$RT::WebPath%>/Search/Listing.html?GotoPage=Prev">&lt;<&|/l&>Previous page</&></a>
&nbsp;&nbsp;
%  }                                                                           
%  if ( $session{'tickets'}->FirstRow + $session{'tickets_rows_per_page'} < $ticketcount ) {                                                               
<a href="<%$RT::WebPath%>/Search/Listing.html?GotoPage=Next"><&|/l&>Next page</&>&gt;</a>
%  }
%#&nbsp;&nbsp;<form method=get action="<%$RT::WebPath%>/Search/Listing.html"><&|/l&>Goto page</&> <input name=GotoPage size=2></form>
</font>
</div>
<!--<div align=right>-->
<table width="100%" border=0 cellpadding=3 CELLSPACING=1>
<tr>
<td align=left>
(<&|/l, ($session{'tickets'}->FirstRow+1), ($session{'tickets'}->FirstRow() + $session{'tickets'}->RowsPerPage()  ) &>[_1] - [_2] shown</&>)
</td>
<td align=right>

<a href="<%$RT::WebPath%>/Search/Bulk.html"><&|/l&>Update all these tickets at once</&></a>
<!--</div>-->
</td>
</tr>
</table>

% }
<TABLE WIDTH="100%">
<TR>
<TD VALIGN="TOP">
<& /Elements/TitleBoxStart, title => loc('Current search criteria')&>

%my %restrictions=$session{'tickets'}->DescribeRestrictions();
%foreach my $row (keys %restrictions){
<%$restrictions{"$row"}%> <A HREF="<% $RT::WebPath %>/Search/Listing.html?DeleteRestriction=<%$row%>">[<&|/l&>delete</&>]</a><br>
%}
<BR>
<BR>
<A HREF="<% $RT::WebPath%>/Search/Listing.html?Bookmark=<%$session{'tickets'}->FreezeLimits()|nu%>&TicketsSortBy=<%$session{'tickets_sort_by'}%>&TicketsSortOrder=<%$session{'tickets_sort_order'}%>&RowsPerPage=<%$session{'tickets_rows_per_page'}%>"><&|/l&>Bookmarkable URL for this search</&></a>
<& /Elements/TitleBoxEnd&>
</TD>
<TD>

<& Elements/PickRestriction, %ARGS &>

</TD>
</TR>
</TABLE>

<%INIT>

my ($title, $ticketcount);
$session{'i'}++;
if ($session{'tickets'}) {
    if ($ARGS{'DeleteRestriction'}) {
	    $session{'tickets'}->DeleteRestriction($ARGS{'DeleteRestriction'});
    }
    if ( ($ARGS{'ClearRestrictions'}) || ($ARGS{'NewSearch'}) ) {
	    $session{'tickets'}->ClearRestrictions;
	    $session{'tickets'}->CleanSlate;
	}	
}
   ProcessSearchQuery(ARGS=>\%ARGS);
   $session{'tickets'}->RedoSearch();
   if ( $session{'tickets'}->DescribeRestrictions()) {
       $ticketcount = $session{tickets}->CountAll();
        $title = loc('Found [quant,_1,ticket]', $ticketcount);
    } else {
        $title = loc("Find tickets");
   }
</%INIT>
<%CLEANUP>
$session{'tickets'}->PrepForSerialization();
</%CLEANUP>