mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-26 11:52:59 +01:00
- Correction bug [#1670] LSformElement_select_object : Bug important lors d'une validation intermédiaire
-> Uniformisation du passage en argument du LSattr_html au moment de l'ajout d'un élement à un formulaire -> Utilisation de la méthode LSattr_html::refreshForm() au moment du LSform::setValuesFromPostData() - Correction bug [#1669] Modification d'objet : le type d'objet n'est pas chargé
This commit is contained in:
parent
a8daef44f7
commit
c6bcdfeafa
10 changed files with 96 additions and 59 deletions
|
@ -37,7 +37,7 @@ class LSattr_html_image extends LSattr_html {
|
||||||
* @retval LSformElement L'element du formulaire ajouté
|
* @retval LSformElement L'element du formulaire ajouté
|
||||||
*/
|
*/
|
||||||
function addToForm (&$form,$idForm,$data=NULL) {
|
function addToForm (&$form,$idForm,$data=NULL) {
|
||||||
$element=$form -> addElement('image', $this -> name, $this -> config['label'],$this -> config);
|
$element=$form -> addElement('image', $this -> name, $this -> config['label'],$this -> config, $this);
|
||||||
if(!$element) {
|
if(!$element) {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -37,7 +37,7 @@ class LSattr_html_password extends LSattr_html {
|
||||||
* @retval LSformElement L'element du formulaire ajouté
|
* @retval LSformElement L'element du formulaire ajouté
|
||||||
*/
|
*/
|
||||||
function addToForm (&$form,$idForm,$data=NULL) {
|
function addToForm (&$form,$idForm,$data=NULL) {
|
||||||
$element=$form -> addElement('password', $this -> name, $this -> config['label'], $this -> config);
|
$element=$form -> addElement('password', $this -> name, $this -> config['label'], $this -> config, $this);
|
||||||
if(!$element) {
|
if(!$element) {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -43,7 +43,7 @@ class LSattr_html_select_list extends LSattr_html{
|
||||||
}*/
|
}*/
|
||||||
$possible_values=$this -> getPossibleValues();
|
$possible_values=$this -> getPossibleValues();
|
||||||
$this -> config['text_possible_values'] = $possible_values;
|
$this -> config['text_possible_values'] = $possible_values;
|
||||||
$element=$form -> addElement('select', $this -> name, $this -> config['label'],$this -> config);
|
$element=$form -> addElement('select', $this -> name, $this -> config['label'],$this -> config, $this);
|
||||||
if(!$element) {
|
if(!$element) {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -53,6 +53,16 @@ class LSattr_html_select_object extends LSattr_html{
|
||||||
return $element;
|
return $element;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Effectue les tâches nécéssaires au moment du rafraichissement du formulaire
|
||||||
|
*
|
||||||
|
* Récupère un array du type array('DNs' => 'displayValue') à partir d'une
|
||||||
|
* liste de DNs.
|
||||||
|
*
|
||||||
|
* @param[in] $data mixed La valeur de l'attribut (liste de DNs)
|
||||||
|
*
|
||||||
|
* @retval mixed La valeur formatée de l'attribut (array('DNs' => 'displayValue'))
|
||||||
|
**/
|
||||||
function refreshForm($data) {
|
function refreshForm($data) {
|
||||||
return $this -> getValues($data);
|
return $this -> getValues($data);
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ class LSattr_html_text extends LSattr_html {
|
||||||
* @retval LSformElement L'element du formulaire ajouté
|
* @retval LSformElement L'element du formulaire ajouté
|
||||||
*/
|
*/
|
||||||
function addToForm (&$form,$idForm,$data=NULL) {
|
function addToForm (&$form,$idForm,$data=NULL) {
|
||||||
$element=$form -> addElement('text', $this -> name, $this -> config['label'],$this -> config);
|
$element=$form -> addElement('text', $this -> name, $this -> config['label'],$this -> config, $this);
|
||||||
if(!$element) {
|
if(!$element) {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -37,7 +37,7 @@ class LSattr_html_textarea extends LSattr_html {
|
||||||
* @retval LSformElement L'element du formulaire ajouté
|
* @retval LSformElement L'element du formulaire ajouté
|
||||||
*/
|
*/
|
||||||
function addToForm (&$form,$idForm,$data=NULL) {
|
function addToForm (&$form,$idForm,$data=NULL) {
|
||||||
$element=$form -> addElement('textarea', $this -> name, $this -> config['label'], $this -> config);
|
$element=$form -> addElement('textarea', $this -> name, $this -> config['label'], $this -> config, $this);
|
||||||
if(!$element) {
|
if(!$element) {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
$GLOBALS['LSerror'] -> addErrorCode(206,$this -> name);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -295,7 +295,7 @@ class LSform {
|
||||||
*
|
*
|
||||||
* @retval LSformElement
|
* @retval LSformElement
|
||||||
*/
|
*/
|
||||||
function addElement($type,$name,$label,$params=array(),&$attr_html=NULL) {
|
function addElement($type,$name,$label,$params=array(),&$attr_html) {
|
||||||
$elementType='LSformElement_'.$type;
|
$elementType='LSformElement_'.$type;
|
||||||
$GLOBALS['LSsession'] -> loadLSclass($elementType);
|
$GLOBALS['LSsession'] -> loadLSclass($elementType);
|
||||||
if (!class_exists($elementType)) {
|
if (!class_exists($elementType)) {
|
||||||
|
@ -413,7 +413,7 @@ class LSform {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
foreach($this -> _postData as $element => $values) {
|
foreach($this -> _postData as $element => $values) {
|
||||||
$this -> elements[$element] -> setValue($values);
|
$this -> elements[$element] -> setValueFromPostData($values);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,6 +82,30 @@ class LSformElement {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Définis la valeur de l'élément à partir des données
|
||||||
|
* envoyées en POST du formulaire
|
||||||
|
*
|
||||||
|
* Cette méthode définis la valeur de l'élément à partir des données
|
||||||
|
* envoyées en POST du formulaire.
|
||||||
|
*
|
||||||
|
* @author Benjamin Renard <brenard@easter-eggs.com>
|
||||||
|
*
|
||||||
|
* @param[in] [<b>required</b>] string or array La futur valeur de l'élément
|
||||||
|
*
|
||||||
|
* @retval boolean Retourne True
|
||||||
|
*/
|
||||||
|
function setValueFromPostData($data) {
|
||||||
|
if (!is_array($data)) {
|
||||||
|
$data=array($data);
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = $this -> attr_html -> refreshForm($data);
|
||||||
|
|
||||||
|
$this -> values = $data;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ajoute une valeur à l'élément
|
* Ajoute une valeur à l'élément
|
||||||
*
|
*
|
||||||
|
|
|
@ -160,9 +160,10 @@ class LSsession {
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($this -> ldapServer['LSobjects'] as $object) {
|
foreach ($this -> ldapServer['LSobjects'] as $object) {
|
||||||
if ( !$this -> loadLSobject($object) )
|
if ( !$this -> loadLSobject($object) ) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -280,6 +281,8 @@ class LSsession {
|
||||||
$this -> setLdapServer(0);
|
$this -> setLdapServer(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$this -> loadLSobjects();
|
||||||
|
|
||||||
// Connexion au serveur LDAP
|
// Connexion au serveur LDAP
|
||||||
if ($this -> LSldapConnect()) {
|
if ($this -> LSldapConnect()) {
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,7 @@ if($LSsession -> startLSsession()) {
|
||||||
|
|
||||||
if ((isset($dn)) && (isset($LSobject)) ) {
|
if ((isset($dn)) && (isset($LSobject)) ) {
|
||||||
// Création d'un LSobject
|
// Création d'un LSobject
|
||||||
if (class_exists($LSobject)) {
|
if ($GLOBALS['LSsession'] -> loadLSobject($LSobject)) {
|
||||||
if ( $GLOBALS['LSsession'] -> canEdit($LSobject,$dn) ) {
|
if ( $GLOBALS['LSsession'] -> canEdit($LSobject,$dn) ) {
|
||||||
$LSview_actions[] = array(
|
$LSview_actions[] = array(
|
||||||
'label' => _('Voir'),
|
'label' => _('Voir'),
|
||||||
|
@ -90,7 +90,7 @@ if($LSsession -> startLSsession()) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$GLOBALS['LSerror'] -> addErrorCode(21);
|
$GLOBALS['LSerror'] -> addErrorCode(1004,$LSobject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
Loading…
Reference in a new issue