<% my %search; if ( $cgi->param('showdisabled') || !dbdef->table('agent')->column('disabled') ) { %search = (); } else { %search = ( 'disabled' => '' ); } #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( '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

<% 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 )'; } %> <% } %> <%= table() %> param('showdisabled') || !dbdef->table('agent')->column('disabled') ) ? 2 : 3 %>>Agent Type Customers Freq. Prog. <% # Agent # # Agent foreach my $agent ( sort { #$a->getfield('agentnum') <=> $b->getfield('agentnum') $a->getfield('agent') cmp $b->getfield('agent') } qsearch('agent', \%search ) ) { $ncancelled_sth->execute($agent->agentnum) or die $ncancelled_sth->errstr; my $num_ncancelled = $ncancelled_sth->fetchrow_arrayref->[0]; $total_sth->execute($agent->agentnum) or die $total_sth->errstr; my $num_total = $total_sth->fetchrow_arrayref->[0]; my $num_cancelled = $num_total - $num_ncancelled; my $cust_main_link = $p. 'search/cust_main.cgi?agentnum_on=1&'. 'agentnum='. $agent->agentnum; %> <%= $agent->agentnum %> <% if ( dbdef->table('agent')->column('disabled') && !$cgi->param('showdisabled') ) { %> <%= $agent->disabled ? 'DISABLED' : '' %> <% } %> <%= $agent->agent %> <%= $agent->agent_type->atype %> <%= $num_ncancelled %> active
<%= $num_cancelled %> cancelled <%= $agent->freq %> <%= $agent->prog %> <% } %>