d2279ff007c1d770f169e3e17bbf58643321e1bf
[freeside.git] / httemplate / edit / router.cgi
1 <HTML><BODY>
2
3 <%
4
5 my $router;
6 if ( $cgi->keywords ) {
7   my($query) = $cgi->keywords;
8   $query =~ /^(\d+)$/;
9   $router = qsearchs('router', { routernum => $1 }) 
10       or print $cgi->redirect(popurl(2)."browse/router.cgi") ;
11 } else {
12   $router = new FS::router ( {
13     map { $_, scalar($cgi->param($_)) } fields('router')
14   } );
15 }
16
17 my $routernum = $router->routernum;
18 my $action = $routernum ? 'Edit' : 'Add';
19 my $hashref = $router->hashref;
20
21 print header("$action Router", menubar(
22   'Main Menu' => "$p",
23   'View all routers' => "${p}browse/router.cgi",
24 ));
25
26 if($cgi->param('error')) {
27 %> <FONT SIZE="+1" COLOR="#ff0000">Error: <%=$cgi->param('error')%></FONT>
28 <% } %>
29
30 <FORM ACTION="<%=popurl(1)%>process/router.cgi" METHOD=POST>
31   <INPUT TYPE="hidden" NAME="routernum" VALUE="<%=$routernum%>">
32     Router #<%=$routernum or "(NEW)"%>
33
34 <BR><BR>Name <INPUT TYPE="text" NAME="routername" SIZE=32 VALUE="<%=$hashref->{routername}%>">
35 <%=table() %>
36
37 <%
38 # I know, I know.  Massive false laziness with edit/svc_broadband.cgi.  But 
39 # Kristian won't let me generalize the custom field mechanism to every table in 
40 # the database, so this is what we get.  <snarl>
41 # -- MW
42
43 my @part_router_field = qsearch('part_router_field', { });
44 my %rf = map { $_->part_router_field->name, $_->value } $router->router_field;
45 foreach (sort { $a->name cmp $b->name } @part_router_field) {
46   %>
47   <TR>
48     <TD ALIGN="right"><%=$_->name%></TD>
49     <TD><%
50   if(my @opts = $_->list_values) {
51     %>  <SELECT NAME="rf_<%=$_->routerfieldpart%>" SIZE="1">
52           <%
53     foreach $opt (@opts) {
54       %>  <OPTION VALUE="<%=$opt%>"<%=($opt eq $rf{$_->name}) 
55               ? ' SELECTED' : ''%>>
56             <%=$opt%>
57           </OPTION>
58    <% } %>
59         </SELECT>
60  <% } else { %>
61         <INPUT NAME="rf_<%=$_->routerfieldpart%>"
62         VALUE="<%=$rf{$_->name}%>"
63         <%=$_->length ? 'SIZE="'.$_->length.'"' : ''%>>
64   <% } %></TD>
65   </TR>
66 <% } %>
67 </TABLE>
68
69
70
71 <BR><BR>Select the service types available on this router<BR>
72 <%
73
74 foreach my $part_svc ( qsearch('part_svc', { svcdb    => 'svc_broadband',
75                                              disabled => '' }) ) {
76   %>
77   <BR>
78   <INPUT TYPE="checkbox" NAME="svcpart_<%=$part_svc->svcpart%>"<%=
79       qsearchs('part_svc_router', { svcpart   => $part_svc->svcpart, 
80                                     routernum => $routernum } ) ? 'CHECKED' : ''%> VALUE="ON">
81   <A HREF="<%=${p}%>edit/part_svc.cgi?<%=$part_svc->svcpart%>">
82     <%=$part_svc->svcpart%>: <%=$part_svc->svc%></A>
83   <% } %>
84
85   <BR><BR><INPUT TYPE="submit" VALUE="Apply changes">
86   </FORM>
87 </BODY></HTML>
88