mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-12-18 22:43:47 +01:00
- LSattr_html_select_object && LSattr_html_select_list :
-> Mofication du paramètre de configuration 'display_attribute' en 'display_name_format' -> Ajout de commentaires
This commit is contained in:
parent
8cc6d37f8a
commit
a7a165651d
5 changed files with 42 additions and 16 deletions
|
@ -103,8 +103,8 @@ $GLOBALS['LSobjects']['LSeegroup'] = array (
|
||||||
'html_options' => array(
|
'html_options' => array(
|
||||||
'selectable_object' => array(
|
'selectable_object' => array(
|
||||||
'object_type' => 'LSeepeople', // Nom de l'objet à lister
|
'object_type' => 'LSeepeople', // Nom de l'objet à lister
|
||||||
'display_attribute' => '%{cn} (%{uidNumber})', // Spécifie le attributs à lister pour le choix,
|
'display_name_format' => '%{cn} (%{uidNumber})', // Spécifie le attributs à lister pour le choix,
|
||||||
// si non définie => utilisation du 'select_display_attrs'
|
// si non définie => utilisation du 'display_name_format'
|
||||||
// de la définition de l'objet
|
// de la définition de l'objet
|
||||||
|
|
||||||
'value_attribute' => 'dn', // Spécifie le attributs dont la valeur sera retournée par
|
'value_attribute' => 'dn', // Spécifie le attributs dont la valeur sera retournée par
|
||||||
|
@ -157,7 +157,7 @@ $GLOBALS['LSobjects']['LSeegroup'] = array (
|
||||||
'html_options' => array (
|
'html_options' => array (
|
||||||
'selectable_object' => array(
|
'selectable_object' => array(
|
||||||
'object_type' => 'LSeepeople',
|
'object_type' => 'LSeepeople',
|
||||||
'value_attribute' => '%{dn}'
|
'value_attribute' => 'dn'
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'validation' => array (
|
'validation' => array (
|
||||||
|
|
|
@ -272,8 +272,8 @@ $GLOBALS['LSobjects']['LSeepeople'] = array (
|
||||||
'possible_values' => array(
|
'possible_values' => array(
|
||||||
'OTHER_OBJECT' => array(
|
'OTHER_OBJECT' => array(
|
||||||
'object_type' => 'LSeegroup', // Nom de l'objet à lister
|
'object_type' => 'LSeegroup', // Nom de l'objet à lister
|
||||||
'display_attribute' => '%{cn} (%{gidNumber})', // Spécifie le attributs à lister pour le choix,
|
'display_name_format' => '%{cn} (%{gidNumber})', // Spécifie le attributs à lister pour le choix,
|
||||||
// si non définie => utilisation du 'select_display_attrs'
|
// si non définie => utilisation du 'display_name_format'
|
||||||
// de la définition de l'objet
|
// de la définition de l'objet
|
||||||
|
|
||||||
'value_attribute' => 'gidNumber', // Spécifie le attributs dont la valeur sera retournée par
|
'value_attribute' => 'gidNumber', // Spécifie le attributs dont la valeur sera retournée par
|
||||||
|
|
|
@ -23,6 +23,21 @@
|
||||||
/**
|
/**
|
||||||
* Type d'attribut HTML select_list
|
* Type d'attribut HTML select_list
|
||||||
*
|
*
|
||||||
|
* 'html_options' => array (
|
||||||
|
* 'possible_values' => array (
|
||||||
|
* '[LSformat de la valeur clé]' => '[LSformat du nom d'affichage]',
|
||||||
|
* ...
|
||||||
|
* 'OTHER_OBJECT' => array (
|
||||||
|
* 'object_type' => '[Type d'LSobject]',
|
||||||
|
* 'display_name_format' => '[LSformat du nom d'affichage des LSobjects]',
|
||||||
|
* 'value_attribute' => '[Nom de l'attribut clé]',
|
||||||
|
* 'filter' => '[Filtre de recherche des LSobject]',
|
||||||
|
* 'scope' => '[Scope de la recherche]',
|
||||||
|
* 'basedn' => '[Basedn de la recherche]'
|
||||||
|
* )
|
||||||
|
* )
|
||||||
|
* ),
|
||||||
|
*
|
||||||
* @author Benjamin Renard <brenard@easter-eggs.com>
|
* @author Benjamin Renard <brenard@easter-eggs.com>
|
||||||
*/
|
*/
|
||||||
class LSattr_html_select_list extends LSattr_html{
|
class LSattr_html_select_list extends LSattr_html{
|
||||||
|
@ -72,7 +87,7 @@ class LSattr_html_select_list extends LSattr_html{
|
||||||
*/
|
*/
|
||||||
function getPossibleValues() {
|
function getPossibleValues() {
|
||||||
$retInfos = array();
|
$retInfos = array();
|
||||||
if (isset($this -> config['html_options']['possible_values'])) {
|
if (is_array($this -> config['html_options']['possible_values'])) {
|
||||||
foreach($this -> config['html_options']['possible_values'] as $val_name => $val) {
|
foreach($this -> config['html_options']['possible_values'] as $val_name => $val) {
|
||||||
if($val_name=='OTHER_OBJECT') {
|
if($val_name=='OTHER_OBJECT') {
|
||||||
if ((!isset($val['object_type'])) || (!isset($val['value_attribute']))) {
|
if ((!isset($val['object_type'])) || (!isset($val['value_attribute']))) {
|
||||||
|
@ -84,22 +99,22 @@ class LSattr_html_select_list extends LSattr_html{
|
||||||
}
|
}
|
||||||
$obj = new $val['object_type']();
|
$obj = new $val['object_type']();
|
||||||
if($val['scope']) {
|
if($val['scope']) {
|
||||||
$param=array('scope' => $this -> config['html_options']['possible_values']['scope']);
|
$param=array('scope' => $val['scope']);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$param=array();
|
$param=array();
|
||||||
}
|
}
|
||||||
|
|
||||||
$param['attributes'] = getFieldInFormat($val['display_attribute']);
|
$param['attributes'] = getFieldInFormat($val['display_name_format']);
|
||||||
|
|
||||||
if ($val['value_attribute']!='dn') {
|
if ($val['value_attribute']!='dn') {
|
||||||
$param['attributes'][] = $val['value_attribute'];
|
$param['attributes'][] = $val['value_attribute'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$list = $obj -> search($val['filter'],$this -> config['html_options']['possible_values']['basedn'],$param);
|
$list = $obj -> search($val['filter'],$val['basedn'],$param);
|
||||||
if(($val['value_attribute']=='dn')||($val['value_attribute']=='%{dn}')) {
|
if(($val['value_attribute']=='dn')||($val['value_attribute']=='%{dn}')) {
|
||||||
for($i=0;$i<count($list);$i++) {
|
for($i=0;$i<count($list);$i++) {
|
||||||
$retInfos[$list[$i]['dn']]=getFData($val['display_attribute'],$list[$i]['attrs']);
|
$retInfos[$list[$i]['dn']]=getFData($val['display_name_format'],$list[$i]['attrs']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -108,7 +123,7 @@ class LSattr_html_select_list extends LSattr_html{
|
||||||
if(is_array($key)) {
|
if(is_array($key)) {
|
||||||
$key = $key[0];
|
$key = $key[0];
|
||||||
}
|
}
|
||||||
$retInfos[$key]=getFData($val['display_attribute'],$list[$i]['attrs']);
|
$retInfos[$key]=getFData($val['display_name_format'],$list[$i]['attrs']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -143,7 +143,7 @@ class LSattr_html_select_object extends LSattr_html{
|
||||||
$obj = new $conf['object_type']();
|
$obj = new $conf['object_type']();
|
||||||
foreach($DNs as $dn) {
|
foreach($DNs as $dn) {
|
||||||
if($obj -> loadData($dn)) {
|
if($obj -> loadData($dn)) {
|
||||||
$retInfos[$dn] = $obj -> getDisplayName($conf['display_attribute']);
|
$retInfos[$dn] = $obj -> getDisplayName($conf['display_name_format']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,7 @@ class LSattr_html_select_object extends LSattr_html{
|
||||||
if ($filter!='') {
|
if ($filter!='') {
|
||||||
$filter='(|'.$filter.')';
|
$filter='(|'.$filter.')';
|
||||||
$obj = new $conf['object_type']();
|
$obj = new $conf['object_type']();
|
||||||
$listobj = $obj -> listObjectsName($filter,NULL,array(),$conf['display_attribute']);
|
$listobj = $obj -> listObjectsName($filter,NULL,array(),$conf['display_name_format']);
|
||||||
foreach($listobj as $dn => $name) {
|
foreach($listobj as $dn => $name) {
|
||||||
$DNs[]=$dn;
|
$DNs[]=$dn;
|
||||||
$retInfos[$dn] = $name;
|
$retInfos[$dn] = $name;
|
||||||
|
|
|
@ -24,8 +24,19 @@
|
||||||
/**
|
/**
|
||||||
* Element select d'un formulaire pour LdapSaisie
|
* Element select d'un formulaire pour LdapSaisie
|
||||||
*
|
*
|
||||||
* Cette classe définis les éléments select des formulaires.
|
* Cette classe définis les éléments select des formulaires.
|
||||||
* Elle étant la classe basic LSformElement.
|
* Elle étant la classe basic LSformElement.
|
||||||
|
*
|
||||||
|
* Options HTML :
|
||||||
|
* // *************************************
|
||||||
|
* 'html_options' => array (
|
||||||
|
* selectable_object => array (
|
||||||
|
* 'object_type' => '[Type d'LSobject selectionnable]',
|
||||||
|
* 'display_name_format' => '[LSformat du nom d'affichage des LSobjects]',
|
||||||
|
* 'value_attribute' => '[LSformat de la valeur clé référant à un LSobject donnée]'
|
||||||
|
* )
|
||||||
|
* ),
|
||||||
|
* // *************************************
|
||||||
*
|
*
|
||||||
* @author Benjamin Renard <brenard@easter-eggs.com>
|
* @author Benjamin Renard <brenard@easter-eggs.com>
|
||||||
*/
|
*/
|
||||||
|
@ -144,7 +155,7 @@ class LSformElement_select_object extends LSformElement {
|
||||||
if (is_array($this -> params['html_options']['selectable_object'])) {
|
if (is_array($this -> params['html_options']['selectable_object'])) {
|
||||||
if (LSsession :: loadLSobject($this -> params['html_options']['selectable_object']['object_type'])) {
|
if (LSsession :: loadLSobject($this -> params['html_options']['selectable_object']['object_type'])) {
|
||||||
$obj = new $this -> params['html_options']['selectable_object']['object_type']();
|
$obj = new $this -> params['html_options']['selectable_object']['object_type']();
|
||||||
$ret = $obj -> getSelectArray($pattern,NULL,$this -> params['html_options']['selectable_object']['display_attribute']);
|
$ret = $obj -> getSelectArray($pattern,NULL,$this -> params['html_options']['selectable_object']['display_name_format']);
|
||||||
if (is_array($ret)) {
|
if (is_array($ret)) {
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue