%# {{{ BEGIN BPS TAGGED BLOCK %# %# COPYRIGHT: %# %# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC %# %# %# (Except where explicitly superseded by other copyright notices) %# %# %# LICENSE: %# %# 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. %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software %# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: %# %# (The following paragraph is not intended to limit the rights granted %# to you to modify and distribute this software under the terms of %# the GNU General Public License and is only of importance to you if %# you choose to contribute your changes and enhancements to the %# community by submitting them to Best Practical Solutions, LLC.) %# %# By intentionally submitting any modifications, corrections or %# derivatives to this work, or any other work intended for use with %# Request Tracker, to Best Practical Solutions, LLC, you confirm that %# you are the copyright holder for those contributions and you grant %# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, %# royalty-free, perpetual, license to use, copy, create derivative %# works based on those contributions, and sublicense and distribute %# those contributions and any derivatives thereof. %# %# }}} END BPS TAGGED BLOCK % foreach my $field (@fields) { % if ($field eq "Attachment") { <& /Elements/SelectAttachmentField, Name => 'AttachmentField' &> <& /Elements/SelectBoolean, Name => "AttachmentOp", True => loc("matches"), False => loc("does not match"), TrueVal => 'LIKE', FalseVal => 'NOT LIKE' &> % } elsif ($field eq "Dates") { <& /Elements/SelectDateType, Name=>"DateField" &> <& /Elements/SelectDateRelation, Name=>"DateOp" &> <& /Elements/SelectDate, Name => "ValueOfDate", ShowTime => 0, Default => '' &> % } elsif ($field eq "Links") { <& SelectLinks, Name=>"LinksField" &> <& /Elements/SelectBoolean, Name => "LinksOp", True => loc("is"), False => loc("isn't"), TrueVal=> '=', FalseVal => '!=' &> %} elsif ($field eq "Priority") { <& /Elements/SelectEqualityOperator, Name => "PriorityOp" &> %} elsif ($field =~ m/Time.*/) { <& /Elements/SelectEqualityOperator, Name => "TimeOp" &> % } elsif ($field eq "Status") { <&|/l&>Status <& /Elements/SelectBoolean, Name => "StatusOp", True => loc("is"), False => loc("isn't"), TrueVal=> '=', FalseVal => '!=' &> <& /Elements/SelectStatus, Name => "ValueOfStatus", SkipDeleted => 1 &> %} elsif ($field =~ m/.*Priority/ || $field =~ m/Time.*/) { <&|/l&><%$field%> <& /Elements/SelectEqualityOperator, Name => $field . "Op" &> " SIZE=5> % } elsif ($field eq "Queue") { <&|/l&>Queue <& /Elements/SelectBoolean, Name => "QueueOp" , True => loc("is"), False => loc("isn't"), TrueVal=> '=', FalseVal => '!=' &> <& /Elements/SelectQueue, Name => "ValueOfQueue", NamedValues => 1 &> % } elsif ($field eq "id") { <&|/l&>Id <& /Elements/SelectEqualityOperator, Name => "idOp" &> % } elsif ($field eq "People") { % foreach my $field (@people) { % if ($field eq "Actor") { <& /Elements/SelectBoolean, Name => "ActorOp", TrueVal=> '=', FalseVal => '!=' &> <& /Elements/SelectOwner, Name => "ValueOfActor" &> % } elsif ($field eq 'Watcher') { <& SelectPersonType, Name => 'WatcherField', Default => 'Requestor' &> <& /Elements/SelectMatch, Name => "WatcherOp" &> % } else { <&|/l&><%$field%> <& /Elements/SelectMatch, Name => "$field" . "Op" &> " value=""SIZE=20> % } % } % } else { <&|/l&><%$field%> <& /Elements/SelectMatch, Name => "$field" . "Op" &> " value="" SIZE=20> % } % } <& '/Elements/Callback', _CallbackName => 'EndOfList' &> <%INIT> my @fields = ('Attachment', 'Queue', 'Status', 'People', 'Dates', 'Time', 'Priority', 'Links', 'id', ); my @people = ('Actor', 'Watcher', );