Esmith::FormMagick::Panels::groups
NAME
esmith::FormMagick::Panels::groups - useful panel functions
In a root terminal you can do the command below if you want to display the up-to-date content
perldoc esmith::FormMagick::Panels::groups
SYNOPSIS
use esmith::FormMagick::Panels::groups; my $panel = esmith::FormMagick::Panel::groups->new(); $panel->display();
DESCRIPTION
new();
Exactly as for esmith::FormMagick
ACCESSORS
get_cgi_param FM FIELD
Returns the named CGI parameter as a string
get_accounts_prop ITEM PROP
A simple accessor for esmith::AccountsDB::Record::prop
get_description
Get the Description for the group named in the CGI argument "GroupName"
ACTION
show_initial FM
Show the "start" page for this panel
create_group FM
Create a group
modify_group FM
Modify a group’s description and membership roster
delete_group FM
Delete a group and move all of its ibays to the ’admin’ group.
VALIDATION
validate_is_group FM GROUP
returns OK if GROUP is a current group. otherwisee returns "NOT_A_GROUP"
validate_group_naming_conflict FM GROUPNAME
Returns "OK" if this group’s name doesn’t conflict with anything Returns "PSEUDONYM_CONFLICT" if this name conflicts with a pseudonym Returns "NAME_CONFLICT" if this group name conflicts with anything else ok (undef, ’need testing for validate_naming_Conflicts’);
sub validate_group_naming_conflict { my $fm = shift; my $groupName = shift; my $account = $accounts->get($groupName); my $type; if (defined $account) { $type = $account->prop(’type’); } elsif (defined getpwnam($groupName) ││ defined getgrnam($groupName)) { $type = "system"; } else { return(’OK’); } return $fm->localise(’ACCOUNT_CONFLICT’, { group => $groupName, type => $type, }); }
validate_group FM groupname
Returns OK if the group name contains only valid characters Returns GROUP_NAMING otherwise
ok(validate_group(’’,’foo’) eq ’OK’, ’foo is a valid group); ok(vali- date_group(’’,’f&oo’) eq ’GROUP_CONTAINS_INVALD’, ’f&oo is not a valid group);
validate_group_length FM GROUPNAME
returns ’OK’ if the group name is shorter than the maximum group name length returns ’GROUP_TOO_LONG’ otherwise
validate_group_has_members FM MEMBERS
Validates that the cgi parameter MEMBERS is an array with at least one entry Returns OK if true. Otherwise, returns NO_MEMBERS
UTILITY FUNCTIONS
print_group_members FM ACCT
Takes an FM object and the name of a group. Prints out an unordered list of the group’s members.
build_cgi_params()
Builds a CGI query string, using various sensible defaults and esmith::FormMagick’s props_to_query_string() method.
genUsers MEMBERS
Takes a comma delimited list of users and returns a string of html checkboxes for all system users with the members of the group in $fm->{cgi}->parm(’groupName’)checked.
clear_params
This method clears-out the parameters used in form submission so that they are not inadvertently picked-up where they should not be.