%# BEGIN LICENSE BLOCK %# %# Copyright (c) 1996-2003 Jesse Vincent %# %# (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=>loc("RT at a glance"), Refresh => $session{'home_refresh_interval'} &> <& /Elements/Tabs, current_toptab => '', Title=>loc("RT at a glance") &>

<& /Elements/MyTickets &> <& /Elements/MyRequests &> | <& /Elements/Quicksearch &> <& /Elements/Refresh, Name => 'HomeRefreshInterval', Default => $session {'home_refresh_interval'} &>

<%init> if ( $ARGS{'q'} ) { my $query = $ARGS{'q'}; if ( $query =~ m/^\s*(\d+)\s*$/ ) { $m->comp("/Ticket/Display.html" , id=> $1); return(); } $session{'tickets'} = RT::Tickets->new( $session{'CurrentUser'} ); if ( $query =~ m/\@/ ) { $session{'tickets'}->LimitWatcher( VALUE => $query, TYPE => 'Requestor', OPERATOR => '=', ); $m->comp("/Search/Listing.html"); return(); } # # Any search on queue name or subject will be for new/open tickets # only. # $session{'tickets'}->LimitStatus( VALUE => $_, OPERATOR => '=', ) for qw(open new); my $queue = RT::Queue->new( $session{'CurrentUser'} ); if ( $queue->Load($query) && $queue->Id ) { $session{'tickets'}->LimitQueue( VALUE => $queue->Id, OPERATOR => '=', ); $m->comp("/Search/Listing.html"); return(); } $session{'tickets'}->LimitSubject( VALUE => $query, OPERATOR => 'LIKE' ); $m->comp("/Search/Listing.html"); return(); } if ($ARGS{'HomeRefreshInterval'}) { $session{'home_refresh_interval'} = $ARGS{'HomeRefreshInterval'}; }