Subversion Repositories Applications.bazar

Rev

Rev 82 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 82 Rev 86
1
<?php
1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
3
// +------------------------------------------------------------------------------------------------------+
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
10
// | License as published by the Free Software Foundation; either                                         |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | Lesser General Public License for more details.                                                      |
16
// | Lesser General Public License for more details.                                                      |
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | License along with this library; if not, write to the Free Software                                  |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: bazar.fonct.formulaire.php,v 1.16 2006-01-24 14:11:44 alexandre_tb Exp $
22
// CVS : $Id: bazar.fonct.formulaire.php,v 1.17 2006-01-30 10:27:03 florian Exp $
23
/**
23
/**
24
* Formulaire
24
* Formulaire
25
*
25
*
26
* Les fonctions de mise en page des formulaire
26
* Les fonctions de mise en page des formulaire
27
*
27
*
28
*@package bazar
28
*@package bazar
29
//Auteur original :
29
//Auteur original :
30
*@author        Florian SCHMITT <florian@ecole-et-nature.org>
30
*@author        Florian SCHMITT <florian@ecole-et-nature.org>
31
//Autres auteurs :
31
//Autres auteurs :
32
*@author        Aleandre GRANIER <alexandre@tela-botanica.org>
32
*@author        Aleandre GRANIER <alexandre@tela-botanica.org>
33
*@copyright     Tela-Botanica 2000-2004
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.16 $ $Date: 2006-01-24 14:11:44 $
34
*@version       $Revision: 1.17 $ $Date: 2006-01-30 10:27:03 $
35
// +------------------------------------------------------------------------------------------------------+
35
// +------------------------------------------------------------------------------------------------------+
36
*/
36
*/
37
 
37
 
38
require_once 'bazar.fonct.formulaire.controles.php';
38
require_once 'bazar.fonct.formulaire.controles.php';
39
 
39
 
40
//-------------------FONCTIONS DE MISE EN PAGE DES FORMULAIRES
40
//-------------------FONCTIONS DE MISE EN PAGE DES FORMULAIRES
41
 
41
 
42
/** liste() - Ajoute un élément de type liste au formulaire
42
/** liste() - Ajoute un élément de type liste au formulaire
43
*
43
*
44
* @param    mixed   L'objet QuickForm du formulaire
44
* @param    mixed   L'objet QuickForm du formulaire
45
* @param    int     identifiant de la liste sur bazar_liste
45
* @param    int     identifiant de la liste sur bazar_liste
46
* @param    string  label à afficher dans le formulaire
46
* @param    string  label à afficher dans le formulaire
47
* @param    string  première restriction de la taille des champs du formulaire
47
* @param    string  première restriction de la taille des champs du formulaire
48
* @param    string  deuxième restriction de la taille des champs du formulaire
48
* @param    string  deuxième restriction de la taille des champs du formulaire
49
* @param    string  valeur par défaut du formulaire
49
* @param    string  valeur par défaut du formulaire
50
* @param    string  table source pour les valeurs de la liste
50
* @param    string  table source pour les valeurs de la liste
51
* @param    string  ce champs est il obligatoire? (required)
51
* @param    string  ce champs est il obligatoire? (required)
52
* @return   void
52
* @return   void
53
*/
53
*/
54
function liste(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
54
function liste(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
55
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
55
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
56
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
56
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
57
	if (DB::isError ($resultat)) {
57
	if (DB::isError ($resultat)) {
58
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
58
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
59
	}
59
	}
60
	while ($ligne = $resultat->fetchRow()) {
60
	while ($ligne = $resultat->fetchRow()) {
61
		$select[$ligne[1]] = $ligne[2] ;
61
		$select[$ligne[1]] = $ligne[2] ;		
62
	}
62
	}
63
	$option=array('style'=>'width: '.$limite1.'px;');
63
	$option=array('style'=>'width: '.$limite1.'px;');
64
	require_once 'HTML/QuickForm/select.php';
64
	require_once 'HTML/QuickForm/select.php';
65
	$select= new HTML_QuickForm_select('liste'.$id_liste, constant($label), $select, $option);
65
	$select= new HTML_QuickForm_select('liste'.$id_liste, constant($label), $select, $option);
66
	$select->setSize($limite2); 
66
	$select->setSize($limite2); 
67
	$select->setMultiple(0);
67
	$select->setMultiple(0);
68
	$select->setSelected($defaut);
68
	$select->setSelected($defaut);
69
	$formtemplate->addElement($select) ;
69
	$formtemplate->addElement($select) ;
70
	if (isset($obligatoire)and($obligatoire==1)) {
70
	if (isset($obligatoire)and($obligatoire==1)) {
71
		$formtemplate->addRule('liste'.$id_liste, BAZ_CHOISIR_OBLIGATOIRE.' '.constant($label) , 'nonzero', '', 'client') ;
71
		$formtemplate->addRule('liste'.$id_liste, BAZ_CHOISIR_OBLIGATOIRE.' '.constant($label) , 'nonzero', '', 'client') ;
72
		$formtemplate->addRule('liste'.$id_liste, constant($label.'_REQUIS'), 'required', '', 'client') ;}
72
		$formtemplate->addRule('liste'.$id_liste, constant($label.'_REQUIS'), 'required', '', 'client') ;}
73
}
73
}
74
 
