add regular header/footer to svc_www view and edit
[freeside.git] / httemplate / edit / svc_www.cgi
index ad69d4d..56dd602 100644 (file)
@@ -1,50 +1,53 @@
-<!-- mason kludge -->
-%
-%
 %my $conf = new FS::Conf;
 %
-%my( $svcnum,  $pkgnum, $svcpart, $part_svc, $svc_www );
+%my( $svcnum,  $pkgnum, $svcpart, $part_svc, $svc_www, $config );
+%
 %if ( $cgi->param('error') ) {
+%
 %  $svc_www = new FS::svc_www ( {
 %    map { $_, scalar($cgi->param($_)) } fields('svc_www')
 %  } );
 %  $svcnum = $svc_www->svcnum;
 %  $pkgnum = $cgi->param('pkgnum');
 %  $svcpart = $cgi->param('svcpart');
+%  $config = $cgi->param('config');
 %  $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
 %  die "No part_svc entry!" unless $part_svc;
-%} else {
-%  my($query) = $cgi->keywords;
-%  if ( $query =~ /^(\d+)$/ ) { #editing
-%    $svcnum=$1;
-%    $svc_www=qsearchs('svc_www',{'svcnum'=>$svcnum})
-%      or die "Unknown (svc_www) svcnum!";
 %
-%    my($cust_svc)=qsearchs('cust_svc',{'svcnum'=>$svcnum})
-%      or die "Unknown (cust_svc) svcnum!";
+%} elsif ( $cgi->param('pkgnum') && $cgi->param('svcpart') ) { #adding
 %
-%    $pkgnum=$cust_svc->pkgnum;
-%    $svcpart=$cust_svc->svcpart;
-%  
-%    $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
-%    die "No part_svc entry!" unless $part_svc;
+%  $cgi->param('pkgnum') =~ /^(\d+)$/ or die 'unparsable pkgnum';
+%  $pkgnum = $1;
+%  $cgi->param('svcpart') =~ /^(\d+)$/ or die 'unparsable svcpart';
+%  $svcpart = $1;
 %
-%  } else { #adding
+%  $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
+%  die "No part_svc entry!" unless $part_svc;
 %
-%    foreach $_ (split(/-/,$query)) { #get & untaint pkgnum & svcpart
-%      $pkgnum=$1 if /^pkgnum(\d+)$/;
-%      $svcpart=$1 if /^svcpart(\d+)$/;
-%    }
-%    $svc_www = new FS::svc_www { svcpart => $svcpart };
+%  $svc_www = new FS::svc_www { svcpart => $svcpart };
 %
-%    $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
-%    die "No part_svc entry!" unless $part_svc;
+%  $svcnum='';
 %
-%    $svcnum='';
+%  $svc_www->set_default_and_fixed;
 %
-%    $svc_www->set_default_and_fixed;
+%} else { #editing
+%
+%  my($query) = $cgi->keywords;
+%  $query =~ /^(\d+)$/ or die "unparsable svcnum";
+%  $svcnum=$1;
+%  $svc_www=qsearchs('svc_www',{'svcnum'=>$svcnum})
+%    or die "Unknown (svc_www) svcnum!";
+%
+%  my($cust_svc)=qsearchs('cust_svc',{'svcnum'=>$svcnum})
+%    or die "Unknown (cust_svc) svcnum!";
+%
+%  $pkgnum=$cust_svc->pkgnum;
+%  $svcpart=$cust_svc->svcpart;
+%  $config=$cgi->escapeHTML($svc_www->config);
+%  
+%  $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
+%  die "No part_svc entry!" unless $part_svc;
 %
-%  }
 %}
 %my $action = $svc_www->svcnum ? 'Edit' : 'Add';
 %
 %
 %
 %my $p1 = popurl(1);
-%print header("Web Hosting $action", '');
-%
+
+<% include("/elements/header.html", "Web Hosting $action", '') %>
+
 %print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: !, $cgi->param('error'),
 %      "</FONT>"
 %  if $cgi->param('error');
 %}
 %print "</SELECT></TD></TR>";
 %
-%print '<TR><TD ALIGN="right">Username</TD><TD><SELECT NAME="usersvc" SIZE=1>';
-%print '<OPTION VALUE="">(none)';
-%foreach $_ (keys %svc_acct) {
-%  print "<OPTION", ($_ eq $usersvc) ? " SELECTED" : "",
-%        qq! VALUE="$_">$svc_acct{$_}!;
+%if ( $part_svc->part_svc_column('usersvc')->columnflag ne 'F'
+%     || $part_svc->part_svc_column('usersvc')->columnvalue =~ /^\s*$/) {
+%  print '<TR><TD ALIGN="right">Username</TD><TD><SELECT NAME="usersvc" SIZE=1>';
+%  print '<OPTION VALUE="">(none)';
+%  foreach $_ (keys %svc_acct) {
+%    print "<OPTION", ($_ eq $usersvc) ? " SELECTED" : "",
+%          qq! VALUE="$_">$svc_acct{$_}!;
+%  }
+%  print "</SELECT></TD></TR>";
+%}
+%
+%if ( $part_svc->part_svc_column('config')->columnflag ne 'F' &&
+%     $FS::CurrentUser::CurrentUser->access_right('Edit www config') ) {
+%  print '<TR><TD ALIGN="right">Config lines</TD><TD>';
+%  print qq!<TEXTAREA NAME="config" rows="15" cols="80">$config</TEXTAREA></TD></TR>!
+%}else{
+%  print qq!<INPUT TYPE="hidden" NAME="config" VALUE="$config">!;
 %}
-%print "</SELECT></TD></TR>";
 %
 %foreach my $field ($svc_www->virtual_fields) {
 %  if ( $part_svc->part_svc_column($field)->columnflag ne 'F' ) {
 %
 %print '</TABLE><BR><INPUT TYPE="submit" VALUE="Submit">';
 %
-%print <<END;
-%
-%    </FORM>
-%  </BODY>
-%</HTML>
-%END
-%
 
+</FORM>
+
+<% include('/elements/footer.html') %>