4 my($query) = $cgi->keywords;
7 my $svc_broadband = qsearchs( 'svc_broadband', { 'svcnum' => $svcnum } )
8 or die "svc_broadband: Unknown svcnum $svcnum";
10 #false laziness w/all svc_*.cgi
11 my $cust_svc = qsearchs( 'cust_svc', { 'svcnum' => $svcnum } );
12 my $pkgnum = $cust_svc->getfield('pkgnum');
13 my($cust_pkg, $custnum);
15 $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } );
16 $custnum = $cust_pkg->custnum;
23 my $router = $svc_broadband->addr_block->router;
25 if (not $router) { die "Could not lookup router for svc_broadband (svcnum $svcnum)" };
34 $router->getfield('routername'),
35 $router->getfield('routernum'),
36 $svc_broadband->getfield('speed_down'),
37 $svc_broadband->getfield('speed_up'),
38 $svc_broadband->getfield('ip_addr')
43 print header('Broadband Service View', menubar(
45 ? ( "View this package (#$pkgnum)" => "${p}view/cust_pkg.cgi?$pkgnum",
46 "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum",
48 : ( "Cancel this (unaudited) website" =>
49 "${p}misc/cancel-unaudited.cgi?$svcnum" )
53 qq!<A HREF="${p}edit/svc_broadband.cgi?$svcnum">Edit this information</A><BR>!.
54 ntable("#cccccc"). '<TR><TD>'. ntable("#cccccc",2).
55 qq!<TR><TD ALIGN="right">Service number</TD>!.
56 qq!<TD BGCOLOR="#ffffff">$svcnum</TD></TR>!.
57 qq!<TR><TD ALIGN="right">Router</TD>!.
58 qq!<TD BGCOLOR="#ffffff">$routernum: $routername</TD></TR>!.
59 qq!<TR><TD ALIGN="right">Download Speed</TD>!.
60 qq!<TD BGCOLOR="#ffffff">$speed_down</TD></TR>!.
61 qq!<TR><TD ALIGN="right">Upload Speed</TD>!.
62 qq!<TD BGCOLOR="#ffffff">$speed_up</TD></TR>!.
63 qq!<TR><TD ALIGN="right">IP Address</TD>!.
64 qq!<TD BGCOLOR="#ffffff">$ip_addr</TD></TR>!.
65 '</TD></TR><TR ROWSPAN="1"><TD></TD></TR>';
67 foreach (sort { $a cmp $b } $svc_broadband->virtual_fields) {
68 print $svc_broadband->pvf($_)->widget('HTML', 'view',
69 $svc_broadband->getfield($_)), "\n";
74 print '<BR>'. joblisting({'svcnum'=>$svcnum}, 1).