Fix reference allocation in variable
[ldapsaisie.git] / public_html / includes / class / class.LSattr_ldap.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  * Base d'un type d'attribut Ldap
25  *
26  * @author Benjamin Renard <brenard@easter-eggs.com>
27  */
28 class LSattr_ldap {
29   
30   var $name;
31   var $config;
32   var $attribute;
33
34   /**         
35    * Constructeur
36    *
37    * Cette methode construit l'objet et définis la configuration.
38    *
39    * @author Benjamin Renard <brenard@easter-eggs.com>
40    *
41    * @param[in] $name string Nom de l'attribut ldap
42    * @param[in] $config array Configuration de l'objet
43    * @param[in] &$attribute LSattribute L'objet LSattribut parent
44    *
45    * @retval boolean Retourne true.
46    */
47   function LSattr_ldap ($name,$config,&$attribute) {
48     $this -> name = $name;
49     $this -> config = $config;
50     $this -> attribute =& $attribute;
51     return true;
52   }
53
54   /**
55    * Retourne la valeur de l'attribut après traitement lié à son type ldap
56    *
57    * @param[in] $data mixed La valeur de l'attribut
58    *
59    * @retval mixed La valeur traitée de l'attribut
60    */
61   function getUpdateData($data) {
62     return $data;
63   }
64  
65   /**
66    * Retourne la valeur d'affichage de l'attribut après traitement lié à son type ldap
67    *
68    * @param[in] $data mixed La valeur de l'attribut
69    *
70    * @retval mixed La valeur d'affichage de l'attribut
71    */
72   function getDisplayValue($data) {
73     return $data;
74   }
75  
76   /**
77    * Retourne vrai si la valeur passé en paramètre n'était pas la même que la 
78    * valeur passer au formulaire
79    *
80    * @param[in] $data mixed La valeur a tester
81    *
82    * @retval boolean True uniquement si la valeur passer en paramètre différe de l'actuelle
83    */
84   function isUpdated($data) {
85     $data=$this -> getUpdateData($data);
86     if ($this -> attribute -> data != $data) {
87       return true;
88     }
89     return;
90   }
91 }
92
93 ?>