Manages DDNS entries. 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 ".inc".
E.g. if you create a new module and its class name is "qmail" then the filename would be "qmail.inc".
The class name of a module must contain only a-z, A-Z, 0-9, -, and _.
You can avoid to override many functions by using {@link get_metaData()}.
All module classes should extend the baseModule class.
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
check_if_ddns_is_enable(
)
:
n/a
Description
This function check if ddns is enable.
Return value
Type
Description
n/a
n/a
display_html_attributes(
)
:
\htmlElement
Description
Returns the HTML meta data for the main account page.
Return value
Type
Description
\htmlElement
HTML meta data
getDNSServer(
)
:
String
Description
Returns the IP of the DNS server.
Return value
Type
Description
String
IP address
getUpdateKey(
)
:
String
Description
Returns the key for DNS updates.
Return value
Type
Description
String
key
getZoneNames(
)
:
array
Description
Returns the zone names.
Return value
Type
Description
array
zone names array(zone, reverse zone)
get_metaData(
)
:
array
Description
Returns meta data that is interpreted by parent class.
Return value
Type
Description
array
array with meta data
get_pdfEntries(
)
:
array
Description
Returns the PDF entries for this module.
Return value
Type
Description
array
list of possible PDF entries
isDynDNSActivated(
)
:
boolean
Description
Returns if DDNS is activated.
Return value
Type
Description
boolean
activated
isIgnoreClientUpdates(
)
:
boolean
Description
Returns if client updates are ignored.
Return value
Type
Description
boolean
ignore client updates
load_Messages(
)
:
n/a
Description
This function fills the message array.
Return value
Type
Description
n/a
n/a
load_attributes(
array
$attributes,
)
:
n/a
Description
This function loads the LDAP attributes when an account should be loaded. Calling this method requires the existence of an enclosing {@link accountContainer}.
By default this method loads the object classes and accounts which are specified in {@link getManagedObjectClasses()}
and {@link getManagedAttributes()}.
Arguments
Name
Type
Description
Default
$attributes
array
array like the array returned by get_ldap_attributes(dn of account) but without count indices
Return value
Type
Description
n/a
n/a
module_complete(
)
:
boolean
Description
This functions returns true if all needed settings are done.
Return value
Type
Description
boolean
true if LDAP operation can be done
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_attributes_account(
)
:
n/a
Description
Process for account
Return value
Type
Description
n/a
n/a
process_attributes_mainSettings(
)
:
n/a
Description
Process for mainsettings
Return 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)