X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FElements%2FSavedSearches;h=0d408d23f709306bb9476a6f657dc3ca7224a113;hb=9ce482da3960ee43decee41fba53b78c12c3e52c;hp=96d589fc1eb9b1b58e7bf2e679dca2f5d3f506d6;hpb=b5c4237a34aef94976bc343c8d9e138664fc3984;p=freeside.git diff --git a/rt/share/html/Elements/SavedSearches b/rt/share/html/Elements/SavedSearches index 96d589fc1..0d408d23f 100644 --- a/rt/share/html/Elements/SavedSearches +++ b/rt/share/html/Elements/SavedSearches @@ -1,70 +1,76 @@ -<& /Elements/ListActions, actions => \@results &> - -% foreach my $type ('Ticket', 'Chart') { - -% } #foreach $type -
-<&|/Widgets/TitleBox, title => loc('Saved '.$titles{$type}) &> -% foreach my $Object (@Objects) { -% $SavedSearches = RT::SavedSearches->new($session{CurrentUser}); -% $SavedSearches->LimitToPrivacy(join('-',ref($Object),$Object->Id), $type); -% my $title = $titles{$type}; -% if (ref $Object eq 'RT::User' && $Object->Id == $session{CurrentUser}->Id) { -% $title = loc("My saved ".lc($title)); -% } else { -% $title = loc("[_1]'s saved ".lc($title),$Object->Name); -% } -% $title = $m->interp->apply_escapes($title, 'h'); -% -% my $oid = join('-', ref($Object), $Object->Id, 'SavedSearch', '__id__'); -% my $resultpath = $paths{$type}; -% my @cols = ( -% qq{__Name__/TITLE:$title}, -% '__Query__', -% qq{[Edit] } . -% qq{[Delete]/TITLE:}, -% ); -% my $format = join(',', map { "'$_'" } @cols); +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2016 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., 51 Franklin Street, Fifth Floor, Boston, MA +%# 02110-1301 or visit their web page on the internet at +%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. +%# +%# +%# 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 }}} +<&|/Widgets/TitleBox, title => loc('Saved Searches') &> +% foreach my $Object (@Objects) { +% my $SavedSearches = RT::SavedSearches->new($session{CurrentUser}); +% $SavedSearches->LimitToPrivacy(join('-',ref($Object),$Object->Id),'Ticket'); +% my $title; +% if (ref $Object eq 'RT::User' && $Object->Id == $session{CurrentUser}->Id) { +% $title = loc("My saved searches"); +% } else { +% $title = loc("[_1]'s saved searches",$Object->Name); +% } +% $title = $m->interp->apply_escapes($title, 'h'); <& /Elements/CollectionList, %ARGS, Class => 'RT::SavedSearch', - Format => $format, + Format => qq{'__Name__/TITLE:$title'}, Collection => $SavedSearches, PassArguments => [qw(Format Name id)], &> -% } #foreach $Object +% } -
<%init> -my @Objects; -my $SavedSearches = RT::SavedSearches->new($session{'CurrentUser'}); -push @Objects, $SavedSearches->_PrivacyObjects; +my @Objects = RT::SavedSearch->new($session{CurrentUser})->ObjectsForLoading; push @Objects, RT::System->new( $session{'CurrentUser'} ) if $session{'CurrentUser'}->HasRight( Object=> $RT::System, Right => 'SuperUser' ); - -my $uri = '__WebPath__'.$m->request_path; - -my @results; -if ( $Delete =~ /(.*)-SavedSearch-(\d+)/) { - my ($privacy, $id) = ($1, $2); - my $record = RT::SavedSearch->new($session{'CurrentUser'}); - $record->Load($privacy, $id); - if ( $record->Id ) { - my ($status, $msg) = $record->Delete; - push @results, $msg; - } - else { - push @results, "Saved search #$Delete not found"; - } -} - -my %titles = ( 'Ticket' => 'Searches', 'Chart' => 'Charts' ); -my %paths = ( 'Ticket' => 'Search/Results.html', - 'Chart' => 'Search/Chart.html', -); <%ARGS> $user_attrs => undef -$Delete => undef