communigate provisioning phase 2: add svc_domain.trailer -> communigate TrailerText...
[freeside.git] / httemplate / view / svc_domain.cgi
index b9a8de7..3938a34 100755 (executable)
-<% include("/elements/header.html",'Domain View', menubar(
-  ( ( $pkgnum || $custnum )
-    ? ( "View this customer (#$display_custnum)" => "${p}view/cust_main.cgi?$custnum",
-      )
-    : ( "Delete this (unaudited) domain" =>
-          "javascript:areyousure('${p}misc/cancel-unaudited.cgi?$svcnum', 'Delete $domain and all records?' )" )
-  )
-)) %>
+% if ( $custnum ) {
 
-<% include('/elements/error.html') %>
-
-Service #<% $svcnum %>
-<BR>Service: <B><% $part_svc->svc %></B>
-<BR>Domain name: <B><% $domain %></B>
-% if ($export) {
-<BR>Status: <B><% $status %></B>
-%   if ( $FS::CurrentUser::CurrentUser->access_right('Manage domain registration') ) {
-%     if ( defined($ops{'register'}) ) {
-    <A HREF="<% ${p} %>edit/process/domreg.cgi?op=register&svcnum=<% $svcnum %>">Register at <% $registrar->{'name'} %></A>&nbsp;
-%     }
-%     if ( defined($ops{'transfer'}) ) {
-    <A HREF="<% ${p} %>edit/process/domreg.cgi?op=transfer&svcnum=<% $svcnum %>">Transfer to <% $registrar->{'name'} %></A>&nbsp;
-%     }
-%     if ( defined($ops{'renew'}) ) {
-    <FORM NAME="Renew" METHOD="POST" ACTION="<% ${p} %>edit/process/domreg.cgi">
-      <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
-      <INPUT TYPE="hidden" NAME="op" VALUE="renew">
-      <SELECT NAME="period">
-%       foreach (1..10) { 
-          <OPTION VALUE="<%$_%>"><%$_%> year<% $_ > 1 ? 's' : '' %></OPTION>
-%       } 
-      </SELECT>
-      <INPUT TYPE="submit" VALUE="Renew">&nbsp;
-    </FORM>
-%     }
-%     if ( defined($ops{'revoke'}) ) {
-    <A HREF="<% ${p} %>edit/process/domreg.cgi?op=revoke&svcnum=<% $svcnum %>">Revoke</A>
-%     }
-%   }
-% }
+%#  <% include("/elements/header.html","View $svcdomain") %>
+  <% include("/elements/header.html","View domain") %>
+  <% include( '/elements/small_custview.html', $custnum, '', 1,
+     "${p}view/cust_main.cgi") %>
+  <BR>
 
-% if ( $FS::CurrentUser::CurrentUser->access_right('Edit domain catchall') ) {
-    <BR>Catch all email <A HREF="<% ${p} %>misc/catchall.cgi?<% $svcnum %>">(change)</A>:
 % } else {
-    <BR>Catch all email:
-% }
 
-<% $email ? "<B>$email</B>" : "<I>(none)<I>" %>
-<BR><BR><A HREF="<% ${p} %>misc/whois.cgi?custnum=<%$custnum%>;svcnum=<%$svcnum%>;domain=<%$domain%>">View whois information.</A>
-<BR><BR>
-<SCRIPT>
-  function areyousure(href, message) {
-    if ( confirm(message) == true )
-      window.location.href = href;
-  }
-  function slave_areyousure() {
-    return confirm("Remove all records and slave from " + document.SlaveForm.recdata.value + "?");
-  }
-</SCRIPT>
-
-% my @records; if ( @records = $svc_domain->domain_record ) { 
-
-  <% include('/elements/table-grid.html') %>
-
-% my $bgcolor1 = '#eeeeee';
-%     my $bgcolor2 = '#ffffff';
-%     my $bgcolor = $bgcolor2;
-
-  <tr>
-    <th CLASS="grid" BGCOLOR="#cccccc">Zone</th>
-    <th CLASS="grid" BGCOLOR="#cccccc">Type</th>
-    <th CLASS="grid" BGCOLOR="#cccccc">Data</th>
-  </tr>
-
-% foreach my $domain_record ( @records ) {
-%       my $type = $domain_record->rectype eq '_mstr'
-%                    ? "(slave)"
-%                    : $domain_record->recaf. ' '. $domain_record->rectype;
-
-
-    <tr>
-      <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $domain_record->reczone %></td>
-      <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $type %></td>
-      <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $domain_record->recdata %>
-
-% unless ( $domain_record->rectype eq 'SOA'
-%          || ! $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice')
-%        ) { 
-%   ( my $recdata = $domain_record->recdata ) =~ s/"/\\'\\'/g;
-      (<A HREF="javascript:areyousure('<%$p%>misc/delete-domain_record.cgi?<%$domain_record->recnum%>', 'Delete \'<% $domain_record->reczone %> <% $type %> <% $recdata %>\' ?' )">delete</A>)
-% } 
-      </td>
-    </tr>
-
-
-%   if ( $bgcolor eq $bgcolor1 ) {
-%      $bgcolor = $bgcolor2;
-%    } else {
-%      $bgcolor = $bgcolor1;
-%    }
-
-% } 
-
-  </table>
-% } 
-
-% if ( $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice') ) {
-    <BR>
-    <FORM METHOD="POST" ACTION="<%$p%>edit/process/domain_record.cgi">
-      <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
-      <INPUT TYPE="text" NAME="reczone"> 
-      <INPUT TYPE="hidden" NAME="recaf" VALUE="IN"> IN 
-      <SELECT NAME="rectype">
-%       foreach (qw( A NS CNAME MX PTR TXT) ) { 
-          <OPTION VALUE="<%$_%>"><%$_%></OPTION>
-%       } 
-      </SELECT>
-      <INPUT TYPE="text" NAME="recdata">
-      <INPUT TYPE="submit" VALUE="Add record">
-    </FORM>
-
-    <BR><BR>
-    or
-    <BR><BR>
-
-    <FORM NAME="SlaveForm" METHOD="POST" ACTION="<%$p%>edit/process/domain_record.cgi">
-      <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
-%     if ( @records ) { 
-         Delete all records and 
-%     } 
-      Slave from nameserver IP 
-      <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
-      <INPUT TYPE="hidden" NAME="reczone" VALUE="@"> 
-      <INPUT TYPE="hidden" NAME="recaf" VALUE="IN">
-      <INPUT TYPE="hidden" NAME="rectype" VALUE="_mstr">
-      <INPUT TYPE="text" NAME="recdata">
-      <INPUT TYPE="submit" VALUE="Slave domain" onClick="return slave_areyousure()">
-    </FORM>
+  <% include("/elements/header.html",'View domain', menubar(
+       "Cancel this (unaudited) domain" =>
+         "javascript:areyousure('${p}misc/cancel-unaudited.cgi?$svcnum', 'Delete $domain and all records?')",
+     ))
+  %>
 
 % }
 
-<BR><BR>
+<% include('/elements/error.html') %>
+
+<% include('svc_domain/basics.html', $svc_domain,
+             'part_svc' => $part_svc,
+             'custnum'  => $custnum,
+          )
+%>
+<BR>
+
+<% include('svc_domain/acct_defaults.html', $svc_domain,
+             'part_svc' => $part_svc,
+          )
+%>
+<BR>
+
+<% include('svc_domain/dns.html', $svc_domain ) %>
+<BR>
+
+<% include('elements/svc_export_settings.html', $svc_domain) %>
 
 <% joblisting({'svcnum'=>$svcnum}, 1) %>
 
@@ -149,6 +44,8 @@ Service #<% $svcnum %>
 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;
@@ -159,7 +56,9 @@ my $svc_domain = qsearchs({
                  ' LEFT JOIN cust_pkg  USING ( pkgnum  ) '.
                  ' LEFT JOIN cust_main USING ( custnum ) ',
   'hashref'   => {'svcnum'=>$svcnum},
-  'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
+  'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql(
+                            'null_right' => 'View/link unlinked services'
+                          ),
 });
 die "Unknown svcnum" unless $svc_domain;
 
@@ -178,46 +77,6 @@ if ($pkgnum) {
 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 $status = 'Unknown';
-my %ops = ();
-
-my @exports = $part_svc->part_export();
-
-my $registrar;
-my $export;
-
-# Find the first export that does domain registration
-foreach (@exports) {
-       $export = $_ if $_->can('registrar');
-}
-# If we have a domain registration export, get the registrar object
-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>