diff options
author | Ivan Kohler <ivan@freeside.biz> | 2015-07-09 22:18:55 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2015-07-09 22:18:55 -0700 |
commit | 1c538bfabc2cd31f27067505f0c3d1a46cba6ef0 (patch) | |
tree | 96922ad4459eda1e649327fd391d60c58d454c53 /rt/share/html/Elements/SelectQueue | |
parent | 4f5619288413a185e9933088d9dd8c5afbc55dfa (diff) |
RT 4.2.11, ticket#13852
Diffstat (limited to 'rt/share/html/Elements/SelectQueue')
-rwxr-xr-x | rt/share/html/Elements/SelectQueue | 92 |
1 files changed, 7 insertions, 85 deletions
diff --git a/rt/share/html/Elements/SelectQueue b/rt/share/html/Elements/SelectQueue index 76440d124..ae645a773 100755 --- a/rt/share/html/Elements/SelectQueue +++ b/rt/share/html/Elements/SelectQueue @@ -45,92 +45,14 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -% if ($Lite) { -% my $d = RT::Queue->new($session{'CurrentUser'}); -% $d->Load($Default); -<input name="<%$Name%>" size="25" value="<%$d->Name%>" class="<%$Class%>" /> -% } -% else { -<select name="<%$Name%>" <% ($Multiple) ? qq{multiple="multiple" size="$Size"} : '' |n%> <% ($OnChange) ? 'onchange="'.$OnChange.'"' : '' |n %> class="<%$Class%>"> -% if ($ShowNullOption) { - <option value=""><% $DefaultLabel %></option> -% } -% for my $queue (@{$session{$cache_key}{queues}}) { - <option value="<% ($NamedValues ? $queue->{Name} : $queue->{Id}) %>"\ -% if ($queue->{Id} eq ($Default||'') || $queue->{Name} eq ($Default||'')) { - selected="selected"\ -% } -><%$queue->{Name}%>\ -% if ($Verbose and $queue->{Description}) { - (<%$queue->{Description}%>)\ -% } -</option> -% } -</select> -% } +<& SelectObject, + %ARGS, + ObjectType => "Queue", + CheckRight => $CheckQueueRight, + ShowAll => $ShowAllQueues, + CacheNeedsUpdate => RT->System->QueueCacheNeedsUpdate, + &> <%args> $CheckQueueRight => 'CreateTicket' -$ShowNullOption => 1 $ShowAllQueues => 1 -$Name => undef -$Verbose => undef -$NamedValues => 0 -$DefaultLabel => "-" -$Default => 0 -$Lite => 0 -$OnChange => undef -$Multiple => 0 -$Size => 6 -$Class => 'select-queue' </%args> -<%init> -my $cache_key = "SelectQueue---" - . $session{'CurrentUser'}->Id - . "---$CheckQueueRight---$ShowAllQueues"; - -if ( defined $session{$cache_key} && ref $session{$cache_key} eq 'ARRAY') { - delete $session{$cache_key}; -} -if ( defined $session{$cache_key} && - $session{$cache_key}{lastupdated} <= RT->System->QueueCacheNeedsUpdate ) { - delete $session{$cache_key}; -} - -if ( defined $session{$cache_key} && ref $session{$cache_key} eq 'ARRAY') { - delete $session{$cache_key}; -} -if ( defined $session{$cache_key} && - $session{$cache_key}{lastupdated} <= RT->System->QueueCacheNeedsUpdate ) { - delete $session{$cache_key}; -} - -if ( not defined $session{$cache_key} and not $Lite ) { - my $q = RT::Queues->new($session{'CurrentUser'}); - $q->UnLimit; - - if ( $Default ) { - my $d = RT::Queue->new($session{'CurrentUser'}); - $d->Load($Default); - unless ( $d->CurrentUserHasRight('SeeQueue') ) { - if ( $d->id ) { - push @{$session{$cache_key}{queues}}, { - Id => $d->id, - Name => '#' . $d->id, - Description => '#' . $d->id, - }; - } - } - } - - while (my $queue = $q->Next) { - if ($ShowAllQueues || $queue->CurrentUserHasRight($CheckQueueRight)) { - push @{$session{$cache_key}{queues}}, { - Id => $queue->Id, - Name => $queue->Name, - Description => $queue->Description, - }; - } - } - $session{$cache_key}{lastupdated} = time(); -} -</%init> |