74
 
75
 
75
 
76
/** checkbox() - Ajoute un élément de type checkbox au formulaire
76
/** checkbox() - Ajoute un élément de type checkbox au formulaire
77
*
77
*
78
* @param    mixed   L'objet QuickForm du formulaire
78
* @param    mixed   L'objet QuickForm du formulaire
79
* @param    int     identifiant de la liste sur bazar_liste
79
* @param    int     identifiant de la liste sur bazar_liste
80
* @param    string  label à afficher dans le formulaire
80
* @param    string  label à afficher dans le formulaire
81
* @param    string  première restriction de la taille des champs du formulaire
81
* @param    string  première restriction de la taille des champs du formulaire
82
* @param    string  deuxième restriction de la taille des champs du formulaire
82
* @param    string  deuxième restriction de la taille des champs du formulaire
83
* @param    string  valeur par défaut du formulaire
83
* @param    string  valeur par défaut du formulaire
84
* @param    string  table source pour les valeurs de la liste
84
* @param    string  table source pour les valeurs de la liste
85
* @param    string  ce champs est il obligatoire? (required)
85
* @param    string  ce champs est il obligatoire? (required)
86
* @return   void
86
* @return   void
87
*/
87
*/
88
function checkbox(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
88
function checkbox(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
89
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
89
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
90
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
90
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
91
	if (DB::isError ($resultat)) {
91
	if (DB::isError ($resultat)) {
92
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
92
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
93
	}		
93
	}		
94
	require_once 'HTML/QuickForm/checkbox.php' ;
94
	require_once 'HTML/QuickForm/checkbox.php' ;
95
	$i=0;
95
	$i=0;
96
	if (isset($defaut)) $tab=split(', ', $defaut);
96
	if (isset($defaut)) $tab=split(', ', $defaut);
97
	while ($ligne = $resultat->fetchRow()) {
97
	while ($ligne = $resultat->fetchRow()) {
98
		if ($i==0) $labelchkbox=constant($label) ; else $labelchkbox='&nbsp;' ;
98
		if ($i==0) $labelchkbox=constant($label) ; else $labelchkbox='&nbsp;' ;
99
		$checkbox[$i]= & HTML_Quickform::createElement('checkbox', $ligne[1], $labelchkbox, $ligne[2], 
99
		$checkbox[$i]= & HTML_Quickform::createElement('checkbox', $ligne[1], $labelchkbox, $ligne[2], 
100
						array ('style'=>'display:inline;margin-left:2px;')) ;		
100
						array ('style'=>'display:inline;margin-left:2px;')) ;		
101
		foreach ($tab as $val) {
101
		foreach ($tab as $val) {
102
            if ($ligne[1]==$val) $checkbox[$i]->setChecked(1);			        
102
            if ($ligne[1]==$val) $checkbox[$i]->setChecked(1);			        
103
        }			
103
        }			
104
		$i++;
104
		$i++;
105
	}
105
	}
106
	$formtemplate->addGroup($checkbox, 'checkbox'.$id_liste, constant($label), '<br />'."\n");
106
	$formtemplate->addGroup($checkbox, 'checkbox'.$id_liste, constant($label), '<br />'."\n");
107
	if (isset($obligatoire)and($obligatoire==1)) {
107
	if (isset($obligatoire)and($obligatoire==1)) {
108
		//TODO: marches pas...
-
 
109
		$formtemplate->addGroupRule('checkbox'.$id_liste, constant($label.'_REQUIS'), 'required', null, 1, 'client');
108
		$formtemplate->addGroupRule('checkbox'.$id_liste, constant($label.'_REQUIS'), 'required', null, 1, 'client');
110
	}
109
	}
111
}
110
}
112
 
