<% include("/elements/header.html",'Agent Listing', menubar( '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 )'; } %> % } <% include('/elements/table-grid.html') %> % my $bgcolor1 = '#eeeeee'; % my $bgcolor2 = '#ffffff'; % my $bgcolor = ''; param('showdisabled') || !dbdef->table('agent')->column('disabled') ) ? 2 : 3 %>>Agent Type Master Customer Access Groups Invoice
Template
Customers Customer
packages
Reports Registration
codes
Prepaid cards % if ( $conf->config('ticket_system') ) { Ticketing % } Payment Gateway Overrides Configuration Overrides %# 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; % } <% $agent->agentnum %> % if ( ! $cgi->param('showdisabled') ) { <% $agent->disabled ? 'DISABLED' : 'Active' %> % } <% $agent->agent %> <% $agent->agent_type->atype %> % if ( $agent->agent_custnum ) { <% include('/elements/small_custview.html', $agent->agent_custnum, scalar($conf->config('countrydefault')), 1, #show balance ) %> % } % foreach my $access_group ( % map $_->access_group, % qsearch('access_groupagent', { 'agentnum' => $agent->agentnum }) % ) { <% $access_group->groupname |h %>
% } <% $agent->invoice_template || '(Default)' %>
<% my $num_prospect = $agent->num_prospect_cust_main %>  % if ( $num_prospect ) { % } prospects % if ($num_prospect ) { % }
<% my $num_inactive = $agent->num_inactive_cust_main %>  % if ( $num_inactive ) { % } inactive % if ( $num_inactive ) { % }
<% my $num_active = $agent->num_active_cust_main %>  % if ( $num_active ) { % } active % if ( $num_active ) { % }
<% my $num_susp = $agent->num_susp_cust_main %>  % if ( $num_susp ) { % } suspended % if ( $num_susp ) { % }
<% my $num_cancel = $agent->num_cancel_cust_main %>  % if ( $num_cancel ) { % } cancelled % if ( $num_cancel ) { % }
<% my $num_inactive_pkg = $agent->num_inactive_cust_pkg %>  % if ( $num_inactive_pkg ) { % } inactive % if ( $num_inactive_pkg ) { % }
<% my $num_active_pkg = $agent->num_active_cust_pkg %>  % if ( $num_active_pkg ) { % } active % if ( $num_active_pkg ) { % }
<% my $num_susp_pkg = $agent->num_susp_cust_pkg %>  % if ( $num_susp_pkg ) { % } suspended % if ( $num_susp_pkg ) { % }
<% my $num_cancel_pkg = $agent->num_cancel_cust_pkg %>  % if ( $num_cancel_pkg ) { % } cancelled % if ( $num_cancel_pkg ) { % }
Package Churn
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)
% foreach my $override ( % qsearch('conf', { 'agentnum' => $agent->agentnum } ) % ) { % % }
<% $override->name %> (delete)
(view/add/edit overrides)
% } <%init> die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); my %search; if ( $cgi->param('showdisabled') || !dbdef->table('agent')->column('disabled') ) { %search = (); } else { %search = ( 'disabled' => '' ); } my $conf = new FS::Conf;