lib/modules/kolabUser.inc
Properties
Description
Manages Kolab user accounts.Classes
kolabUser
Description
Manages Kolab user accounts.It implements the complete module interface and uses meta-data provided by the account modules for its functions.
Location and naming of modules
All LAM modules are placed in lib/modules/ and are named "
You can avoid to override many functions by using {@link get_metaData()}.
All module classes should extend the baseModule class.
Methods
__construct, build_uploadAccounts, checkSelfServiceOptions, display_html_attributes, display_html_deleteUser, getSelfServiceOptions, get_metaData, get_pdfEntries, load_Messages, manageMailrecipient, module_complete, process_attributes, process_deleteUser, save_attributes,__construct( string $scope, ) : n/a
Description
Creates a new kolabUser object.Arguments
Name | Type | Description | Default |
---|---|---|---|
$scope | string | account type (user, group, host) |
Return value
Type | Description |
---|---|
n/a | n/a |
build_uploadAccounts( array $rawAccounts, array $ids, array $partialAccounts, array $selectedModules, ) : array
Description
In this function the LDAP account is built up.Arguments
Name | Type | Description | Default |
---|---|---|---|
$rawAccounts | array | list of hash arrays (name => value) from user input |
|
$ids | array | list of IDs for column position (e.g. "posixAccount_uid" => 5) |
|
$partialAccounts | array | list of hash arrays (name => value) which are later added to LDAP |
|
$selectedModules | array | list of selected account modules |
Return value
Type | Description |
---|---|
array | list of error messages if any |
checkSelfServiceOptions( string $fields, array $attributes, boolean $passwordChangeOnly, array $readOnlyFields, ) : array
Description
Checks if all input values are correct and returns the LDAP attributes which should be changed.Return values:
messages: array of parameters to create status messages
add: array of attributes to add
del: array of attributes to remove
mod: array of attributes to modify
info: array of values with informational value (e.g. to be used later by pre/postModify actions) Calling this method does not require the existence of an enclosing {@link accountContainer}.
Arguments
Name | Type | Description | Default |
---|---|---|---|
$fields | string | input fields |
|
$attributes | array | LDAP attributes |
|
$passwordChangeOnly | boolean | indicates that the user is only allowed to change his password and no LDAP content is readable |
|
$readOnlyFields | array | list of read-only fields |
Return value
Type | Description |
---|---|
array | messages and attributes (array('messages' => array(), 'add' => array('mail' => array('test@test.com')), 'del' => array(), 'mod' => array(), 'info' => array())) |
display_html_attributes( ) : \htmlElement
Description
Returns the HTML meta data for the main account page.Return value
Type | Description |
---|---|
\htmlElement | HTML meta data |
display_html_deleteUser( ) : \htmlElement
Description
This function will create the meta HTML code to show a page to mark an account for deletion.Return value
Type | Description |
---|---|
\htmlElement | HTML meta data |
getSelfServiceOptions( array $fields, array $attributes, boolean $passwordChangeOnly, array $readOnlyFields, ) : array
Description
Returns the meta HTML code for each input field.format: array(
Arguments
Name | Type | Description | Default |
---|---|---|---|
$fields | array | list of active fields |
|
$attributes | array | attributes of LDAP account |
|
$passwordChangeOnly | boolean | indicates that the user is only allowed to change his password and no LDAP content is readable |
|
$readOnlyFields | array | list of read-only fields |
Return value
Type | Description |
---|---|
array | list of meta HTML elements (field name => htmlTableRow) |
get_metaData( ) : array
Description
Returns meta data that is interpreted by parent classReturn value
Type | Description |
---|---|
array | array with meta data |
Tags
Name | Description |
---|---|
see |
get_pdfEntries( ) : array
Description
Returns the PDF entries for this module.Return value
Type | Description |
---|---|
array | list of possible PDF entries |
load_Messages( ) : n/a
Description
This function fills the error message array with messagesReturn value
Type | Description |
---|---|
n/a | n/a |
manageMailrecipient( ) : boolean
Description
Returns if the object class "mailrecipient" is managed by this module.Return value
Type | Description |
---|---|
boolean | manage mailrecipient object class |
module_complete( ) : \true,
Description
This function returns true if all needed settings are done.Return value
Type | Description |
---|---|
\true, | if account can be saved |
process_attributes( ) : array
Description
Processes user input of the primary module page.It checks if all input values are correct and updates the associated LDAP attributes.
Return value
Type | Description |
---|---|
array | list of info/error messages |
process_deleteUser( ) : n/a
Description
Write variables into object and do some regex checksReturn value
Type | Description |
---|---|
n/a | n/a |
save_attributes( ) : array
Description
Returns a list of modifications which have to be made to the LDAP account.Return value
Type | Description |
---|---|
array | list of modifications <br>This function returns an array with 3 entries: <br>array( DN1 ('add' => array($attr), 'remove' => array($attr), 'modify' => array($attr)), DN2 .... ) <br>DN is the DN to change. It may be possible to change several DNs (e.g. create a new user and add him to some groups via attribute memberUid) <br>"add" are attributes which have to be added to LDAP entry <br>"remove" are attributes which have to be removed from LDAP entry <br>"modify" are attributes which have to been modified in LDAP entry <br>"info" are values with informational value (e.g. to be used later by pre/postModify actions) |