much easier to understand listing of credits/payments that get split up, closes:...
[freeside.git] / httemplate / edit / router.cgi
index d2279ff..a573c65 100755 (executable)
@@ -16,72 +16,61 @@ if ( $cgi->keywords ) {
 
 my $routernum = $router->routernum;
 my $action = $routernum ? 'Edit' : 'Add';
-my $hashref = $router->hashref;
 
 print header("$action Router", menubar(
   'Main Menu' => "$p",
   'View all routers' => "${p}browse/router.cgi",
 ));
 
+my $p3 = popurl(3);
+
 if($cgi->param('error')) {
 %> <FONT SIZE="+1" COLOR="#ff0000">Error: <%=$cgi->param('error')%></FONT>
 <% } %>
 
 <FORM ACTION="<%=popurl(1)%>process/router.cgi" METHOD=POST>
+  <INPUT TYPE="hidden" NAME="table" VALUE="router">
+  <INPUT TYPE="hidden" NAME="redirect_ok" VALUE="<%=$p3%>/browse/router.cgi">
+  <INPUT TYPE="hidden" NAME="redirect_error" VALUE="<%=$p3%>/edit/router.cgi">
   <INPUT TYPE="hidden" NAME="routernum" VALUE="<%=$routernum%>">
+  <INPUT TYPE="hidden" NAME="svcnum" VALUE="<%=$router->svcnum%>">
     Router #<%=$routernum or "(NEW)"%>
 
-<BR><BR>Name <INPUT TYPE="text" NAME="routername" SIZE=32 VALUE="<%=$hashref->{routername}%>">
+<BR><BR>Name <INPUT TYPE="text" NAME="routername" SIZE=32 VALUE="<%=$router->routername%>">
+
+<BR><BR>
+Custom fields:
+<BR>
 <%=table() %>
 
 <%
-# I know, I know.  Massive false laziness with edit/svc_broadband.cgi.  But 
-# Kristian won't let me generalize the custom field mechanism to every table in 
-# the database, so this is what we get.  <snarl>
-# -- MW
-
-my @part_router_field = qsearch('part_router_field', { });
-my %rf = map { $_->part_router_field->name, $_->value } $router->router_field;
-foreach (sort { $a->name cmp $b->name } @part_router_field) {
-  %>
-  <TR>
-    <TD ALIGN="right"><%=$_->name%></TD>
-    <TD><%
-  if(my @opts = $_->list_values) {
-    %>  <SELECT NAME="rf_<%=$_->routerfieldpart%>" SIZE="1">
-          <%
-    foreach $opt (@opts) {
-      %>  <OPTION VALUE="<%=$opt%>"<%=($opt eq $rf{$_->name}) 
-              ? ' SELECTED' : ''%>>
-            <%=$opt%>
-         </OPTION>
-   <% } %>
-       </SELECT>
- <% } else { %>
-        <INPUT NAME="rf_<%=$_->routerfieldpart%>"
-        VALUE="<%=$rf{$_->name}%>"
-        <%=$_->length ? 'SIZE="'.$_->length.'"' : ''%>>
-  <% } %></TD>
-  </TR>
-<% } %>
+foreach my $field ($router->virtual_fields) {
+  print $router->pvf($field)->widget('HTML', 'edit', 
+        $router->getfield($field));
+}
+%>
 </TABLE>
 
 
-
+<%
+unless ($router->svcnum) {
+%>
 <BR><BR>Select the service types available on this router<BR>
 <%
 
-foreach my $part_svc ( qsearch('part_svc', { svcdb    => 'svc_broadband',
-                                             disabled => '' }) ) {
+  foreach my $part_svc ( qsearch('part_svc', { svcdb    => 'svc_broadband',
+                                               disabled => '' }) ) {
   %>
   <BR>
   <INPUT TYPE="checkbox" NAME="svcpart_<%=$part_svc->svcpart%>"<%=
       qsearchs('part_svc_router', { svcpart   => $part_svc->svcpart, 
-                                    routernum => $routernum } ) ? 'CHECKED' : ''%> VALUE="ON">
+                                    routernum => $routernum } ) ? ' CHECKED' : ''%> VALUE="ON">
   <A HREF="<%=${p}%>edit/part_svc.cgi?<%=$part_svc->svcpart%>">
     <%=$part_svc->svcpart%>: <%=$part_svc->svc%></A>
   <% } %>
 
+<% } %>
+
   <BR><BR><INPUT TYPE="submit" VALUE="Apply changes">
   </FORM>
 </BODY></HTML>