a1f95af011b221fb105c83c42ffc00355381003d
[ldapsaisie.git] / trunk / includes / class / class.LSformElement_password.php
1 <?php
2 /*******************************************************************************
3  * Copyright (C) 2007 Easter-eggs
4  * http://ldapsaisie.labs.libre-entreprise.org
5  *
6  * Author: See AUTHORS file in top-level directory.
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License version 2
10  * as published by the Free Software Foundation.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
20
21 ******************************************************************************/
22
23
24 /**
25  * Element password d'un formulaire pour LdapSaisie
26  *
27  * Cette classe définis les éléments password des formulaires.
28  * Elle étant la classe basic LSformElement.
29  *
30  * @author Benjamin Renard <brenard@easter-eggs.com>
31  */
32
33 class LSformElement_password extends LSformElement {
34
35         /**
36    * Recupère la valeur de l'élement passée en POST
37    *
38    * Cette méthode vérifie la présence en POST de la valeur de l'élément et la récupère
39    * pour la mettre dans le tableau passer en paramètre avec en clef le nom de l'élément
40    *
41    * @param[] array Pointeur sur le tableau qui recupèrera la valeur.
42    *
43    * @retval boolean true si la valeur est présente en POST, false sinon
44    */
45   function getPostData(&$return) {
46                 // Récupère la valeur dans _POST, et les vérifie avec la fonction générale
47                 $retval = parent :: getPostData($return);
48                 // Si une valeur est recupérée
49     if ($retval) {
50                         $val = $this -> form -> ldapObject -> attrs[$this -> name] -> getValue();       
51         if( (empty($return[$this -> name][0]) ) && ( ! empty( $val ) ) ) {
52                                 unset($return[$this -> name]);
53                                 $this -> form -> _notUpdate[$this -> name] == true;
54                                 return true;
55                         }
56                 }
57     return $retval;
58   }
59
60  /*
61   * Affiche l'élément
62   * 
63   * Cette méthode affiche l'élement
64   *
65   * @retval void
66   */
67         function display(){
68                 echo "\t<tr>\n";
69                 $this -> displayLabel();
70                 // value
71                 if (!$this -> isFreeze()) {
72                         echo "\t\t<td>\n";
73                         echo "\t\t\t<ul>\n";
74
75                         if (empty($this -> values)) {
76                                 echo "\t\t\t\t<li><input type='password' name='".$this -> name."[]' \"></li>\n";
77                         }
78                         else {
79                                 foreach ($this -> values as $value) {
80                                         echo "\t\t\t\t<li><input type='password' name='".$this -> name."[]'/></li>\n";
81                                 }
82                         }
83
84                         echo "\t\t\t</ul>\n";
85                         echo "\t\t\t* "._('Modification uniquement').".";
86                         echo "\t\t</td>\n";
87                 }
88                 else {
89                         echo "\t\t<td>\n";
90                         echo "\t\t\t<ul>\n";
91
92                         if (empty($this -> values)) {
93                                 echo "\t\t\t\t<li>"._('Aucunes valeur definie')."</li>\n";
94                         }
95                         else {
96                                 foreach ($this -> values as $value) {
97                                         echo "\t\t\t\t<li>".$value."</li>\n";
98                                 }
99                         }
100
101                         echo "\t\t\t</ul>\n";
102                         echo "\t\t</td>\n";
103                 }
104                 echo "\t</tr>\n";
105         }
106             
107 }
108         
109 ?>