111
 
113
 
112
 
114
/** listedatedeb() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de début
113
/** listedatedeb() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de début
115
*
114
*
116
* @param    mixed   L'objet QuickForm du formulaire
115
* @param    mixed   L'objet QuickForm du formulaire
117
* @param    string  nom de la table dans la base de donnée
116
* @param    string  nom de la table dans la base de donnée
118
* @param    string  label à afficher dans le formulaire
117
* @param    string  label à afficher dans le formulaire
119
* @param    string  première restriction de la taille des champs du formulaire
118
* @param    string  première restriction de la taille des champs du formulaire
120
* @param    string  deuxième restriction de la taille des champs du formulaire
119
* @param    string  deuxième restriction de la taille des champs du formulaire
121
* @param    string  valeur par défaut du formulaire
120
* @param    string  valeur par défaut du formulaire
122
* @param    string  table source pour les valeurs de la date
121
* @param    string  table source pour les valeurs de la date
123
* @param    string  ce champs est il obligatoire? (required)
122
* @param    string  ce champs est il obligatoire? (required)
124
* @return   void
123
* @return   void
125
*/
124
*/
126
function listedatedeb(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
125
function listedatedeb(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
127
	$optiondate = array('language' => BAZ_LANGUE_PAR_DEFAUT,
126
	$optiondate = array('language' => BAZ_LANGUE_PAR_DEFAUT,
128
						'minYear' => date('Y'),
127
						'minYear' => date('Y'),
129
						'maxYear'=> (date('Y')+10),
128
						'maxYear'=> (date('Y')+10),
130
						'format' => 'd m Y',
129
						'format' => 'd m Y',
131
						'addEmptyOption' => true,
130
						'addEmptyOption' => true,
132
						);
131
						);
133
	$formtemplate->addElement('date', $nom_bdd, constant($label), $optiondate) ;
132
	$formtemplate->addElement('date', $nom_bdd, constant($label), $optiondate) ;
134
	//gestion des valeurs par défaut (date du jour)	
133
	//gestion des valeurs par défaut (date du jour)	
135
	if (isset($defaut)) $formtemplate->setDefaults(array($nom_bdd => $defaut));
134
	if (isset($defaut)) $formtemplate->setDefaults(array($nom_bdd => $defaut));
136
	else {
135
	else {
137
		$defauts=array($nom_bdd => array ('d'=>date('d'), 'm'=>date('m'), 'Y'=>date('Y')));
136
		$defauts=array($nom_bdd => array ('d'=>date('d'), 'm'=>date('m'), 'Y'=>date('Y')));
138
		$formtemplate->setDefaults($defauts);
137
		$formtemplate->setDefaults($defauts);
139
	}
138
	}
140
	//gestion du champs obligatoire
139
	//gestion du champs obligatoire
141
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
140
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
142
}
141
}
143
 
142
 
144
/** listedatefin() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de fin
143
/** listedatefin() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de fin
145
*
144
*
146
* @param    mixed   L'objet QuickForm du formulaire
145
* @param    mixed   L'objet QuickForm du formulaire
147
* @param    string  nom de la table dans la base de donnée
146
* @param    string  nom de la table dans la base de donnée
148
* @param    string  label à afficher dans le formulaire
147
* @param    string  label à afficher dans le formulaire
149
* @param    string  première restriction de la taille des champs du formulaire
148
* @param    string  première restriction de la taille des champs du formulaire
150
* @param    string  deuxième restriction de la taille des champs du formulaire
149
* @param    string  deuxième restriction de la taille des champs du formulaire
151
* @param    string  valeur par défaut du formulaire
150
* @param    string  valeur par défaut du formulaire
152
* @param    string  table source pour les valeurs de la date
151
* @param    string  table source pour les valeurs de la date
153
* @param    string  ce champs est il obligatoire? (required)
152
* @param    string  ce champs est il obligatoire? (required)
154
* @return   void
153
* @return   void
155
*/
154
*/
156
function listedatefin(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
155
function listedatefin(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
157
	listedatedeb($formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire);
156
	listedatedeb($formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire);
158
}
157
}
159
 
