[Rt-commit] [svn] r1451 - in rt/branches/3.3-TESTING: . html/Elements

jesse at pallas.eruditorum.org jesse at pallas.eruditorum.org
Wed Sep 8 12:49:20 EDT 2004


Author: jesse
Date: Wed Sep  8 12:49:19 2004
New Revision: 1451

Modified:
   rt/branches/3.3-TESTING/   (props changed)
   rt/branches/3.3-TESTING/html/Elements/SelectOwner
Log:
 r10200 at tinbook:  jesse | 2004-09-08T16:44:11.407371Z
 Modified search UI to only show potential owners for tickets in queues the user can see.


Modified: rt/branches/3.3-TESTING/html/Elements/SelectOwner
==============================================================================
--- rt/branches/3.3-TESTING/html/Elements/SelectOwner	(original)
+++ rt/branches/3.3-TESTING/html/Elements/SelectOwner	Wed Sep  8 12:49:19 2004
@@ -48,30 +48,41 @@
 <OPTION <% !$Default && "SELECTED" %> VALUE=""><%$DefaultLabel%></OPTION>
 %}
 <OPTION <% ($RT::Nobody->Id() == $Default) && "SELECTED" %> VALUE="<%$RT::Nobody->Id%>"><%$RT::Nobody->Name%></OPTION>
-%while ( my $User = $Users->Next())  {
+%foreach my $User (@users)  {
 <OPTION <% ($User->Id == $Default)         && "SELECTED" %> VALUE="<%$User->Id()%>"><%$User->Name()%></OPTION>
 %}
 </SELECT>
 
 <%INIT>
-my $Users = RT::Users->new($session{CurrentUser});
-my $object;
-
+my @objects;
+my @users;
 
 if ($TicketObj) {
-        $object = $TicketObj;
+        @objects = ($TicketObj);
 }
 elsif ($QueueObj) {
-        $object = $QueueObj;
+        @objects = ($QueueObj);
+} 
+else {
+        my $Queues = RT::Queues->new($session{CurrentUser});
+	while (my $Queue = $Queues->Next()) {
+	      push( @objects, $Queue );
+        }
 }
-if ($object) {
+
+my %user_uniq_hash;
+foreach my $object (@objects) {
+	my $Users = RT::Users->new($session{CurrentUser});
         $Users->WhoHaveRight(Right => 'OwnTicket',
                      Object => $object,
                      IncludeSystemRights => 1,
                      IncludeSuperusers => 1);
-} else {
-        $Users->LimitToPrivileged;
+        while (my $User = $Users->Next()) {
+	      $user_uniq_hash{$User->Id()} = $User;
+        }
 }
+
+ at users = values %user_uniq_hash;
 </%INIT>
 
 <%ARGS>


More information about the Rt-commit mailing list