diff options
| author | mark <mark> | 2011-08-24 21:00:59 +0000 |
|---|---|---|
| committer | mark <mark> | 2011-08-24 21:00:59 +0000 |
| commit | dfba562ff61f541ba7c75f2c02b32951b73aa002 (patch) | |
| tree | c93608862b0b676e4a5123367f3becb8d73226f1 /FS | |
| parent | ab8aef9ec21df4b149f39cd24c9c5f3542dd2e3e (diff) | |
selfservice priority sort order, #14029
Diffstat (limited to 'FS')
| -rw-r--r-- | FS/FS/ClientAPI/MyAccount.pm | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm index 6fa4c3d9e..7db49d55e 100644 --- a/FS/FS/ClientAPI/MyAccount.pm +++ b/FS/FS/ClientAPI/MyAccount.pm @@ -339,7 +339,25 @@ sub customer_info { $return{balance} = $cust_main->balance; } - $return{tickets} = [ ($cust_main->tickets) ]; + my @tickets = $cust_main->tickets; + # unavoidable false laziness w/ httemplate/view/cust_main/tickets.html + if ( FS::TicketSystem->selfservice_priority ) { + my $dir = $conf->exists('ticket_system-priority_reverse') ? -1 : 1; + $return{tickets} = [ + sort { + ( + ($a->{'_selfservice_priority'} eq '') <=> + ($b->{'_selfservice_priority'} eq '') + ) || + ( $dir * + ($b->{'_selfservice_priority'} <=> $a->{'_selfservice_priority'}) + ) + } @tickets + ]; + } + else { + $return{tickets} = \@tickets; + } unless ( $session->{'pkgnum'} ) { my @open = map { |
