X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Ftickets.html;h=863c66be454f544a11be30e6dcb99419bd6f2094;hb=8737dc99be5a9874c40f36d1420447253ee12c31;hp=c4183ae55eb2e39e7168d876a9eb58146f8ca385;hpb=1293d137b061f097190eda53e4e78214e18832e6;p=freeside.git
diff --git a/httemplate/view/cust_main/tickets.html b/httemplate/view/cust_main/tickets.html
index c4183ae55..863c66be4 100644
--- a/httemplate/view/cust_main/tickets.html
+++ b/httemplate/view/cust_main/tickets.html
@@ -1,28 +1,58 @@
-%
-% my( $cust_main ) = @_;
-% my( @tickets ) = $cust_main->tickets;
-%
-
-Tickets
+
-(View all tickets for this customer)
-(New ticket for this customer)
+(<% mt("View $openlabel tickets for this customer") |h %>)
+(<% mt('View resolved tickets for this customer') |h %>)
+
-<% include("/elements/table-grid.html") %>
+<& /elements/table-grid.html &>
% my $bgcolor1 = '#eeeeee';
% my $bgcolor2 = '#ffffff';
% my $bgcolor = '';
-%
-
- # |
- Subject |
- Priority |
- Queue |
- Status |
+ <% mt('#') |h %> |
+ <% mt('Subject') |h %> |
+ <% mt('Status') |h %> |
+ <% mt('Queue') |h %> |
+ <% mt('Owner') |h %> |
+ <% mt('Due') |h %> |
+ <% mt('Estimated Time') |h %> |
+ <% mt('Priority') |h %> |
+% if ( $ss_priority ) {
+ <% mt('Customer Priority') |h %> |
+% }
+
% foreach my $ticket ( @tickets ) {
% my $href = FS::TicketSystem->href_ticket($ticket->{id});
% if ( $bgcolor eq $bgcolor1 ) {
@@ -30,24 +60,93 @@
% } else {
% $bgcolor = $bgcolor1;
% }
-%
+
+
+
+ ><% $ticket->{id} %>
+ |
+
+
+ ><% $ticket->{subject} %>
+ |
+
+
+ <% $ticket->{status} %>
+ |
+
+
+ <% $ticket->{queue} %>
+ |
+
+
+ <% $ticket->{owner} %>
+ |
+
+
+ <% $date_formatter->($ticket->{due}) %>
+ |
+
+
+ <% $ticket->{timeestimated} %>
+ |
+
+
+ <% $ticket->{content}
+ ? $ticket->{content}.' ('.$ticket->{priority}.')'
+ : $ticket->{priority}
+ %>
+ |
+
+% if ( $ss_priority ) {
+
+ <% $ticket->{"CF.{$ss_priority}"} %>
+ |
+% }
+
+
-
+% }
- ><% $ticket->{id} %> |
+
- ><% $ticket->{subject} %> |
+<%init>
+use Date::Format 'time2str';
+use Date::Parse 'str2time';
- <% $ticket->{content} || $ticket->{priority} %> |
+my( $conf ) = new FS::Conf;
+my( $cust_main ) = @_;
+my( @tickets ) = $cust_main->tickets;
- <% $ticket->{name} %> |
+my $open_link = FS::TicketSystem->href_customer_tickets($cust_main->custnum);
+my $openlabel = join('/', FS::TicketSystem->statuses );
- <% $ticket->{status} %> |
+my $res_link = FS::TicketSystem->href_customer_tickets(
+ $cust_main->custnum,
+ { 'statuses' => [ 'resolved' ] }
+ );
-
-% }
+my( $new_base, %new_param ) =
+ FS::TicketSystem->href_params_new_ticket( $cust_main );
+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';
+
+my $date_formatter = sub {
+ my $time = str2time($_[0], 'GMT');
+ # exclude times within 24 hours of zero
+ ($time > 86400) ? time2str($format, $time) : '';
+};
+%init>