summaryrefslogtreecommitdiff
path: root/httemplate/edit/radius_group.html
diff options
context:
space:
mode:
authormark <mark>2011-11-23 18:42:50 +0000
committermark <mark>2011-11-23 18:42:50 +0000
commitd838063ab25f047e88c3e5ae16f77fc4f3481ce9 (patch)
treee4f533d73a30b62522c4e50df9c142a10737e5d2 /httemplate/edit/radius_group.html
parentd0008add75bbb6e2ec49e6d40f28965eac0bcfb6 (diff)
RADIUS group attributes, #15017
Diffstat (limited to 'httemplate/edit/radius_group.html')
-rw-r--r--httemplate/edit/radius_group.html58
1 files changed, 50 insertions, 8 deletions
diff --git a/httemplate/edit/radius_group.html b/httemplate/edit/radius_group.html
index 80e17ed83..c9bf52596 100644
--- a/httemplate/edit/radius_group.html
+++ b/httemplate/edit/radius_group.html
@@ -1,16 +1,58 @@
<& elements/edit.html,
- 'name' => 'RADIUS Group',
- 'table' => 'radius_group',
- 'labels' => {
- 'groupnum' => 'Group',
- 'groupname' => 'RADIUS Group',
- 'description' => 'Description',
- },
- 'viewall_dir' => 'browse',
+ 'name' => 'RADIUS Group',
+ 'table' => 'radius_group',
+ 'labels' => {
+ 'groupnum' => 'Group',
+ 'groupname' => 'RADIUS Group',
+ 'description' => 'Description',
+ 'attrnum' => 'Attribute',
+ 'priority' => 'Priority',
+ },
+ 'viewall_dir' => 'browse',
+ 'fields' => [
+ { 'field' => 'groupname',
+ 'type' => 'text',
+ 'size' => 20,
+ 'colspan' => 6, # just to not interfere with radius_attr columns
+ },
+ { 'field' => 'description',
+ 'type' => 'text',
+ 'size' => 40,
+ 'colspan' => 6,
+ },
+ { 'field' => 'priority',
+ 'type' => 'text',
+ 'size' => 2,
+ 'colspan' => 6, # just to not interfere with radius_attr columns
+ },
+ {
+ 'field' => 'attrnum',
+ 'type' => 'radius_attr',
+ 'o2m_table' => 'radius_attr',
+ 'm2_label' => 'Attribute',
+ 'm2_error_callback' => $m2_error_callback,
+ },
+ ],
+ #debug => 1
&>
<%init>
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+my $m2_error_callback = sub { # reconstruct the list
+ my ($cgi, $object) = @_;
+
+ warn Dumper({$cgi->Vars});
+ my @fields = qw(attrname attrtype op value);
+ map {
+ my $k = $_;
+ next if !length($cgi->param($k.'_attrname'));
+ new FS::radius_attr {
+ 'groupnum' => $object->groupnum,
+ 'attrnum' => scalar( $cgi->param($k) ),
+ map { $_ => scalar( $cgi->param($k.'_'.$_) ) } @fields,
+ };
+ } grep /^attrnum\d+$/, ($cgi->param);
+};
</%init>