LSattr_html :: select_list / select_object : add parameter to handle onlyAccessible LSsearch parameter

This commit is contained in:
Benjamin Renard 2017-03-23 16:29:33 +01:00
parent dc3c367f2f
commit 7aa96ae60c
5 changed files with 25 additions and 4 deletions

View file

@ -19,7 +19,8 @@
'values_attribute' => '[Nom de l'attribut clé multi-valeur]',
'filter' => '[Filtre de recherche des LSobject]',
'scope' => '[Scope de la recherche]',
'basedn' => '[Basedn de la recherche]'
'basedn' => '[Basedn de la recherche]',
'onlyAccessible' => '[Booléen]'
),
array (
'label' => '[LSformat du nom du groupe de valeurs]',
@ -118,6 +119,13 @@
<simpara>Basedn falcultatif de la recherche des LSobjets.</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>onlyAccessible</term>
<listitem>
<simpara>Booléen falcultatif définissant si seul les LSobjets auxquels l'utilisateur connecté à accès doivent être considérés comme sélectionnables (Faux par défault).</simpara>
</listitem>
</varlistentry>
</variablelist>
</listitem>

View file

@ -11,7 +11,8 @@
selectable_object => array (
'object_type' => '[Type d'LSobject selectionnable]',
'display_name_format' => '[LSformat du nom d'affichage des LSobjects]',
'value_attribute' => '[Nom de l'attribut clé des LSobjects]'
'value_attribute' => '[Nom de l'attribut clé des LSobjects]',
'onlyAccessible' => '[Booléen]'
),
'ordered' => [Booléen],
'sort' => [Booléen],
@ -62,6 +63,13 @@
lors de la sélection des objets.</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>onlyAccessible</term>
<listitem>
<simpara>Booléen falcultatif définissant si seul les LSobjets auxquels l'utilisateur connecté à accès doivent être considérés comme sélectionnables (Faux par défault).</simpara>
</listitem>
</varlistentry>
</variablelist>
</listitem>

View file

@ -170,6 +170,7 @@ class LSattr_html_select_list extends LSattr_html{
'basedn' => (isset($conf['basedn'])?$conf['basedn']:null),
'scope' => (isset($conf['scope'])?$conf['scope']:null),
'displayFormat' => (isset($conf['display_name_format'])?$conf['display_name_format']:null),
'onlyAccessible' => (isset($conf['onlyAccessible'])?$conf['onlyAccessible']:False),
);
if (isset($conf['value_attribute']) && $conf['value_attribute']!='dn') {

View file

@ -165,7 +165,9 @@ class LSattr_html_select_object extends LSattr_html{
foreach($values as $val) {
if (!empty($val)) {
$filter=Net_LDAP2_Filter::create($conf['value_attribute'],'equals',$val);
$listobj = $obj -> listObjectsName($filter,NULL,array(),$conf['display_name_format']);
$sparams=array();
$sparams['onlyAccessible'] = (isset($conf['onlyAccessible'])?$conf['onlyAccessible']:False);
$listobj = $obj -> listObjectsName($filter,NULL,$sparams,$conf['display_name_format']);
if (count($listobj)==1) {
foreach($listobj as $dn => $name) {
$DNs[]=$dn;

View file

@ -179,7 +179,9 @@ class LSformElement_select_object extends LSformElement {
if (is_array($this -> params['html_options']['selectable_object'])) {
if (LSsession :: loadLSobject($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_name_format'],false,true,$this -> params['html_options']['selectable_object']['filter']);
$sparams = array();
$sparams['onlyAccessible'] = (isset($this -> params['html_options']['selectable_object']['onlyAccessible'])?$this -> params['html_options']['selectable_object']['onlyAccessible']:FALSE);
$ret = $obj -> getSelectArray($pattern,NULL,$this -> params['html_options']['selectable_object']['display_name_format'],false,true,(isset($this -> params['html_options']['selectable_object']['filter'])?$this -> params['html_options']['selectable_object']['filter']:NULL),$sparams);
if (is_array($ret)) {
return $ret;
}