1 %# {{{ BEGIN BPS TAGGED BLOCK
5 %# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC
6 %# <jesse@bestpractical.com>
8 %# (Except where explicitly superseded by other copyright notices)
13 %# This work is made available to you under the terms of Version 2 of
14 %# the GNU General Public License. A copy of that license should have
15 %# been provided with this software, but in any event can be snarfed
18 %# This work is distributed in the hope that it will be useful, but
19 %# WITHOUT ANY WARRANTY; without even the implied warranty of
20 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 %# General Public License for more details.
23 %# You should have received a copy of the GNU General Public License
24 %# along with this program; if not, write to the Free Software
25 %# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
28 %# CONTRIBUTION SUBMISSION POLICY:
30 %# (The following paragraph is not intended to limit the rights granted
31 %# to you to modify and distribute this software under the terms of
32 %# the GNU General Public License and is only of importance to you if
33 %# you choose to contribute your changes and enhancements to the
34 %# community by submitting them to Best Practical Solutions, LLC.)
36 %# By intentionally submitting any modifications, corrections or
37 %# derivatives to this work, or any other work intended for use with
38 %# Request Tracker, to Best Practical Solutions, LLC, you confirm that
39 %# you are the copyright holder for those contributions and you grant
40 %# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
41 %# royalty-free, perpetual, license to use, copy, create derivative
42 %# works based on those contributions, and sublicense and distribute
43 %# those contributions and any derivatives thereof.
45 %# }}} END BPS TAGGED BLOCK
47 % foreach my $field (@fields) {
49 % if ($field eq "Attachment") {
50 <& /Elements/SelectAttachmentField, Name => 'AttachmentField' &>
52 <& /Elements/SelectBoolean, Name => "AttachmentOp",
53 True => loc("matches"),
54 False => loc("does not match"),
56 FalseVal => 'NOT LIKE'
59 <Input Name="ValueOfAttachment" Size=20>
60 % } elsif ($field eq "Dates") {
61 <& /Elements/SelectDateType, Name=>"DateField" &>
63 <& /Elements/SelectDateRelation, Name=>"DateOp" &>
65 <& /Elements/SelectDate, Name => "ValueOfDate", ShowTime => 0, Default => '' &>
66 % } elsif ($field eq "Links") {
67 <& SelectLinks, Name=>"LinksField" &>
69 <& /Elements/SelectBoolean, Name => "LinksOp",
71 False => loc("isn't"),
76 <INPUT Name="ValueOfLinks" value="" SIZE=5>
77 %} elsif ($field eq "Priority") {
78 <SELECT NAME="PriorityField">
79 <OPTION VALUE="Priority"><&|/l&>Priority</&></OPTION>
80 <OPTION VALUE="InitialPriority"><&|/l&>Initial Priority</&></OPTION>
81 <OPTION VALUE="FinalPriority"><&|/l&>Final Priority</&></OPTION>
84 <& /Elements/SelectEqualityOperator, Name => "PriorityOp" &>
86 <INPUT Name="ValueOfPriority" SIZE=5>
87 %} elsif ($field =~ m/Time.*/) {
88 <SELECT NAME="TimeField">
89 <OPTION VALUE="TimeWorked"><&|/l&>Time Worked</&></OPTION>
90 <OPTION VALUE="TimeEstimated"><&|/l&>Time Estimated</&></OPTION>
91 <OPTION VALUE="TimeLeft"><&|/l&>Time Left</&></OPTION>
94 <& /Elements/SelectEqualityOperator, Name => "TimeOp" &>
96 <INPUT Name="ValueOfTime" SIZE=5>
97 % } elsif ($field eq "Status") {
100 <& /Elements/SelectBoolean, Name => "StatusOp",
102 False => loc("isn't"),
107 <& /Elements/SelectStatus, Name => "ValueOfStatus", SkipDeleted => 1 &>
108 %} elsif ($field =~ m/.*Priority/ || $field =~ m/Time.*/) {
109 <&|/l&><%$field%></&>
111 <& /Elements/SelectEqualityOperator, Name => $field . "Op" &>
113 <INPUT Name="<%"ValueOf" . $field%>" SIZE=5>
114 % } elsif ($field eq "Queue") {
117 <& /Elements/SelectBoolean, Name => "QueueOp" ,
119 False => loc("isn't"),
123 <& /Elements/SelectQueue, Name => "ValueOfQueue", NamedValues => 1 &>
124 % } elsif ($field eq "id") {
127 <& /Elements/SelectEqualityOperator, Name => "idOp" &>
129 <INPUT Name="ValueOfid" SIZE=5>
130 % } elsif ($field eq "People") {
131 % foreach my $field (@people) {
132 <tr><td class="label">
133 % if ($field eq "Actor") {
134 <SELECT NAME="ActorField">
135 <OPTION VALUE="Owner"><&|/l&>Owner</&></OPTION>
136 <OPTION VALUE="Creator"><&|/l&>Creator</&></OPTION>
137 <OPTION VALUE="LastUpdatedBy"><&|/l&>LastUpdatedBy</&></OPTION>
140 <& /Elements/SelectBoolean, Name => "ActorOp",
145 <& /Elements/SelectOwner, Name => "ValueOfActor" &>
146 % } elsif ($field eq 'Watcher') {
147 <& SelectPersonType, Name => 'WatcherField', Default => 'Requestor' &>
149 <& /Elements/SelectMatch, Name => "WatcherOp" &>
151 <Input Name="ValueOfWatcher" Size=20>
153 <&|/l&><%$field%></&>
154 <& /Elements/SelectMatch, Name => "$field" . "Op" &>
155 <INPUT Name="<%"ValueOf" . $field%>" value=""SIZE=20>
160 <&|/l&><%$field%></&>
162 <& /Elements/SelectMatch, Name => "$field" . "Op" &>
164 <INPUT Name="<%"ValueOf" . $field%>" value="" SIZE=20>
168 <& '/Elements/Callback', _CallbackName => 'EndOfList' &>
170 my @fields = ('Attachment',
181 my @people = ('Actor',