X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fbrowse%2Fagent.cgi;h=e9969b02a1bb681d1514343e7f60faf96bed85a2;hb=5f6615875ca497d46c4f8cd810310d4b2db24bfd;hp=79f6c3dcfca1ee1af0fa7fc334f2156486139e87;hpb=ea1e0de8c51ea562308c20416e1f3fcb719a8847;p=freeside.git
diff --git a/httemplate/browse/agent.cgi b/httemplate/browse/agent.cgi
index 79f6c3dcf..e9969b02a 100755
--- a/httemplate/browse/agent.cgi
+++ b/httemplate/browse/agent.cgi
@@ -1,85 +1,371 @@
-
-
-<%
-
- #bad false laziness with search/cust_main.cgi (also needs fixing up for
- #old mysql)
- my $ncancelled = "
- 0 < ( SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.cancel IS NULL
- OR cust_pkg.cancel = 0
- )
- )
- OR 0 = ( SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- )
- ";
-
- my $ncancelled_sth = dbh->prepare("SELECT COUNT(*) FROM cust_main
- WHERE agentnum = ?
- AND $ncancelled ")
- or die dbh->errstr;
-
- my $total_sth = dbh->prepare("SELECT COUNT(*) FROM cust_main
- WHERE agentnum = ? ")
- or die dbh->errstr;
-
-%>
-
-<%= header('Agent Listing', menubar(
+%
+%
+% my %search;
+% if ( $cgi->param('showdisabled')
+% || !dbdef->table('agent')->column('disabled') ) {
+% %search = ();
+% } else {
+% %search = ( 'disabled' => '' );
+% }
+%
+% my $conf = new FS::Conf;
+%
+%
+
+<% include("/elements/header.html",'Agent Listing', menubar(
'Main Menu' => $p,
'Agent Types' => $p. 'browse/agent_type.cgi',
# 'Add new agent' => '../edit/agent.cgi'
)) %>
Agents are resellers of your service. Agents may be limited to a subset of your
full offerings (via their type).
-Add a new agent
+Add a new agent
+% if ( dbdef->table('agent')->column('disabled') ) {
+
+ <% $cgi->param('showdisabled')
+ ? do { $cgi->param('showdisabled', 0);
+ '( hide disabled agents )'; }
+ : do { $cgi->param('showdisabled', 1);
+ '( show disabled agents )'; }
+ %>
+% }
+
+
+<% include('/elements/table-grid.html') %>
+% my $bgcolor1 = '#eeeeee';
+% my $bgcolor2 = '#ffffff';
+% my $bgcolor = '';
+%
+
-<%= table() %>
- Agent |
- Type |
- Customers |
- Freq. |
- Prog. |
+ param('showdisabled') || !dbdef->table('agent')->column('disabled') ) ? 2 : 3 %>>Agent |
+ Type |
+ Customers |
+ Customer packages |
+ Reports |
+ Registration codes |
+ Prepaid cards |
+% if ( $conf->config('ticket_system') ) {
+
+ Ticketing |
+% }
+
+ Payment Gateway Overrides |
+ Freq. |
+ Prog. |
-<%
-# Agent # |
-# Agent |
+%
+%# Agent # |
+%# Agent |
+%
+%foreach my $agent ( sort {
+% #$a->getfield('agentnum') <=> $b->getfield('agentnum')
+% $a->getfield('agent') cmp $b->getfield('agent')
+%} qsearch('agent', \%search ) ) {
+%
+% my $cust_main_link = $p. 'search/cust_main.cgi?agentnum_on=1&'.
+% 'agentnum='. $agent->agentnum;
+%
+% my $cust_pkg_link = $p. 'search/cust_pkg.cgi?agentnum='. $agent->agentnum;
+%
+% if ( $bgcolor eq $bgcolor1 ) {
+% $bgcolor = $bgcolor2;
+% } else {
+% $bgcolor = $bgcolor1;
+% }
+%
+%
-foreach my $agent ( sort {
- #$a->getfield('agentnum') <=> $b->getfield('agentnum')
- $a->getfield('agent') cmp $b->getfield('agent')
-} qsearch('agent',{}) ) {
- $ncancelled_sth->execute($agent->agentnum) or die $ncancelled_sth->errstr;
- my $num_ncancelled = $ncancelled_sth->fetchrow_arrayref->[0];
+
+
+ <% $agent->agentnum %> |
+% if ( dbdef->table('agent')->column('disabled')
+% && !$cgi->param('showdisabled') ) {
- $total_sth->execute($agent->agentnum) or die $total_sth->errstr;
- my $num_total = $total_sth->fetchrow_arrayref->[0];
+ <% $agent->disabled ? 'DISABLED' : '' %> |
+% }
- my $num_cancelled = $num_total - $num_ncancelled;
-%>
+
+ <% $agent->agent %> |
+ <% $agent->agent_type->atype %> |
-
-
- <%= $agent->agentnum %> |
-
- <%= $agent->agent %> |
- <%= $agent->agent_type->atype %> |
-
- <%= $num_ncancelled %>
- active
- <%= $num_cancelled %>
- cancelled
+ |
+
+ |
+
+
+
|
- <%= $agent->freq %> |
- <%= $agent->prog %> |
+
+
+ Payments
+ Credits
+ A/R Aging
+
+
+ |
+
+
+ <% my $num_reg_code = $agent->num_reg_code %>
+% if ( $num_reg_code ) {
+
+
+% }
+Unused
+% if ( $num_reg_code ) {
+
+% }
+
+ Generate codes
+ |
+
+
+ <% my $num_prepay_credit = $agent->num_prepay_credit %>
+% if ( $num_prepay_credit ) {
+
+
+% }
+Unused
+% if ( $num_prepay_credit ) {
+
+% }
+
+ Generate cards
+ |
+% if ( $conf->config('ticket_system') ) {
+
+
+
+% if ( $agent->ticketing_queueid ) {
+
+ Queue: <% $agent->ticketing_queueid %>: <% $agent->ticketing_queue %>
+% }
+
+ |
+% }
+
+
+
+
+% foreach my $override (
+% # sort { } want taxclass-full stuff first? and default cards (empty cardtype)
+% qsearch('agent_payment_gateway', { 'agentnum' => $agent->agentnum } )
+% ) {
+%
+
+
+
+ <% $override->cardtype || 'Default' %> to <% $override->payment_gateway->gateway_module %> (<% $override->payment_gateway->gateway_username %>)
+ <% $override->taxclass
+ ? ' for '. $override->taxclass. ' only'
+ : ''
+ %>
+ (delete)
+ |
+
+% }
+
+
+ (add override) |
+
+
+ |
+
+
+
+% }
-<% } %>