make svc_www.usersvc optional
authorivan <ivan>
Thu, 26 May 2005 19:16:59 +0000 (19:16 +0000)
committerivan <ivan>
Thu, 26 May 2005 19:16:59 +0000 (19:16 +0000)
FS/FS/svc_www.pm
httemplate/edit/svc_www.cgi
httemplate/view/svc_www.cgi

index 6c276a1..12d7e92 100644 (file)
@@ -204,7 +204,7 @@ sub check {
   my $error =
     $self->ut_numbern('svcnum')
 #    || $self->ut_number('recnum')
-    || $self->ut_number('usersvc')
+    || $self->ut_numbern('usersvc')
   ;
   return $error if $error;
 
@@ -238,8 +238,10 @@ sub check {
     return "Illegal recnum: ". $self->recnum;
   }
 
-  return "Unknown usersvc (svc_acct.svcnum): ". $self->usersvc
-    unless qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
+  if ( $self->usersvc ) {
+    return "Unknown usersvc0 (svc_acct.svcnum): ". $self->usersvc
+      unless qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
+  }
 
   $self->SUPER::check;
 
index 02fa64c..3cb7528 100644 (file)
@@ -196,6 +196,7 @@ foreach $_ (keys %arec) {
 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{$_}!;
index 2980f84..6c8cd6a 100644 (file)
@@ -21,9 +21,13 @@ if ($pkgnum) {
 #eofalse
 
 my $usersvc = $svc_www->usersvc;
-my $svc_acct = qsearchs('svc_acct', { 'svcnum' => $usersvc } )
-  or die "svc_www: Unknown usersvc $usersvc";
-my $email = $svc_acct->email;
+my $svc_acct = '';
+my $email = '';
+if ( $usersvc ) {
+  $svc_acct = qsearchs('svc_acct', { 'svcnum' => $usersvc } )
+    or die "svc_www: Unknown usersvc $usersvc";
+  $email = $svc_acct->email;
+}
 
 my $domain_record = qsearchs('domain_record', { 'recnum' => $svc_www->recnum } )
   or die "svc_www: Unknown recnum ". $svc_www->recnum;
@@ -46,7 +50,15 @@ print header('Website View', menubar(
       qq!<TR><TD ALIGN="right">Website name</TD>!.
         qq!<TD BGCOLOR="#ffffff"><A HREF="http://$www">$www<A></TD></TR>!.
       qq!<TR><TD ALIGN="right">Account</TD>!.
-        qq!<TD BGCOLOR="#ffffff"><A HREF="${p}view/svc_acct.cgi?$usersvc">$email</A></TD></TR>!;
+        qq!<TD BGCOLOR="#ffffff">!;
+
+if ( $usersvc ) {
+  print qq!<A HREF="${p}view/svc_acct.cgi?$usersvc">$email</A>!;
+} else {
+  print '</i>(none)</i>';
+}
+
+print '</TD></TR>';
 
 foreach (sort { $a cmp $b } $svc_www->virtual_fields) {
   print $svc_www->pvf($_)->widget('HTML', 'view', $svc_www->getfield($_)),