fix FK upgrade for pkg_referral: remove records referencing non-existant customer...
[freeside.git] / httemplate / browse / radius_group.html
index e2ac563..98e81ab 100644 (file)
@@ -1,18 +1,31 @@
 <& elements/browse.html,
-                 'title'       => 'RADIUS Groups',
-                 'name'        => 'RADIUS Groups',
-                 'menubar'     => [ 'Add a RADIUS Group' => $p.'edit/radius_group.html', ],
-                 'query'       => { 'table' => 'radius_group' },
-                 'count_query' => 'SELECT COUNT(*) FROM radius_group',
-                 'header'      => [ '#', 'RADIUS Group', 'Description' ],
-                 'fields'      => [ 'groupnum',
-                                    'groupname',
-                                    'description',
-                                  ],
-                 'links'       => [ [ $p.'edit/radius_group.html?', 'groupnum' ],
-                                    '',
-                                    '',
-                                  ],
+  'title'       => 'RADIUS Groups',
+  'name'        => 'RADIUS Groups',
+  'menubar'     => [ 'Add a RADIUS Group' => $p.'edit/radius_group.html', ],
+  'query'       => { 'table' => 'radius_group' },
+  'count_query' => 'SELECT COUNT(*) FROM radius_group',
+  'header'      => [ '#', 'RADIUS Group', 'Description', 'Priority',
+                     'Check', 'Reply', 'Speed' ],
+  'fields'      => [ 'groupnum',
+                     'groupname',
+                     'description',
+                     'priority',
+                     $check_attr, $reply_attr,
+                     sub { 
+                      my $group = shift;
+                      if ($group->speed_down and $group->speed_up) {
+                        return join (' / ', $group->speed_down, $group->speed_up);
+                      } elsif ( $group->speed_down ) {
+                        return $group->speed_down . ' down';
+                      } elsif ( $group->speed_up ) {
+                        return $group->speed_up . ' up';
+                      }
+                      '';
+                     },
+                   ],
+  'align'       => 'lllcllc',
+  'links'       => [ $link, $link, '', '', '', '', ''
+                   ],
 &>
 <%init>
 
@@ -21,4 +34,18 @@ my $curuser = $FS::CurrentUser::CurrentUser;
 die "access denied"
   unless $curuser->access_right('Configuration');
 
+my $attr_sub = sub {
+  my $type = shift;
+  my $radius_group = shift;
+  [ map { [ { data => join(' ', $_->attrname, $_->op, $_->value) } ] }
+    grep {$_->attrtype eq $type} 
+      $radius_group->radius_attr
+  ];
+};
+
+my $check_attr = sub { &$attr_sub('C', @_) };
+my $reply_attr = sub { &$attr_sub('R', @_) };
+
+my $link = [ $p.'edit/radius_group.html?', 'groupnum' ];
+
 </%init>