158
 
160
 
159
 
161
/** texte() - Ajoute un élément de type texte au formulaire
160
/** texte() - Ajoute un élément de type texte au formulaire
162
*
161
*
163
* @param    mixed   L'objet QuickForm du formulaire
162
* @param    mixed   L'objet QuickForm du formulaire
164
* @param    string  nom de la table dans la base de donnée
163
* @param    string  nom de la table dans la base de donnée
165
* @param    string  label à afficher dans le formulaire
164
* @param    string  label à afficher dans le formulaire
166
* @param    string  première restriction de la taille des champs du formulaire
165
* @param    string  première restriction de la taille des champs du formulaire
167
* @param    string  deuxième restriction de la taille des champs du formulaire
166
* @param    string  deuxième restriction de la taille des champs du formulaire
168
* @param    string  valeur par défaut du formulaire
167
* @param    string  valeur par défaut du formulaire
169
* @param    string  table source pour les valeurs du texte (inutile)
168
* @param    string  table source pour les valeurs du texte (inutile)
170
* @param    string  ce champs est il obligatoire? (required)
169
* @param    string  ce champs est il obligatoire? (required)
171
* @return   void
170
* @return   void
172
*/
171
*/
173
function texte(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
172
function texte(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
174
	$option=array('size'=>$limite1,'maxlength'=>$limite2);
173
	$option=array('size'=>$limite1,'maxlength'=>$limite2);
175
	$formtemplate->addElement('text', $nom_bdd, constant($label), $option) ;
174
	$formtemplate->addElement('text', $nom_bdd, constant($label), $option) ;
176
	//gestion des valeurs par défaut
175
	//gestion des valeurs par défaut
177
	$defauts=array($nom_bdd=>$defaut);
176
	$defauts=array($nom_bdd=>$defaut);
178
	$formtemplate->setDefaults($defauts);
177
	$formtemplate->setDefaults($defauts);
179
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
178
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
180
	//gestion du champs obligatoire
179
	//gestion du champs obligatoire
181
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
180
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
182
}
181
}
183
 
182
 
184
 
183
 
185
/** textelong() - Ajoute un élément de type textearea au formulaire
184
/** textelong() - Ajoute un élément de type textearea au formulaire
186
*
185
*
187
* @param    mixed   L'objet QuickForm du formulaire
186
* @param    mixed   L'objet QuickForm du formulaire
188
* @param    string  nom de la table dans la base de donnée
187
* @param    string  nom de la table dans la base de donnée
189
* @param    string  label à afficher dans le formulaire
188
* @param    string  label à afficher dans le formulaire
190
* @param    string  taille des colonnes de l'élément
189
* @param    string  taille des colonnes de l'élément
191
* @param    string  taille des lignes de l'élément
190
* @param    string  taille des lignes de l'élément
192
* @param    string  valeur par défaut du formulaire
191
* @param    string  valeur par défaut du formulaire
193
* @param    string  table source pour les valeurs du texte (inutile)
192
* @param    string  table source pour les valeurs du texte (inutile)
194
* @param    string  ce champs est il obligatoire? (required)
193
* @param    string  ce champs est il obligatoire? (required)
195
* @return   void
194
* @return   void
196
*/
195
*/
197
function textelong(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
196
function textelong(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
198
	$formtexte= new HTML_QuickForm_textarea($nom_bdd, constant($label), array('style'=>'white-space: normal;'));
197
	$formtexte= new HTML_QuickForm_textarea($nom_bdd, constant($label), array('style'=>'white-space: normal;'));
199
	$formtexte->setCols($limite1);
198
	$formtexte->setCols($limite1);
200
	$formtexte->setRows($limite2);
199
	$formtexte->setRows($limite2);
201
	$formtemplate->addElement($formtexte) ;
200
	$formtemplate->addElement($formtexte) ;
202
	//gestion des valeurs par défaut
201
	//gestion des valeurs par défaut
203
	$defauts=array($nom_bdd=>$defaut);
202
	$defauts=array($nom_bdd=>$defaut);
204
	$formtemplate->setDefaults($defauts);
203
	$formtemplate->setDefaults($defauts);
205
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
204
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
206
	//gestion du champs obligatoire
205
	//gestion du champs obligatoire
207
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
206
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, constant($label.'_REQUIS'), 'required', '', 'client') ;}
208
}
207
}
-
 
