summaryrefslogtreecommitdiff
path: root/httemplate/view/cust_main/tickets.html
blob: 7a511a962d516ec85978fce13ed9d5e8e500c4be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<FORM METHOD="GET" NAME="CreateTicketForm" STYLE="display:inline">
<SCRIPT TYPE="text/javascript">
function updateTicketLink() {
  var link = document.getElementById('CreateTicketLink');
  var selector = document.getElementById('Queue')
  link.href = "<% $new_base.'?'.
    join(';', map(
      { ($_ eq 'Queue') ? () : "$_=$new_param{$_}"} 
    keys %new_param),'Queue=') %>" + selector.options[selector.selectedIndex].value;
}
</SCRIPT>
<A id="CreateTicketLink" HREF="">Create new ticket</A>
 in queue
<SELECT NAME="Queue" id="Queue" onchange="updateTicketLink()">
% my %queues = FS::TicketSystem->queues();
% foreach my $queueid ( sort { $queues{$a} cmp $queues{$b} } keys %queues ) {
%   #should consider whether the user has ACL to create ticket in each queue
    <OPTION VALUE="<% $queueid %>"
            <% $queueid == $new_param{'Queue'} ? 'SELECTED' : '' %>
    ><% $queues{$queueid} |h %>
% }
</SELECT>
</FORM>
<SCRIPT DEFER TYPE="text/javascript">updateTicketLink();</SCRIPT>
<BR>

(<A HREF="<% $open_link %>">View <% $openlabel %> tickets for this customer</A>)
(<A HREF="<% $res_link  %>">View resolved tickets for this customer</A>)
<BR><BR>

<% include("/elements/table-grid.html") %>
% my $bgcolor1 = '#eeeeee';
%   my $bgcolor2 = '#ffffff';
%   my $bgcolor = '';

<TR>
  <TH CLASS="grid" BGCOLOR="#cccccc">#</TH>
  <TH CLASS="grid" BGCOLOR="#cccccc">Subject</TH>
  <TH CLASS="grid" BGCOLOR="#cccccc">Status</TH>
  <TH CLASS="grid" BGCOLOR="#cccccc">Queue</TH>
  <TH CLASS="grid" BGCOLOR="#cccccc">Owner</TH>
  <TH CLASS="grid" BGCOLOR="#cccccc">Priority</TH>
</TR>

% foreach my $ticket ( @tickets ) {
%     my $href = FS::TicketSystem->href_ticket($ticket->{id});
%     if ( $bgcolor eq $bgcolor1 ) {
%       $bgcolor = $bgcolor2;
%     } else {
%       $bgcolor = $bgcolor1;
%     }

  <TR>
  
    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <A HREF=<%$href%>><% $ticket->{id} %></A>
    </TD>
  
    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <A HREF=<%$href%>><% $ticket->{subject} %></A>
    </TD>
  
    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <% $ticket->{status} %>
    </TD>
  
    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <% $ticket->{queue} %>
    </TD>
  
    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <% $ticket->{owner} %>
    </TD>
  
    <TD ALIGN="right" CLASS="grid" BGCOLOR="<% $bgcolor %>">
      <% $ticket->{content}
           ? $ticket->{content}.' ('.$ticket->{priority}.')'
           : $ticket->{priority}
      %>
    </TD>
  
  </TR>

% } 

</TABLE>

<%init>

my( $cust_main ) = @_;
my( @tickets )  = $cust_main->tickets;

my $open_link = FS::TicketSystem->href_customer_tickets($cust_main->custnum);
my $openlabel = join('/', FS::TicketSystem->statuses );

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,
                 join(', ', $cust_main->invoicing_list_emailonly )               );

my $new_link = FS::TicketSystem->href_new_ticket(
                 $cust_main,
                 join(', ', $cust_main->invoicing_list_emailonly )
               );

</%init>