Will things ever be the same again?
[freeside.git] / httemplate / browse / agent.cgi
1 %
2 %
3 %  my %search;
4 %  if ( $cgi->param('showdisabled')
5 %       || !dbdef->table('agent')->column('disabled') ) {
6 %    %search = ();
7 %  } else {
8 %    %search = ( 'disabled' => '' );
9 %  }
10 %
11 %  my $conf = new FS::Conf;
12 %
13 %
14
15 <% include("/elements/header.html",'Agent Listing', menubar(
16   'Main Menu'   => $p,
17   'Agent Types' => $p. 'browse/agent_type.cgi',
18 #  'Add new agent' => '../edit/agent.cgi'
19 )) %>
20 Agents are resellers of your service. Agents may be limited to a subset of your
21 full offerings (via their type).<BR><BR>
22 <A HREF="<% $p %>edit/agent.cgi"><I>Add a new agent</I></A><BR><BR>
23 % if ( dbdef->table('agent')->column('disabled') ) { 
24
25   <% $cgi->param('showdisabled')
26       ? do { $cgi->param('showdisabled', 0);
27              '( <a href="'. $cgi->self_url. '">hide disabled agents</a> )'; }
28       : do { $cgi->param('showdisabled', 1);
29              '( <a href="'. $cgi->self_url. '">show disabled agents</a> )'; }
30   %>
31 % } 
32
33
34 <% include('/elements/table-grid.html') %>
35 % my $bgcolor1 = '#eeeeee';
36 %   my $bgcolor2 = '#ffffff';
37 %   my $bgcolor = '';
38 %
39
40
41 <TR>
42   <TH CLASS="grid" BGCOLOR="#cccccc" COLSPAN=<% ( $cgi->param('showdisabled') || !dbdef->table('agent')->column('disabled') ) ? 2 : 3 %>>Agent</TH>
43   <TH CLASS="grid" BGCOLOR="#cccccc">Type</TH>
44   <TH CLASS="grid" BGCOLOR="#cccccc">Customers</TH>
45   <TH CLASS="grid" BGCOLOR="#cccccc"><FONT SIZE=-1>Customer<BR>packages</FONT></TH>
46   <TH CLASS="grid" BGCOLOR="#cccccc">Reports</TH>
47   <TH CLASS="grid" BGCOLOR="#cccccc">Registration codes</TH>
48   <TH CLASS="grid" BGCOLOR="#cccccc">Prepaid cards</TH>
49 % if ( $conf->config('ticket_system') ) { 
50
51     <TH CLASS="grid" BGCOLOR="#cccccc">Ticketing</TH>
52 % } 
53
54   <TH CLASS="grid" BGCOLOR="#cccccc"><FONT SIZE=-1>Payment Gateway Overrides</FONT></TH>
55   <TH CLASS="grid" BGCOLOR="#cccccc"><FONT SIZE=-1>Freq.</FONT></TH>
56   <TH CLASS="grid" BGCOLOR="#cccccc"><FONT SIZE=-1>Prog.</FONT></TH>
57 </TR>
58
59 %#        <TH><FONT SIZE=-1>Agent #</FONT></TH>
60 %#        <TH>Agent</TH>
61 %
62 %foreach my $agent ( sort { 
63 %  #$a->getfield('agentnum') <=> $b->getfield('agentnum')
64 %  $a->getfield('agent') cmp $b->getfield('agent')
65 %} qsearch('agent', \%search ) ) {
66 %
67 %  my $cust_main_link = $p. 'search/cust_main.cgi?agentnum_on=1&'.
68 %                       'agentnum='. $agent->agentnum;
69 %
70 %  my $cust_pkg_link = $p. 'search/cust_pkg.cgi?agentnum='. $agent->agentnum;
71 %  
72 %  if ( $bgcolor eq $bgcolor1 ) {
73 %    $bgcolor = $bgcolor2;
74 %  } else {
75 %    $bgcolor = $bgcolor1;
76 %  }
77 %
78 %
79
80
81       <TR>
82         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><A HREF="<%$p%>edit/agent.cgi?<% $agent->agentnum %>">
83           <% $agent->agentnum %></A></TD>
84 % if ( dbdef->table('agent')->column('disabled')
85 %        && !$cgi->param('showdisabled')           ) { 
86
87         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $agent->disabled ? 'DISABLED' : '' %></TD>
88 % } 
89
90
91         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><A HREF="<%$p%>edit/agent.cgi?<% $agent->agentnum %>">
92           <% $agent->agent %></A></TD>
93         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><A HREF="<%$p%>edit/agent_type.cgi?<% $agent->typenum %>"><% $agent->agent_type->atype %></A></TD>
94
95         <TD CLASS="inv" BGCOLOR="<% $bgcolor %>">
96           <TABLE CLASS="inv" CELLSPACING=0 CELLPADDING=0>
97
98             <TR>
99               <TH ALIGN="right" WIDTH="40%">
100                 <FONT COLOR="#7e0079">
101                   <% my $num_prospect = $agent->num_prospect_cust_main %>&nbsp;
102                 </FONT>
103               </TH>
104
105               <TD>
106 % if ( $num_prospect ) { 
107
108                   <A HREF="<% $cust_main_link %>&prospect=1">
109 % } 
110 prospects
111 % if ($num_prospect ) { 
112 </A>
113 % } 
114
115               <TD>
116             </TR>
117
118             <TR>
119               <TH ALIGN="right" WIDTH="40%">
120                 <FONT COLOR="#0000CC">
121                   <% my $num_inactive = $agent->num_inactive_cust_main %>&nbsp;
122                 </FONT>
123               </TH>
124
125               <TD>
126 % if ( $num_inactive ) { 
127
128                   <A HREF="<% $cust_main_link %>&inactive=1">
129 % } 
130 inactive
131 % if ( $num_inactive ) { 
132 </A>
133 % } 
134
135               </TD>
136             </TR>
137
138             <TR>
139               <TH ALIGN="right" WIDTH="40%">
140                 <FONT COLOR="#00CC00">
141                   <% my $num_active = $agent->num_active_cust_main %>&nbsp;
142                 </FONT>
143               </TH>
144
145               <TD>
146 % if ( $num_active ) { 
147
148                   <A HREF="<% $cust_main_link %>&active=1">
149 % } 
150 active
151 % if ( $num_active ) { 
152 </A>
153 % } 
154
155               </TD>
156             </TR>
157
158             <TR>
159               <TH ALIGN="right" WIDTH="40%">
160                 <FONT COLOR="#FF9900">
161                   <% my $num_susp = $agent->num_susp_cust_main %>&nbsp;
162                 </FONT>
163               </TH>
164
165               <TD>
166 % if ( $num_susp ) { 
167
168                   <A HREF="<% $cust_main_link %>&suspended=1">
169 % } 
170 suspended
171 % if ( $num_susp ) { 
172 </A>
173 % } 
174
175               </TD>
176             </TR>
177
178             <TR>
179               <TH ALIGN="right" WIDTH="40%">
180                 <FONT COLOR="#FF0000">
181                   <% my $num_cancel = $agent->num_cancel_cust_main %>&nbsp;
182                 </FONT>
183               </TH>
184
185               <TD>
186 % if ( $num_cancel ) { 
187
188                   <A HREF="<% $cust_main_link %>&showcancelledcustomers=1&cancelled=1">
189 % } 
190 cancelled
191 % if ( $num_cancel ) { 
192 </A>
193 % } 
194
195               </TD>
196             </TR>
197
198           </TABLE>
199         </TD>
200
201         <TD CLASS="inv" BGCOLOR="<% $bgcolor %>" VALIGN="bottom">
202           <TABLE CLASS="inv" CELLSPACING=0 CELLPADDING=0>
203
204             <TR>
205               <TH ALIGN="right" WIDTH="40%">
206                 <FONT COLOR="#0000CC">
207                   <% my $num_inactive_pkg = $agent->num_inactive_cust_pkg %>&nbsp;
208                 </FONT>
209               </TH>
210
211               <TD>
212 % if ( $num_inactive_pkg ) { 
213
214                   <A HREF="<% $cust_pkg_link %>&magic=inactive">
215 % } 
216 inactive
217 % if ( $num_inactive_pkg ) { 
218 </A>
219 % } 
220
221               </TD>
222             </TR>
223
224             <TR>
225               <TH ALIGN="right" WIDTH="40%">
226                 <FONT COLOR="#00CC00">
227                   <% my $num_active_pkg = $agent->num_active_cust_pkg %>&nbsp;
228                 </FONT>
229               </TH>
230
231               <TD>
232 % if ( $num_active_pkg ) { 
233
234                   <A HREF="<% $cust_pkg_link %>&magic=active">
235 % } 
236 active
237 % if ( $num_active_pkg ) { 
238 </A>
239 % } 
240
241               </TD>
242             </TR>
243
244             <TR>
245               <TH ALIGN="right" WIDTH="40%">
246                 <FONT COLOR="#FF9900">
247                   <% my $num_susp_pkg = $agent->num_susp_cust_pkg %>&nbsp;
248                 </FONT>
249
250               </TH>
251               <TD>
252 % if ( $num_susp_pkg ) { 
253
254                   <A HREF="<% $cust_pkg_link %>&magic=suspended">
255 % } 
256 suspended
257 % if ( $num_susp_pkg ) { 
258 </A>
259 % } 
260
261               </TD>
262             </TR>
263             
264             <TR>
265               <TH ALIGN="right" WIDTH="40%">
266                 <FONT COLOR="#FF0000">
267                   <% my $num_cancel_pkg = $agent->num_cancel_cust_pkg %>&nbsp;
268                 </FONT>
269               </TH>
270
271               <TD>
272 % if ( $num_cancel_pkg ) { 
273
274                   <A HREF="<% $cust_pkg_link %>&magic=cancelled">
275 % } 
276 cancelled
277 % if ( $num_cancel_pkg ) { 
278 </A>
279 % } 
280
281               </TD>
282             </TR>
283
284           </TABLE>
285         </TD>
286
287         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
288           <A HREF="<% $p %>search/report_cust_pay.html?agentnum=<% $agent->agentnum %>">Payments</A>
289           <BR><A HREF="<% $p %>search/report_cust_credit.html?agentnum=<% $agent->agentnum %>">Credits</A>
290           <BR><A HREF="<% $p %>search/report_receivables.cgi?agentnum=<% $agent->agentnum %>">A/R Aging</A>
291           <!--<BR><A HREF="<% $p %>search/money_time.cgi?agentnum=<% $agent->agentnum %>">Sales/Credits/Receipts</A>-->
292
293         </TD>
294
295         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
296           <% my $num_reg_code = $agent->num_reg_code %>
297 % if ( $num_reg_code ) { 
298
299             <A HREF="<%$p%>search/reg_code.html?agentnum=<% $agent->agentnum %>">
300 % } 
301 Unused
302 % if ( $num_reg_code ) { 
303 </A>
304 % } 
305
306           <BR><A HREF="<%$p%>edit/reg_code.cgi?agentnum=<% $agent->agentnum %>">Generate codes</A>
307         </TD>
308
309         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
310           <% my $num_prepay_credit = $agent->num_prepay_credit %>
311 % if ( $num_prepay_credit ) { 
312
313             <A HREF="<%$p%>search/prepay_credit.html?agentnum=<% $agent->agentnum %>">
314 % } 
315 Unused
316 % if ( $num_prepay_credit ) { 
317 </A>
318 % } 
319
320           <BR><A HREF="<%$p%>edit/prepay_credit.cgi?agentnum=<% $agent->agentnum %>">Generate cards</A>
321         </TD>
322 % if ( $conf->config('ticket_system') ) { 
323
324
325           <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
326 % if ( $agent->ticketing_queueid ) { 
327
328               Queue: <% $agent->ticketing_queueid %>: <% $agent->ticketing_queue %><BR>
329 % } 
330
331           </TD>
332 % } 
333
334
335         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
336           <TABLE CELLSPACING=0 CELLPADDING=0>
337 % foreach my $override (
338 %                 # sort { }  want taxclass-full stuff first?  and default cards (empty cardtype)
339 %                 qsearch('agent_payment_gateway', { 'agentnum' => $agent->agentnum } )
340 %               ) {
341 %            
342
343               <TR>
344                 <TD> 
345                   <% $override->cardtype || 'Default' %> to <% $override->payment_gateway->gateway_module %> (<% $override->payment_gateway->gateway_username %>)
346                   <% $override->taxclass
347                         ? ' for '. $override->taxclass. ' only'
348                         : ''
349                   %>
350                   <FONT SIZE=-1><A HREF="<%$p%>misc/delete-agent_payment_gateway.cgi?<% 'XXXoverridenum' %>">(delete)</A></FONT>
351                 </TD>
352               </TR>
353 % } 
354
355             <TR>
356               <TD><FONT SIZE=-1><A HREF="<%$p%>edit/agent_payment_gateway.html?agentnum=<% $agent->agentnum %>">(add override)</A></FONT></TD>
357             </TR>
358           </TABLE>
359         </TD>
360
361 <!--
362         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $agent->freq %></TD>
363         <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $agent->prog %></TD>
364 -->
365
366       </TR>
367 % } 
368
369
370     </TABLE>
371   </BODY>
372 </HTML>