diff options
Diffstat (limited to 'httemplate/view')
| -rwxr-xr-x | httemplate/view/cust_pkg.cgi | 2 | ||||
| -rwxr-xr-x | httemplate/view/svc_acct.cgi | 25 | ||||
| -rwxr-xr-x | httemplate/view/svc_acct_sm.cgi | 58 | ||||
| -rw-r--r-- | httemplate/view/svc_broadband.cgi | 143 | ||||
| -rw-r--r-- | httemplate/view/svc_external.cgi | 52 | ||||
| -rwxr-xr-x | httemplate/view/svc_forward.cgi | 9 | ||||
| -rw-r--r-- | httemplate/view/svc_www.cgi | 11 | 
7 files changed, 71 insertions, 229 deletions
| diff --git a/httemplate/view/cust_pkg.cgi b/httemplate/view/cust_pkg.cgi index 5f0e6bffc..c3880114c 100755 --- a/httemplate/view/cust_pkg.cgi +++ b/httemplate/view/cust_pkg.cgi @@ -71,7 +71,7 @@ print &ntable("#cccccc"), '<TR><TD>', &ntable("#cccccc",2),        ( $setup ? time2str("%D",$setup) : "(Not setup)" ), '</TD></TR>';  print '<TR><TD ALIGN="right">Last bill date</TD><TD BGCOLOR="#ffffff">', -      ( $cust_pkg->get('last_bill') ? time2str("%D",$cust_pkg->get('last_bill')) : " " ), +      ( $cust_pkg->last_bill ? time2str("%D",$cust_pkg->last_bill) : " " ),        '</TD></TR>'    if $cust_pkg->dbdef_table->column('last_bill'); diff --git a/httemplate/view/svc_acct.cgi b/httemplate/view/svc_acct.cgi index 58591fcb5..f92e4e240 100755 --- a/httemplate/view/svc_acct.cgi +++ b/httemplate/view/svc_acct.cgi @@ -2,6 +2,7 @@  <%  my $conf = new FS::Conf; +my $mydomain = $conf->config('domain');  my($query) = $cgi->keywords;  $query =~ /^(\d+)$/; @@ -31,7 +32,11 @@ if ( $svc_acct->domsvc ) {    die "Unknown domain" unless $svc_domain;    $domain = $svc_domain->domain;  } else { -  die "No svc_domain.svcnum record for svc_acct.domsvc: ". $cust_svc->domsvc; +  unless ( $mydomain ) { +    die "No legacy domain config file and no svc_domain.svcnum record ". +        "for svc_acct.domsvc: ". $cust_svc->domsvc; +  } +  $domain = $mydomain;  }  %> @@ -174,7 +179,7 @@ if ($svc_acct->slipip) {            : $svc_acct->slipip          ). "</TD>";    my($attribute); -  foreach $attribute ( grep /^radius_/, $svc_acct->fields ) { +  foreach $attribute ( grep /^radius_/, fields('svc_acct') ) {      #warn $attribute;      $attribute =~ /^radius_(.*)$/;      my $pattribute = $FS::raddb::attrib{$1}; @@ -182,7 +187,7 @@ if ($svc_acct->slipip) {            "<TD BGCOLOR=\"#ffffff\">". $svc_acct->getfield($attribute).            "</TD></TR>";    } -  foreach $attribute ( grep /^rc_/, $svc_acct->fields ) { +  foreach $attribute ( grep /^rc_/, fields('svc_acct') ) {      #warn $attribute;      $attribute =~ /^rc_(.*)$/;      my $pattribute = $FS::raddb::attrib{$1}; @@ -197,19 +202,7 @@ if ($svc_acct->slipip) {  print '<TR><TD ALIGN="right">RADIUS groups</TD><TD BGCOLOR="#ffffff">'.        join('<BR>', $svc_acct->radius_groups). '</TD></TR>'; -# Can this be abstracted further?  Maybe a library function like -# widget('HTML', 'view', $svc_acct) ?  It would definitely make UI  -# style management easier. - -foreach (sort { $a cmp $b } $svc_acct->virtual_fields) { -  print $svc_acct->pvf($_)->widget('HTML', 'view', $svc_acct->getfield($_)), -      "\n"; -} -%> -</TABLE></TD></TR></TABLE> -<% - -print '<BR><BR>'; +print '</TABLE></TD></TR></TABLE><BR><BR>';  print join("\n", $conf->config('svc_acct-notes') ). '<BR><BR>'.        joblisting({'svcnum'=>$svcnum}, 1). '</BODY></HTML>'; diff --git a/httemplate/view/svc_acct_sm.cgi b/httemplate/view/svc_acct_sm.cgi new file mode 100755 index 000000000..4e5acc427 --- /dev/null +++ b/httemplate/view/svc_acct_sm.cgi @@ -0,0 +1,58 @@ +<!-- mason kludge --> +<% + +my $conf = new FS::Conf; +my $mydomain = $conf->config('domain'); + +my($query) = $cgi->keywords; +$query =~ /^(\d+)$/; +my $svcnum = $1; +my $svc_acct_sm = qsearchs('svc_acct_sm',{'svcnum'=>$svcnum}); +die "Unknown svcnum" unless $svc_acct_sm; + +my $cust_svc = qsearchs('cust_svc',{'svcnum'=>$svcnum}); +my $pkgnum = $cust_svc->getfield('pkgnum'); +my($cust_pkg, $custnum); +if ($pkgnum) { +  $cust_pkg=qsearchs('cust_pkg',{'pkgnum'=>$pkgnum}); +  $custnum=$cust_pkg->getfield('custnum'); +} else { +  $cust_pkg = ''; +  $custnum = ''; +} + +my $part_svc = qsearchs('part_svc',{'svcpart'=> $cust_svc->svcpart } ) +  or die "Unkonwn svcpart"; + +print header('Mail Alias View', menubar( +  ( ( $pkgnum || $custnum ) +    ? ( "View this package (#$pkgnum)" => "${p}view/cust_pkg.cgi?$pkgnum", +        "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum", +      ) +    : ( "Cancel this (unaudited) account" => +          "${p}misc/cancel-unaudited.cgi?$svcnum" ) +  ), +  "Main menu" => $p, +)); + +my($domsvc,$domuid,$domuser) = ( +  $svc_acct_sm->domsvc, +  $svc_acct_sm->domuid, +  $svc_acct_sm->domuser, +); +my $svc = $part_svc->svc; +my $svc_domain = qsearchs('svc_domain',{'svcnum'=>$domsvc}) +  or die "Corrupted database: no svc_domain.svcnum matching domsvc $domsvc"; +my $domain = $svc_domain->domain; +my $svc_acct = qsearchs('svc_acct',{'uid'=>$domuid}) +  or die "Corrupted database: no svc_acct.uid matching domuid $domuid"; +my $username = $svc_acct->username; + +print qq!<A HREF="${p}edit/svc_acct_sm.cgi?$svcnum">Edit this information</A>!, +      "<BR>Service #$svcnum", +      "<BR>Service: <B>$svc</B>", +      qq!<BR>Mail to <B>!, ( ($domuser eq '*') ? "<I>(anything)</I>" : $domuser ) , qq!</B>\@<B>$domain</B> forwards to <B>$username</B>\@$mydomain mailbox.!, +      '</BODY></HTML>' +; + +%> diff --git a/httemplate/view/svc_broadband.cgi b/httemplate/view/svc_broadband.cgi deleted file mode 100644 index a4ec7569e..000000000 --- a/httemplate/view/svc_broadband.cgi +++ /dev/null @@ -1,143 +0,0 @@ -<!-- mason kludge --> -<% - -my($query) = $cgi->keywords; -$query =~ /^(\d+)$/; -my $svcnum = $1; -my $svc_broadband = qsearchs( 'svc_broadband', { 'svcnum' => $svcnum } ) -  or die "svc_broadband: Unknown svcnum $svcnum"; - -#false laziness w/all svc_*.cgi -my $cust_svc = qsearchs( 'cust_svc', { 'svcnum' => $svcnum } ); -my $pkgnum = $cust_svc->getfield('pkgnum'); -my($cust_pkg, $custnum); -if ($pkgnum) { -  $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } ); -  $custnum = $cust_pkg->custnum; -} else { -  $cust_pkg = ''; -  $custnum = ''; -} -#eofalse - -my $router = $svc_broadband->addr_block->router; - -if (not $router) { die "Could not lookup router for svc_broadband (svcnum $svcnum)" }; - -my ( -     $routername, -     $routernum, -     $speed_down, -     $speed_up, -     $ip_addr -   ) = ( -     $router->getfield('routername'), -     $router->getfield('routernum'), -     $svc_broadband->getfield('speed_down'), -     $svc_broadband->getfield('speed_up'), -     $svc_broadband->getfield('ip_addr') -   ); -%> - -<%=header('Broadband Service View', menubar( -  ( ( $custnum ) -    ? ( "View this package (#$pkgnum)" => "${p}view/cust_pkg.cgi?$pkgnum", -        "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum", -      )                                                                        -    : ( "Cancel this (unaudited) website" => -          "${p}misc/cancel-unaudited.cgi?$svcnum" ) -  ), -  "Main menu" => $p, -)) -%> - -<A HREF="<%=${p}%>edit/svc_broadband.cgi?<%=$svcnum%>">Edit this information</A> -<BR> -<%=ntable("#cccccc")%> -  <TR> -    <TD> -      <%=ntable("#cccccc",2)%> -        <TR> -          <TD ALIGN="right">Service number</TD> -          <TD BGCOLOR="#ffffff"><%=$svcnum%></TD> -        </TR> -        <TR> -          <TD ALIGN="right">Router</TD> -          <TD BGCOLOR="#ffffff"><%=$routernum%>: <%=$routername%></TD> -        </TR> -        <TR> -          <TD ALIGN="right">Download Speed</TD> -          <TD BGCOLOR="#ffffff"><%=$speed_down%></TD> -        </TR> -        <TR> -          <TD ALIGN="right">Upload Speed</TD> -          <TD BGCOLOR="#ffffff"><%=$speed_up%></TD> -        </TR> -        <TR> -          <TD ALIGN="right">IP Address</TD> -          <TD BGCOLOR="#ffffff"><%=$ip_addr%></TD> -        </TR> -        <TR COLSPAN="2"><TD></TD></TR> - -<% -foreach (sort { $a cmp $b } $svc_broadband->virtual_fields) { -  print $svc_broadband->pvf($_)->widget('HTML', 'view', -                                        $svc_broadband->getfield($_)), "\n"; -} - -%> -      </TABLE> -    </TD> -  </TR> -</TABLE> - -<BR> -<%=ntable("#cccccc", 2)%> -<% -  my $sb_router = qsearchs('router', { svcnum => $svcnum }); -  if ($sb_router) { -  %> -  <B>Router associated: <%=$sb_router->routername%> </B> -  <A HREF="<%=popurl(2)%>edit/router.cgi?<%=$sb_router->routernum%>"> -    (details) -  </A> -  <BR> -  <% my @addr_block; -     if (@addr_block = $sb_router->addr_block) { -     %> -  <B>Address space </B> -  <A HREF="<%=popurl(2)%>browse/addr_block.cgi"> -    (edit) -  </A> -  <BR> -  <%   print ntable("#cccccc", 1); -       foreach (@addr_block) { %> -    <TR> -      <TD><%=$_->ip_gateway%>/<%=$_->ip_netmask%></TD> -    </TR> -    <% } %> -  </TABLE> -  <% } else { %> -  <B>No address space allocated.</B> -    <% } %> -  <BR> -  <% -  } else { -%> - -<FORM METHOD="GET" ACTION="<%=popurl(2)%>edit/router.cgi"> -  <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%=$svcnum%>"> -Add router named  -  <INPUT TYPE="text" NAME="routername" SIZE="32" VALUE="Broadband router (<%=$svcnum%>)"> -  <INPUT TYPE="submit" VALUE="Add router"> -</FORM> - -<% -} -%> - -<BR> -<%=joblisting({'svcnum'=>$svcnum}, 1)%> -  </BODY> -</HTML> - diff --git a/httemplate/view/svc_external.cgi b/httemplate/view/svc_external.cgi deleted file mode 100644 index e5c977f13..000000000 --- a/httemplate/view/svc_external.cgi +++ /dev/null @@ -1,52 +0,0 @@ -<!-- mason kludge --> -<% - -my($query) = $cgi->keywords; -$query =~ /^(\d+)$/; -my $svcnum = $1; -my $svc_external = qsearchs( 'svc_external', { 'svcnum' => $svcnum } ) -  or die "svc_external: Unknown svcnum $svcnum"; - -#false laziness w/all svc_*.cgi -my $cust_svc = qsearchs( 'cust_svc', { 'svcnum' => $svcnum } ); -my $pkgnum = $cust_svc->getfield('pkgnum'); -my($cust_pkg, $custnum); -if ($pkgnum) { -  $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } ); -  $custnum = $cust_pkg->custnum; -} else { -  $cust_pkg = ''; -  $custnum = ''; -} -#eofalse - -%> - -<%= header('External Service View', menubar( -  ( ( $custnum ) -    ? ( "View this package (#$pkgnum)" => "${p}view/cust_pkg.cgi?$pkgnum", -        "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum", -      )                                                                        -    : ( "Cancel this (unaudited) external service" => -          "${p}misc/cancel-unaudited.cgi?$svcnum" ) -  ), -  "Main menu" => $p, -)) %> - -<A HREF="<%=$p%>edit/svc_external.cgi?<%=$svcnum%>">Edit this information</A><BR> -<%= ntable("#cccccc") %><TR><TD><%= ntable("#cccccc",2) %> - -<TR><TD ALIGN="right">Service number</TD> -  <TD BGCOLOR="#ffffff"><%= $svcnum %></TD></TR> -<TR><TD ALIGN="right">External ID</TD> -  <TD BGCOLOR="#ffffff"><%= $svc_external->id %></TD></TR> -<TR><TD ALIGN="right">Title</TD> -  <TD BGCOLOR="#ffffff"><%= $svc_external->title %></TD></TR> - -<% foreach (sort { $a cmp $b } $svc_external->virtual_fields) { %> -  <%= $svc_external->pvf($_)->widget('HTML', 'view', $svc_external->getfield($_)) %> -<% } %> - -</TABLE></TD></TR></TABLE> -<BR><%= joblisting({'svcnum'=>$svcnum}, 1) %> -</BODY></HTML> diff --git a/httemplate/view/svc_forward.cgi b/httemplate/view/svc_forward.cgi index 5d619de54..c8d1d6213 100755 --- a/httemplate/view/svc_forward.cgi +++ b/httemplate/view/svc_forward.cgi @@ -61,14 +61,7 @@ print qq!<A HREF="${p}edit/svc_forward.cgi?$svcnum">Edit this information</A>!.        qq!<TR><TD ALIGN="right">Email to</TD>!.          qq!<TD BGCOLOR="#ffffff">$source</TD></TR>!.        qq!<TR><TD ALIGN="right">Forwards to </TD>!. -        qq!<TD BGCOLOR="#ffffff">$destination</TD></TR>!; - -foreach (sort { $a cmp $b } $svc_forward->virtual_fields) { -  print $svc_forward->pvf($_)->widget('HTML', 'view', $svc_forward->getfield($_)), -      "\n"; -} - -print qq!  </TABLE>!. +        qq!<TD BGCOLOR="#ffffff">$destination</TD></TR></TABLE>!.        '<BR>'. joblisting({'svcnum'=>$svcnum}, 1).        '</BODY></HTML>'  ; diff --git a/httemplate/view/svc_www.cgi b/httemplate/view/svc_www.cgi index 7a716b4b8..442614491 100644 --- a/httemplate/view/svc_www.cgi +++ b/httemplate/view/svc_www.cgi @@ -47,15 +47,8 @@ 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>!; - -foreach (sort { $a cmp $b } $svc_www->virtual_fields) { -  print $svc_www->pvf($_)->widget('HTML', 'view', $svc_www->getfield($_)), -      "\n"; -} - - -print '</TABLE></TD></TR></TABLE>'. +        qq!<TD BGCOLOR="#ffffff"><A HREF="${p}view/svc_acct.cgi?$usersvc">$email</A></TD></TR>!. +      '</TABLE></TD></TR></TABLE>'.        '<BR>'. joblisting({'svcnum'=>$svcnum}, 1).        '</BODY></HTML>'  ; | 