208
 
-
 
209
/** url() - Ajoute un élément de type url internet au formulaire
-
 
210
*
-
 
211
* @param    mixed   L'objet QuickForm du formulaire
-
 
212
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
-
 
213
* @param    string  label à afficher dans le formulaire
-
 
214
* @param    string  taille des colonnes de l'élément
-
 
215
* @param    string  taille des lignes de l'élément
-
 
216
* @param    string  valeur par défaut du formulaire
-
 
217
* @param    string  table source pour les valeurs du texte (inutile)
-
 
218
* @param    string  ce champs est il obligatoire? (required)
-
 
219
* @return   void
-
 
220
*/
-
 
221
function url(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
-
 
222
	$html.='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
-
 
223
	$formtemplate->addElement('html', $html) ;
-
 
224
	$formtemplate->addElement('text', 'url_lien'.$nom_bdd, BAZ_URL_LIEN) ;
-
 
225
	$formtemplate->addElement('text', 'url_texte'.$nom_bdd, BAZ_URL_TEXTE) ;
-
 
226
	//gestion du champs obligatoire
-
 
227
	if (isset($obligatoire)and($obligatoire==1)) {
-
 
228
		$formtemplate->addRule('url_lien'.$nom_bdd, BAZ_URL_LIEN_REQUIS, 'required', '', 'client') ;
-
 
229
		$formtemplate->addRule('url_texte'.$nom_bdd, BAZ_URL_TEXTE_REQUIS, 'required', '', 'client') ;
-
 
230
	}
-
 
231
}		
-
 
232
 
-
 
233
/** fichier() - Ajoute un élément de type fichier au formulaire
-
 
234
*
-
 
235
* @param    mixed   L'objet QuickForm du formulaire
-
 
236
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
-
 
237
* @param    string  label à afficher dans le formulaire
-
 
238
* @param    string  taille des colonnes de l'élément
-
 
239
* @param    string  taille des lignes de l'élément
-
 
240
* @param    string  valeur par défaut du formulaire
-
 
241
* @param    string  table source pour les valeurs du texte (inutile)
-
 
242
* @param    string  ce champs est il obligatoire? (required)
-
 
243
* @return   void
-
 
244
*/
-
 
245
function fichier(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
-
 
246
	$html.='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
-
 
247
	$formtemplate->addElement('html', $html) ;
-
 
248
	$formtemplate->addElement('text', 'texte_fichier'.$nom_bdd, BAZ_FICHIER_DESCRIPTION) ;
-
 
249
	$formtemplate->addElement('file', 'fichier'.$nom_bdd, BAZ_FICHIER_JOINT) ;
-
 
250
	$formtemplate->addRule('image', BAZ_IMAGE_VALIDE_REQUIS, '', '', 'client') ; //a completer pour checker l'image
-
 
251
	$formtemplate->setMaxFileSize($limite1);
-
 
252
	//gestion du champs obligatoire
-
 
253
	if (isset($obligatoire)and($obligatoire==1)) {
-
 
254
		$formtemplate->addRule('texte_fichier'.$nom_bdd, BAZ_FICHIER_LABEL_REQUIS, 'required', '', 'client') ;
-
 
255
		$formtemplate->addRule('fichier'.$nom_bdd, BAZ_FICHIER_JOINT_REQUIS, 'required', '', 'client') ;
-
 
256
	}
-
 
257
}		
-
 
258
 
-
 
