summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authormark <mark>2011-08-24 21:00:59 +0000
committermark <mark>2011-08-24 21:00:59 +0000
commitdfba562ff61f541ba7c75f2c02b32951b73aa002 (patch)
treec93608862b0b676e4a5123367f3becb8d73226f1 /FS
parentab8aef9ec21df4b149f39cd24c9c5f3542dd2e3e (diff)
selfservice priority sort order, #14029
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/ClientAPI/MyAccount.pm20
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 {