[Rt-commit] r17347 - rt/3.8/trunk/lib/RT

ruz at bestpractical.com ruz at bestpractical.com
Thu Dec 25 00:33:48 EST 2008


Author: ruz
Date: Thu Dec 25 00:33:47 2008
New Revision: 17347

Modified:
   rt/3.8/trunk/lib/RT/Tickets_Overlay.pm

Log:
* fix special sorting by Custom.Ownership on Oracle

Modified: rt/3.8/trunk/lib/RT/Tickets_Overlay.pm
==============================================================================
--- rt/3.8/trunk/lib/RT/Tickets_Overlay.pm	(original)
+++ rt/3.8/trunk/lib/RT/Tickets_Overlay.pm	Thu Dec 25 00:33:47 2008
@@ -1561,16 +1561,18 @@
                $order = "DESC" if $o =~ /asc/i;
            }
 
-           # Unowned
-           # Else
-
-           # Ticket.Owner  1 0 0
-           my $ownerId = $self->CurrentUser->Id;
-           push @res, { %$row, FIELD => "Owner=$ownerId", ORDER => $order } ;
-
-           # Unowned Tickets 0 1 0
-           my $nobodyId = $RT::Nobody->Id;
-           push @res, { %$row, FIELD => "Owner=$nobodyId", ORDER => $order } ;
+           # Ticket.Owner    1 0 X
+           # Unowned Tickets 0 1 X
+           # Else            0 0 X
+
+           foreach my $uid ( $self->CurrentUser->Id, $RT::Nobody->Id ) {
+               if ( RT->Config->Get('DatabaseType') eq 'Oracle' ) {
+                   my $f = ($row->{'ALIAS'} || 'main') .'.Owner';
+                   push @res, { %$row, ALIAS => '', FIELD => "CASE WHEN $f=$uid THEN 1 ELSE 0 END", ORDER => $order } ;
+               } else {
+                   push @res, { %$row, FIELD => "Owner=$uid", ORDER => $order } ;
+               }
+           }
 
            push @res, { %$row, FIELD => "Priority", ORDER => $order } ;
        }


More information about the Rt-commit mailing list