259
/** image() - Ajoute un élément de type image au formulaire
-
 
260
*
-
 
261
* @param    mixed   L'objet QuickForm du formulaire
-
 
262
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
-
 
263
* @param    string  label à afficher dans le formulaire
-
 
264
* @param    string  taille maximum du fichier colonnes de l'élément
-
 
265
* @param    string  taille des lignes de l'élément
-
 
266
* @param    string  valeur par défaut du formulaire
-
 
267
* @param    string  table source pour les valeurs du texte (inutile)
-
 
268
* @param    string  ce champs est il obligatoire? (required)
-
 
269
* @return   void
-
 
270
*/
-
 
271
function image(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
-
 
272
	$html.='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
-
 
273
	$formtemplate->addElement('html', $html) ;
-
 
274
	$formtemplate->addElement('file', 'image'.$nom_bdd, BAZ_IMAGE) ;
-
 
275
	//TODO: controler si c'est une image
-
 
276
	$formtemplate->setMaxFileSize($limite1);
-
 
277
	//gestion du champs obligatoire
-
 
278
	if (isset($obligatoire)and($obligatoire==1)) {
-
 
279
		$formtemplate->addRule('image'.$nom_bdd, BAZ_IMAGE_VALIDE_REQUIS, 'required', '', 'client') ;
-
 
280
	}
-
 
281
}		
-
 
282
 
209
 
283
 
210
 
284
 
211
/** labelhtml() - Ajoute un élément de type textearea au formulaire
285
/** labelhtml() - Ajoute un élément de type textearea au formulaire
212
*
286
*
213
* @param    mixed   L'objet QuickForm du formulaire
287
* @param    mixed   L'objet QuickForm du formulaire
214
* @param    string  nom de la table dans la base de donnée (pas utilisé)
288
* @param    string  nom de la table dans la base de donnée (pas utilisé)
215
* @param    string  label à afficher dans le formulaire
289
* @param    string  label à afficher dans le formulaire
216
* @param    string  taille des colonnes de l'élément (pas utilisé)
290
* @param    string  taille des colonnes de l'élément (pas utilisé)
217
* @param    string  taille des lignes de l'élément (pas utilisé)
291
* @param    string  taille des lignes de l'élément (pas utilisé)
218
* @param    string  valeur par défaut du formulaire (pas utilisé)
292
* @param    string  valeur par défaut du formulaire (pas utilisé)
219
* @param    string  table source pour les valeurs du texte (pas utilisé)
293
* @param    string  table source pour les valeurs du texte (pas utilisé)
220
* @param    string  ce champs est il obligatoire? (required) (pas utilisé)
294
* @param    string  ce champs est il obligatoire? (required) (pas utilisé)
221
* @return   void
295
* @return   void
222
*/
296
*/
223
function labelhtml(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
297
function labelhtml(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
224
	require_once 'HTML/QuickForm/html.php';
298
	require_once 'HTML/QuickForm/html.php';
225
	$formhtml= new HTML_QuickForm_html('<tr>'."\n".'<td colspan="2">'."\n".constant($label)."\n".'</td>'."\n".'</tr>'."\n");
299
	$formhtml= new HTML_QuickForm_html('<tr>'."\n".'<td colspan="2">'."\n".constant($label)."\n".'</td>'."\n".'</tr>'."\n");
226
	$formtemplate->addElement($formhtml) ;
300
	$formtemplate->addElement($formhtml) ;
227
}
301
}
228
 
302
 
