summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormark <mark>2011-07-21 23:29:44 +0000
committermark <mark>2011-07-21 23:29:44 +0000
commitc598fcf11241b02111a2df43860199ae8a9d5512 (patch)
tree4ea53dfb24450125a38945a4b3969e31aa65b3f9
parent5fdd19665fb7c0ad425a99d3dbf9ad7e27fbf44a (diff)
ticket display sort order, #13199
-rw-r--r--FS/FS/TicketSystem/RT_Internal.pm11
-rw-r--r--fs_selfservice/FS-SelfService/cgi/ticket_summary.html6
-rw-r--r--httemplate/view/cust_main/misc.html9
-rw-r--r--httemplate/view/cust_main/tickets.html8
4 files changed, 26 insertions, 8 deletions
diff --git a/FS/FS/TicketSystem/RT_Internal.pm b/FS/FS/TicketSystem/RT_Internal.pm
index 31a6715..d96e5f0 100644
--- a/FS/FS/TicketSystem/RT_Internal.pm
+++ b/FS/FS/TicketSystem/RT_Internal.pm
@@ -150,17 +150,11 @@ sub customer_tickets {
my $conf = FS::Conf->new;
my $priority_order =
$conf->exists('ticket_system-priority_reverse') ? 'ASC' : 'DESC';
- my $custom_priority =
- $conf->config('ticket_system-custom_priority_field') || '';
- my @order_by;
- my $ss_priority = selfservice_priority();
- push @order_by, { FIELD => "CF.{$ss_priority}", ORDER => $priority_order }
- if $ss_priority;
- push @order_by,
+ my @order_by = (
{ FIELD => 'Priority', ORDER => $priority_order },
{ FIELD => 'Id', ORDER => 'DESC' },
- ;
+ );
$Tickets->OrderByCols(@order_by);
@@ -168,6 +162,7 @@ sub customer_tickets {
while ( my $t = $Tickets->Next ) {
push @tickets, _ticket_info($t);
}
+
return \@tickets;
}
diff --git a/fs_selfservice/FS-SelfService/cgi/ticket_summary.html b/fs_selfservice/FS-SelfService/cgi/ticket_summary.html
index fc50f87..781b1e7 100644
--- a/fs_selfservice/FS-SelfService/cgi/ticket_summary.html
+++ b/fs_selfservice/FS-SelfService/cgi/ticket_summary.html
@@ -10,6 +10,12 @@ my $col = $col1;
my $can_set_priority =
grep { exists($_->{'_selfservice_priority'}) } @tickets;
if ( $can_set_priority ) {
+ use sort 'stable';
+ @tickets = sort {
+ ($b->{'_selfservice_priority'} || 0) <=>
+ ($a->{'_selfservice_priority'} || 0)
+ } @tickets;
+
$OUT .= qq!<FORM ACTION="$selfurl" METHOD="POST">! .
qq!<INPUT TYPE="hidden" NAME="session" VALUE="$session_id">! .
qq!<INPUT TYPE="hidden" NAME="action" VALUE="ticket_priority">!;
diff --git a/httemplate/view/cust_main/misc.html b/httemplate/view/cust_main/misc.html
index ed9b91a..5987459 100644
--- a/httemplate/view/cust_main/misc.html
+++ b/httemplate/view/cust_main/misc.html
@@ -125,6 +125,15 @@
% }
+% if ( $conf->exists('ticket_system-selfservice_edit_subject') ) {
+
+ <TR>
+ <TD ALIGN="right"><% mt('Edit ticket subjects') %></TD>
+ <TD BGCOLOR="#ffffff"><% $cust_main->edit_subject ? 'yes' : 'no' %></TD>
+ </TR>
+
+% }
+
</TABLE></TD></TR></TABLE>
<%init>
diff --git a/httemplate/view/cust_main/tickets.html b/httemplate/view/cust_main/tickets.html
index e0262b8..863c66b 100644
--- a/httemplate/view/cust_main/tickets.html
+++ b/httemplate/view/cust_main/tickets.html
@@ -132,6 +132,14 @@ my( $new_base, %new_param ) =
my $new_link = FS::TicketSystem->href_new_ticket( $cust_main );
my $ss_priority = FS::TicketSystem->selfservice_priority;
+if ( $ss_priority ) {
+ use sort 'stable';
+ no warnings 'uninitialized';
+ @tickets = sort {
+ ($b->{'content'} eq $a->{'content'}) &&
+ $b->{'_selfservice_priority'} <=> $a->{'_selfservice_priority'}
+ } @tickets;
+}
my $format = $conf->config('date_format') || '%Y-%m-%d';