Changes

From SME Server
Jump to navigationJump to search
Created page with "=== NAME === esmith::FormMagick::Panels::useraccounts - useful panel functions<br /> In a root terminal you can do the command below if you want to display the up-to-date con..."
=== NAME ===
esmith::FormMagick::Panels::useraccounts - useful panel functions<br />

In a root terminal you can do the command below if you want to display the up-to-date content
perldoc esmith::FormMagick::Panels::useraccounts
=== SYNOPSIS ===
use esmith::FormMagick::Panels::useraccount;

my $panel = esmith::FormMagick::Panel::useraccount->new(); $panel->display();

=== DESCRIPTION ===
new();

Exactly as for esmith::FormMagick

=== HTML GENERATION ROUTINES ===
Routines for generating chunks of HTML needed by the panel.

==== print_user_table ====

Prints out the user table on the front page.

==== print_acctName_field ====

This subroutine is used to generate the Account name field on the form in the case of "create user", or to make it a plain uneditable string in the case of "modify user".

==== print_groupMemberships_field() ====

Builds a list of groups for the create/modify user screen.

==== print_page_description($self, "reset│lock│remove") ====

Generates the page description for the the somewhat similar Reset Password, Lock Account and Remove Account pages.

=== ROUTINES FOR FILLING IN FIELD DEFAULT VALUES ===
==== get_ldap_value($field) ====

This subroutine generates the default field value on the form using the parameter specified.

In this case, the default field values come from LDAP/directory settings.

If a CGI parameter has been passed that contains an account name, we assume that a value has already been set, as we’re modifying a user, and use that value instead of a default.

=== VALIDATION ROUTINES ===
==== pseudonym_clash ====

Validation routine to check whether a the first/last names clash with existing pseudonyms.

Note that it won’t be considered a "clash" if there is an existing pseudonym which belongs to the same user -- it’s only a clash if the generated pseudonyms are the same but the usernames aren’t.

==== emailforward() ====
Validation routine for email forwarding

==== verifyPasswords() ====

Returns an error message if the two new passwords input don’t match.

=== CREATING AND MODIFYING USERS ===
==== handle_user_accounts() ====

This is the routine called by the "Save" button on the create/modify page. It checks the "action" param and calls either create_user() or modify_user() as appropriate.

==== print_save_or_add_button() ====

==== modify_admin($self) ====

==== modify_user($self) ====

==== create_user ====

Adds a user to the accounts db.

==== set_groups ====
Sets a user’s groups in the accounts db. This is called as part of the create_user() routine.

=== REMOVING ACCOUNTS ===
==== remove_account() ====

=== RESETTING THE PASSWORD ===
==== reset_password() ====

=== LOCKING AN ACCOUNT ===
==== lock_account() ====

=== MISCELLANEOUS ROUTINES ===
==== build_user_cgi_params() ====
Builds a CGI query string based on user data, using various sensible defaults and esmith::FormMagick’s props_to_query_string() method.

==== validate_acctName ====

Checks that the name supplied does not contain any unacceptable chars. Returns OK on success or a localised error message otherwise.
==== validate_account_length FM ACCOUNTNAME ====

returns ’OK’ if the account name is shorter than the maximum account name length returns ’ACCOUNT_TOO_LONG’ otherwise

==== validate_acctName_conflict ====
Returns ’OK’ if the account name doesn’t yet exist. Returns a localised error otherwise.
==== check_password ====

Validates the password using the desired strength

==== get_prop ITEM PROP ====

A simple accessor for esmith::ConfigDB::Record::prop

System Password manipulation routines
XXX FIXME - These should be merged with the useraccouts versions

==== system_password_compare ====

==== system_valid_password ====

Throw an error if the password doesn’t consist solely of one or more printable characters.

==== system_check_password ====

Validates the password using the desired strength

==== authenticate_password ====

Compares the password with the current system password
==== system_change_password ====

If everything has been validated, properly, go ahead and set the new password.
[[Category:Developer]]
[[Category:SME Server Development Framework]]
[[Category:Development Tools]]

Navigation menu