% if ( $custnum ) {
%# <% include("/elements/header.html","View $svcdomain") %>
<% include("/elements/header.html","View domain") %>
<% include( '/elements/small_custview.html', $custnum, '', 1,
"${p}view/cust_main.cgi") %>
% } else {
<% include("/elements/header.html",'View domain', menubar(
"Cancel this (unaudited) domain" =>
"javascript:areyousure('${p}misc/cancel-unaudited.cgi?$svcnum', 'Delete $domain and all records?')",
))
%>
% }
<% include('/elements/error.html') %>
Service #<% $svcnum %>
% #if ( $conf->exists('svc_domain-edit_domain') ) {
| Edit this domain
% #}
<% &ntable("#cccccc") %>
<% &ntable("#cccccc",2) %>
|
Service |
<% $part_svc->svc %> |
Domain |
<% $domain %>
(view whois information)
|
% if ($export) {
Registration status |
<% $status %>
% if ( $FS::CurrentUser::CurrentUser->access_right('Manage domain registration') ) {
% if ( defined($ops{'register'}) ) {
Register at <% $registrar->{'name'} %>
% }
% if ( defined($ops{'transfer'}) ) {
Transfer to <% $registrar->{'name'} %>
% }
% if ( defined($ops{'renew'}) ) {
Renew at <% $registrar->{'name'} %>
% }
% if ( defined($ops{'revoke'}) ) {
Revoke
% }
% }
|
% }
% if ( $communigate ) {
Administrator domain |
% if ( $svc_domain->parent_svcnum ) {
% #XXX agent-virt aware the link
<% $svc_domain->parent_svc_x->domain %>
% } else {
(none)
% }
|
Aliases |
<% $svc_domain->cgp_aliases %> |
% }
% if ( $communigate && $svc_domain->max_accounts ) {
Maximum number of Accounts |
<% $svc_domain->max_accounts %> |
% }
Catch all email |
<% $email ? "$email" : '(none)' %>
% if ( $FS::CurrentUser::CurrentUser->access_right('Edit domain catchall') ) {
(change)
% }
|
Enabled services |
<% $svc_domain->cgp_accessmodes %> |
DNS records
% my @records; if ( @records = $svc_domain->domain_record ) {
<% include('/elements/table-grid.html') %>
% my $bgcolor1 = '#eeeeee';
% my $bgcolor2 = '#ffffff';
% my $bgcolor = $bgcolor2;
Zone |
Type |
Data |
% foreach my $domain_record ( @records ) {
% my $type = $domain_record->rectype eq '_mstr'
% ? "(slave)"
% : $domain_record->recaf. ' '. $domain_record->rectype;
<% $domain_record->reczone %> |
<% $type %> |
<% $domain_record->recdata %>
% unless ( $domain_record->rectype eq 'SOA'
% || ! $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice')
% ) {
% ( my $recdata = $domain_record->recdata ) =~ s/"/\\'\\'/g;
(delete)
% }
|
% if ( $bgcolor eq $bgcolor1 ) {
% $bgcolor = $bgcolor2;
% } else {
% $bgcolor = $bgcolor1;
% }
% }
% }
% if ( $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice') ) {
% }
<% include('elements/svc_export_settings.html', $svc_domain) %>
<% joblisting({'svcnum'=>$svcnum}, 1) %>
<% include('/elements/footer.html') %>
<%init>
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('View customer services');
my $conf = new FS::Conf;
my($query) = $cgi->keywords;
$query =~ /^(\d+)$/;
my $svcnum = $1;
my $svc_domain = qsearchs({
'select' => 'svc_domain.*',
'table' => 'svc_domain',
'addl_from' => ' LEFT JOIN cust_svc USING ( svcnum ) '.
' LEFT JOIN cust_pkg USING ( pkgnum ) '.
' LEFT JOIN cust_main USING ( custnum ) ',
'hashref' => {'svcnum'=>$svcnum},
'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql(
'null_right' => 'View/link unlinked services'
),
});
die "Unknown svcnum" unless $svc_domain;
my $cust_svc = qsearchs('cust_svc',{'svcnum'=>$svcnum});
my $pkgnum = $cust_svc->getfield('pkgnum');
my($cust_pkg, $custnum, $display_custnum);
if ($pkgnum) {
$cust_pkg = qsearchs('cust_pkg', {'pkgnum'=>$pkgnum} );
$custnum = $cust_pkg->custnum;
$display_custnum = $cust_pkg->cust_main->display_custnum;
} else {
$cust_pkg = '';
$custnum = '';
}
my $part_svc = qsearchs('part_svc',{'svcpart'=> $cust_svc->svcpart } );
die "Unknown svcpart" unless $part_svc;
my $email = '';
if ($svc_domain->catchall) {
my $svc_acct = qsearchs('svc_acct',{'svcnum'=> $svc_domain->catchall } );
die "Unknown svcpart" unless $svc_acct;
$email = $svc_acct->email;
}
my $domain = $svc_domain->domain;
my $communigate = scalar($part_svc->part_export('communigate_pro'));
# || scalar($part_svc->part_export('communigate_pro_singledomain'));
# Find the first export that does domain registration
my @exports = grep $_->can('registrar'), $part_svc->part_export;
my $export = $exports[0];
# If we have a domain registration export, get the registrar object
my $registrar;
my $status = 'Unknown';
my %ops = ();
if ($export) {
$registrar = $export->registrar;
my $domstat = $export->get_status( $svc_domain );
if (defined($domstat->{'message'})) {
$status = $domstat->{'message'};
} elsif (defined($domstat->{'unregistered'})) {
$status = 'Not registered';
$ops{'register'} = "Register";
} elsif (defined($domstat->{'status'})) {
$status = $domstat->{'status'} . ' ' . $domstat->{'contact_email'} . ' ' . $domstat->{'last_update_time'};
} elsif (defined($domstat->{'expdate'})) {
$status = "Expires " . $domstat->{'expdate'};
$ops{'renew'} = "Renew";
$ops{'revoke'} = "Revoke";
} else {
$status = $domstat->{'reason'};
$ops{'transfer'} = "Transfer";
}
}
%init>