dns updates from Erik L: add ttl support, add check for SRV and finish allowing addit...
[freeside.git] / httemplate / view / svc_domain / dns.html
1 <SCRIPT>
2   function areyousure(href, message) {
3     if ( confirm(message) == true )
4       window.location.href = href;
5   }
6   function slave_areyousure() {
7     return confirm("Remove all records and slave from " + document.SlaveForm.recdata.value + "?");
8   }
9 </SCRIPT>
10
11 DNS records
12 % my @records; if ( @records = $svc_domain->domain_record ) { 
13
14   <% include('/elements/table-grid.html') %>
15
16 % my $bgcolor1 = '#eeeeee';
17 %     my $bgcolor2 = '#ffffff';
18 %     my $bgcolor = $bgcolor2;
19
20   <tr>
21     <th CLASS="grid" BGCOLOR="#cccccc">Zone</th>
22     <th CLASS="grid" BGCOLOR="#cccccc">Type</th>
23     <th CLASS="grid" BGCOLOR="#cccccc">Data</th>
24     <th CLASS="grid" BGCOLOR="#cccccc">TTL</th>
25   </tr>
26
27 % foreach my $domain_record ( @records ) {
28 %       my $type = $domain_record->rectype eq '_mstr'
29 %                    ? "(slave)"
30 %                    : $domain_record->recaf. ' '. $domain_record->rectype;
31
32
33     <tr>
34       <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $domain_record->reczone %></td>
35       <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $type %></td>
36       <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $domain_record->recdata %></td>
37       <td CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $domain_record->ttl %></td>
38       <td CLASS="grid" BGCOLOR="<% $bgcolor %>">
39
40 % unless ( $domain_record->rectype eq 'SOA'
41 %          || ! $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice')
42 %        ) { 
43 %   ( my $recdata = $domain_record->recdata ) =~ s/"/\\'\\'/g;
44       (<A HREF="javascript:areyousure('<%$p%>misc/delete-domain_record.cgi?<%$domain_record->recnum%>', 'Delete \'<% $domain_record->reczone %> <% $type %> <% $recdata %>\' ?' )">delete</A>)
45 % }
46       </td>
47     </tr>
48
49
50 %   if ( $bgcolor eq $bgcolor1 ) {
51 %      $bgcolor = $bgcolor2;
52 %    } else {
53 %      $bgcolor = $bgcolor1;
54 %    }
55
56 % } 
57
58   </table>
59 % } 
60
61 % if ( $FS::CurrentUser::CurrentUser->access_right('Edit domain nameservice') ) {
62     <FORM METHOD="POST" ACTION="<%$p%>edit/process/domain_record.cgi">
63       <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
64       <INPUT TYPE="text" NAME="reczone"> 
65       <INPUT TYPE="hidden" NAME="recaf" VALUE="IN"> IN 
66       <SELECT NAME="rectype">
67 %       foreach (qw( A NS CNAME MX PTR TXT) ) { 
68           <OPTION VALUE="<%$_%>"><%$_%></OPTION>
69 %       } 
70       </SELECT>
71       <INPUT TYPE="text" NAME="recdata">
72       <INPUT TYPE="text" NAME="ttl" size="6">
73       <INPUT TYPE="submit" VALUE="Add record">
74     </FORM>
75
76     <FORM NAME="SlaveForm" METHOD="POST" ACTION="<%$p%>edit/process/domain_record.cgi">
77       <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
78       Or
79 %     if ( @records ) { 
80          delete all records and 
81 %     } 
82       slave from nameserver IP 
83       <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%$svcnum%>">
84       <INPUT TYPE="hidden" NAME="reczone" VALUE="@"> 
85       <INPUT TYPE="hidden" NAME="recaf" VALUE="IN">
86       <INPUT TYPE="hidden" NAME="rectype" VALUE="_mstr">
87       <INPUT TYPE="text" NAME="recdata">
88       <INPUT TYPE="submit" VALUE="Slave domain" onClick="return slave_areyousure()">
89     </FORM>
90
91 % }
92
93 <%init>
94
95 my($svc_domain, %opt) = @_;
96 my $svcnum = $svc_domain->svcnum;
97
98 </%init>
99