X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fbrowse%2Fradius_group.html;h=98e81ab86d50ff55f90ec8c5d03233622cd631d9;hb=0549def83bcba56e53482ea0f33472e18b215649;hp=e2ac56363470148b71d4b883c5590470a62a4a76;hpb=9f2280fbce022ab9bcfc46fe94483730b0aeb0f8;p=freeside.git diff --git a/httemplate/browse/radius_group.html b/httemplate/browse/radius_group.html index e2ac56363..98e81ab86 100644 --- a/httemplate/browse/radius_group.html +++ b/httemplate/browse/radius_group.html @@ -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' ]; +