% if ( $custnum ) { <% include("/elements/header.html","View $svc account") %> <% include( '/elements/small_custview.html', $custnum, '', 1, "${p}view/cust_main.cgi") %>
% } else { <% include("/elements/header.html",'View account', menubar( "Cancel this (unaudited) account" => "javascript:areyousure(\'${p}misc/cancel-unaudited.cgi?$svcnum\')", )) %> % } <% include( 'svc_acct/radius_usage.html', 'svc_acct' => $svc_acct, 'part_svc' => $part_svc, 'cust_pkg' => $cust_pkg, %gopt, ) %> <% include( 'svc_acct/change_svc_form.html', 'part_svc' => \@part_svc, 'svcnum' => $svcnum, 'pkgnum' => $pkgnum, %gopt, ) %> Service #<% $svcnum %> | Edit this service <% include( 'svc_acct/change_svc.html', 'part_svc' => \@part_svc, %gopt, ) %> <% include( 'svc_acct/basics.html', 'svc_acct' => $svc_acct, 'part_svc' => $part_svc, %gopt, ) %>
<% include( 'svc_acct/hosting.html', %gopt, ) %> %#remove this? does anybody even use it? it was a misunderstood customer %#request IIRC? % my $conf = new FS::Conf; % if ( $conf->exists('svc_acct-notes') ) { % warn 'WARNING: svc_acct-notes deprecated\n'; <% join("
", $conf->config('svc_acct-notes') ) %>

% } <% include('elements/svc_export_settings.html', $svc_acct) %> <% joblisting({'svcnum'=>$svcnum}, 1) %> <% include('/elements/footer.html') %> <%init> die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('View customer services'); my $addl_from = ' LEFT JOIN cust_svc USING ( svcnum ) '. ' LEFT JOIN cust_pkg USING ( pkgnum ) '. ' LEFT JOIN cust_main USING ( custnum ) '; my($query) = $cgi->keywords; $query =~ /^(\d+)$/; my $svcnum = $1; my $svc_acct = qsearchs({ 'select' => 'svc_acct.*', 'table' => 'svc_acct', 'addl_from' => $addl_from, 'hashref' => { 'svcnum' => $svcnum }, 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql( 'null_right' => 'View/link unlinked services' ), }); die "Unknown svcnum" unless $svc_acct; #false laziness w/all svc_*.cgi my $cust_svc = qsearchs( 'cust_svc' , { 'svcnum' => $svcnum } ); my $pkgnum = $cust_svc->getfield('pkgnum'); my($cust_pkg, $custnum); if ($pkgnum) { $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } ); $custnum = $cust_pkg->custnum; } else { $cust_pkg = ''; $custnum = ''; } #eofalse my $part_svc = qsearchs('part_svc',{'svcpart'=> $cust_svc->svcpart } ); die "Unknown svcpart" unless $part_svc; my $svc = $part_svc->svc; my @part_svc = (); if ($FS::CurrentUser::CurrentUser->access_right('Change customer service')) { if ( $pkgnum ) { @part_svc = grep { $_->svcdb eq 'svc_acct' && $_->svcpart != $part_svc->svcpart } $cust_pkg->available_part_svc; } else { @part_svc = qsearch('part_svc', { svcdb => 'svc_acct', disabled => '', svcpart => { op=>'!=', value=>$part_svc->svcpart }, } ); } } my $communigate = scalar($part_svc->part_export('communigate_pro')); # || scalar($part_svc->part_export('communigate_pro_singledomain')); my %gopt = ( 'communigate' => $communigate, );