no need for FS calendar buttons in RT 4.2
[freeside.git] / rt / share / html / Elements / SelectQueue
index 76440d1..16ffb82 100755 (executable)
@@ -2,7 +2,7 @@
 %#
 %# COPYRIGHT:
 %#
-%# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2017 Best Practical Solutions, LLC
 %#                                          <sales@bestpractical.com>
 %#
 %# (Except where explicitly superseded by other copyright notices)
 %# 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>