229
/* +--Fin du code ----------------------------------------------------------------------------------------+
303
/* +--Fin du code ----------------------------------------------------------------------------------------+
230
*
304
*
231
* $Log: not supported by cvs2svn $
305
* $Log: not supported by cvs2svn $
-
 
306
* Revision 1.16  2006/01/24 14:11:44  alexandre_tb
-
 
307
* ajout du paramètre emptyOptionValue dans les champs de date
-
 
308
*
232
* Revision 1.15  2006/01/23 16:57:03  alexandre_tb
309
* Revision 1.15  2006/01/23 16:57:03  alexandre_tb
233
* correction d'un notice
310
* correction d'un notice
234
*
311
*
235
* Revision 1.14  2006/01/19 17:42:11  florian
312
* Revision 1.14  2006/01/19 17:42:11  florian
236
* ajout des cases à cocher pré-cochées pour les maj
313
* ajout des cases à cocher pré-cochées pour les maj
237
*
314
*
238
* Revision 1.13  2006/01/13 14:12:51  florian
315
* Revision 1.13  2006/01/13 14:12:51  florian
239
* utilisation des temlates dans la table bazar_nature
316
* utilisation des temlates dans la table bazar_nature
240
*
317
*
241
* Revision 1.12  2006/01/05 16:28:24  alexandre_tb
318
* Revision 1.12  2006/01/05 16:28:24  alexandre_tb
242
* prise en chage des checkbox, reste la mise à jour à gérer
319
* prise en chage des checkbox, reste la mise à jour à gérer
243
*
320
*
244
* Revision 1.11  2006/01/02 13:24:07  alexandre_tb
321
* Revision 1.11  2006/01/02 13:24:07  alexandre_tb
245
* correction de bug d'un mauvais retour en erreur
322
* correction de bug d'un mauvais retour en erreur
246
*
323
*
247
* Revision 1.10  2005/12/01 16:05:41  florian
324
* Revision 1.10  2005/12/01 16:05:41  florian
248
* changement des chemins pour appli Pear
325
* changement des chemins pour appli Pear
249
*
326
*
250
* Revision 1.9  2005/11/24 16:17:13  florian
327
* Revision 1.9  2005/11/24 16:17:13  florian
251
* corrections bugs, ajout des cases à cocher
328
* corrections bugs, ajout des cases à cocher
252
*
329
*
253
* Revision 1.8  2005/11/18 16:03:23  florian
330
* Revision 1.8  2005/11/18 16:03:23  florian
254
* correction bug html entites
331
* correction bug html entites
255
*
332
*
256
* Revision 1.7  2005/11/07 17:51:06  florian
333
* Revision 1.7  2005/11/07 17:51:06  florian
257
* correction bug liste
334
* correction bug liste
258
*
335
*
259
* Revision 1.6  2005/11/07 17:30:36  florian
336
* Revision 1.6  2005/11/07 17:30:36  florian
260
* ajout controle sur les listes pour la saisie
337
* ajout controle sur les listes pour la saisie
261
*
338
*
262
* Revision 1.5  2005/11/07 17:05:45  florian
339
* Revision 1.5  2005/11/07 17:05:45  florian
263
* amélioration validation conditions de saisie, ajout des règles spécifiques de saisie des formulaires
340
* amélioration validation conditions de saisie, ajout des règles spécifiques de saisie des formulaires
264
*
341
*
265
* Revision 1.4  2005/10/25 13:53:02  alexandre_tb
342
* Revision 1.4  2005/10/25 13:53:02  alexandre_tb
266
* ajout d'un filtre dans les formulaire texte et textelong
343
* ajout d'un filtre dans les formulaire texte et textelong
267
*
344
*
268
* Revision 1.3  2005/07/21 19:03:12  florian
345
* Revision 1.3  2005/07/21 19:03:12  florian
269
* nouveautés bazar: templates fiches, correction de bugs, ...
346
* nouveautés bazar: templates fiches, correction de bugs, ...
270
*
347
*
271
* Revision 1.1.1.1  2005/02/17 18:05:11  florian
348
* Revision 1.1.1.1  2005/02/17 18:05:11  florian
272
* Import initial de Bazar
349
* Import initial de Bazar
273
*
350
*
274
* Revision 1.1.1.1  2005/02/17 11:09:50  florian
351
* Revision 1.1.1.1  2005/02/17 11:09:50  florian
275
* Import initial
352
* Import initial
276
*
353
*
277
* Revision 1.1.1.1  2005/02/16 18:06:35  florian
354
* Revision 1.1.1.1  2005/02/16 18:06:35  florian
278
* import de la nouvelle version
355
* import de la nouvelle version
279
*
356
*
280
* Revision 1.4  2004/07/08 11:17:59  alex
357
* Revision 1.4  2004/07/08 11:17:59  alex
281
* ajout de commentaires et d'entete
358
* ajout de commentaires et d'entete
282
*
359
*
283
*
360
*
284
* +-- Fin du code ----------------------------------------------------------------------------------------+
361
* +-- Fin du code ----------------------------------------------------------------------------------------+
285
*/
362
*/
286
?>
363
?>