added self service fields
This commit is contained in:
parent
240e9a1990
commit
a70d24afce
|
@ -665,6 +665,16 @@ class baseModule {
|
||||||
else return array();
|
else return array();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a list of possible input fields and their descriptions
|
||||||
|
* Format: array(<field identifier> => <field description>)
|
||||||
|
*
|
||||||
|
* @return array fields
|
||||||
|
*/
|
||||||
|
function getSelfServiceFields() {
|
||||||
|
if (isset($this->meta['selfServiceFieldSettings']) && is_array($this->meta['selfServiceFieldSettings'])) return $this->meta['selfServiceFieldSettings'];
|
||||||
|
else return array();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -108,6 +108,11 @@ class inetOrgPerson extends baseModule {
|
||||||
'sn', 'userPassword', 'description');
|
'sn', 'userPassword', 'description');
|
||||||
// self service search attributes
|
// self service search attributes
|
||||||
$return['selfServiceSearchAttributes'] = array('uid', 'mail', 'cn', 'surname', 'givenName');
|
$return['selfServiceSearchAttributes'] = array('uid', 'mail', 'cn', 'surname', 'givenName');
|
||||||
|
// self service field settings
|
||||||
|
$return['selfServiceFieldSettings'] = array('firstName' => _('First name'), 'lastName' => _('Last name'),
|
||||||
|
'mail' => _('eMail address'), 'telephoneNumber' => _('Telephone number'), 'mobile' => _('Mobile number'),
|
||||||
|
'faxNumber' => _('Fax number'), 'street' => _('Street'), 'postalAddress' => _('Postal address'),
|
||||||
|
'postalCode' => _('Postal code'), 'postOfficeBox' => _('Post office box'));
|
||||||
// profile elements
|
// profile elements
|
||||||
$return['profile_options'] = array(
|
$return['profile_options'] = array(
|
||||||
array(
|
array(
|
||||||
|
|
|
@ -54,6 +54,24 @@ function getSelfServiceSearchAttributes($scope) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the field settings for the self service.
|
||||||
|
*
|
||||||
|
* @param string $scope account type
|
||||||
|
* @return array settings
|
||||||
|
*/
|
||||||
|
function getSelfServiceFieldSettings($scope) {
|
||||||
|
$return = array();
|
||||||
|
$modules = getAvailableModules($scope);
|
||||||
|
for ($i = 0; $i < sizeof($modules); $i++) {
|
||||||
|
$m = new $modules[$i]($scope);
|
||||||
|
$settings = $m->getSelfServiceFields();
|
||||||
|
if (sizeof($settings) > 0) $return[$modules[$i]] = $settings;
|
||||||
|
}
|
||||||
|
return $return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a list of all available self service profiles (without .conf)
|
* Returns a list of all available self service profiles (without .conf)
|
||||||
*
|
*
|
||||||
|
@ -87,7 +105,6 @@ function loadSelfServiceProfile($name, $scope) {
|
||||||
if (!eregi("^[0-9a-z _-]+$", $name)) return false;
|
if (!eregi("^[0-9a-z _-]+$", $name)) return false;
|
||||||
if (!eregi("^[0-9a-z _-]+$", $scope)) return false;
|
if (!eregi("^[0-9a-z _-]+$", $scope)) return false;
|
||||||
$profile = new selfServiceProfile();
|
$profile = new selfServiceProfile();
|
||||||
$settings = new selfServiceProfile();
|
|
||||||
$file = substr(__FILE__, 0, strlen(__FILE__) - 20) . "/config/selfService/" . $name . "." . $scope;
|
$file = substr(__FILE__, 0, strlen(__FILE__) - 20) . "/config/selfService/" . $name . "." . $scope;
|
||||||
if (is_file($file) === True) {
|
if (is_file($file) === True) {
|
||||||
$file = @fopen($file, "r");
|
$file = @fopen($file, "r");
|
||||||
|
@ -167,6 +184,15 @@ class selfServiceProfile {
|
||||||
/** describing text for search attribute */
|
/** describing text for search attribute */
|
||||||
var $loginAttributeText;
|
var $loginAttributeText;
|
||||||
|
|
||||||
|
/** describing text for self service main page */
|
||||||
|
var $mainPageText;
|
||||||
|
|
||||||
|
/** input fields
|
||||||
|
* Format: array(<module> => array(array('name' => <group name>, 'fields' => array(<field1>, <field2>))))
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
var $inputFields;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
|
@ -181,6 +207,8 @@ class selfServiceProfile {
|
||||||
$this->searchAttribute = "uid";
|
$this->searchAttribute = "uid";
|
||||||
$this->loginCaption = "Welcome to LAM self service. Please enter your user name and password.";
|
$this->loginCaption = "Welcome to LAM self service. Please enter your user name and password.";
|
||||||
$this->loginAttributeText = "User name";
|
$this->loginAttributeText = "User name";
|
||||||
|
$this->mainPageText = "<h1>LAM self service</h1>\nHere you can change your personal settings.";
|
||||||
|
$this->inputFields = array();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue