Subversion Repositories Applications.bazar

Rev

Rev 105 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5 florian 1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | Lesser General Public License for more details.                                                      |
17
// |                                                                                                      |
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                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
118 florian 22
// CVS : $Id: bazar.fonct.formulaire.php,v 1.20 2006-04-28 12:46:14 florian Exp $
5 florian 23
/**
45 florian 24
* Formulaire
5 florian 25
*
26
* Les fonctions de mise en page des formulaire
27
*
28
*@package bazar
29
//Auteur original :
30
*@author        Florian SCHMITT <florian@ecole-et-nature.org>
31
//Autres auteurs :
32
*@author        Aleandre GRANIER <alexandre@tela-botanica.org>
33
*@copyright     Tela-Botanica 2000-2004
118 florian 34
*@version       $Revision: 1.20 $ $Date: 2006-04-28 12:46:14 $
5 florian 35
// +------------------------------------------------------------------------------------------------------+
36
*/
37
 
45 florian 38
require_once 'bazar.fonct.formulaire.controles.php';
39
 
5 florian 40
//-------------------FONCTIONS DE MISE EN PAGE DES FORMULAIRES
41
 
42
/** liste() - Ajoute un élément de type liste au formulaire
43
*
44
* @param    mixed   L'objet QuickForm du formulaire
68 florian 45
* @param    int     identifiant de la liste sur bazar_liste
5 florian 46
* @param    string  label à afficher dans le 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
49
* @param    string  valeur par défaut du formulaire
50
* @param    string  table source pour les valeurs de la liste
51
* @param    string  ce champs est il obligatoire? (required)
52
* @return   void
53
*/
68 florian 54
function liste(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
79 florian 55
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
5 florian 56
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
57
	if (DB::isError ($resultat)) {
62 alexandre_ 58
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
5 florian 59
	}
60
	while ($ligne = $resultat->fetchRow()) {
86 florian 61
		$select[$ligne[1]] = $ligne[2] ;
5 florian 62
	}
63
	$option=array('style'=>'width: '.$limite1.'px;');
118 florian 64
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/select.php';
105 florian 65
	$select= new HTML_QuickForm_select('liste'.$id_liste, $label, $select, $option);
5 florian 66
	$select->setSize($limite2);
67
	$select->setMultiple(0);
45 florian 68
	$select->setSelected($defaut);
5 florian 69
	$formtemplate->addElement($select) ;
47 florian 70
	if (isset($obligatoire)and($obligatoire==1)) {
105 florian 71
		$formtemplate->addRule('liste'.$id_liste, BAZ_CHOISIR_OBLIGATOIRE.' '.$label , 'nonzero', '', 'client') ;
72
		$formtemplate->addRule('liste'.$id_liste, $label.' obligatoire', 'required', '', 'client') ;}
5 florian 73
}
74
 
75
 
54 florian 76
/** checkbox() - Ajoute un élément de type checkbox au formulaire
77
*
78
* @param    mixed   L'objet QuickForm du formulaire
68 florian 79
* @param    int     identifiant de la liste sur bazar_liste
54 florian 80
* @param    string  label à afficher dans le 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
83
* @param    string  valeur par défaut du formulaire
84
* @param    string  table source pour les valeurs de la liste
85
* @param    string  ce champs est il obligatoire? (required)
86
* @return   void
87
*/
68 florian 88
function checkbox(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
118 florian 89
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'" ORDER BY blv_label';
54 florian 90
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
91
	if (DB::isError ($resultat)) {
80 alexandre_ 92
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
79 florian 93
	}
118 florian 94
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/checkbox.php' ;
54 florian 95
	$i=0;
79 florian 96
	if (isset($defaut)) $tab=split(', ', $defaut);
54 florian 97
	while ($ligne = $resultat->fetchRow()) {
118 florian 98
		if ($i==0) $labelchkbox=$label ; else $labelchkbox='&nbsp;';
79 florian 99
		$checkbox[$i]= & HTML_Quickform::createElement('checkbox', $ligne[1], $labelchkbox, $ligne[2],
118 florian 100
						array ('style'=>'display:inline;margin:2px;')) ;
79 florian 101
		foreach ($tab as $val) {
102
            if ($ligne[1]==$val) $checkbox[$i]->setChecked(1);
103
        }
54 florian 104
		$i++;
105
	}
118 florian 106
	$squelette_checkbox =& $formtemplate->defaultRenderer();
107
	$squelette_checkbox->setElementTemplate( '<tr><td colspan="2" style="text-align:left;">'."\n".'<fieldset class="bazar_fieldset">'."\n".'<legend>{label}'.
108
                                             '<!-- BEGIN required --><span class="symbole_obligatoire">&nbsp;*</span><!-- END required -->'."\n".
109
											 '</legend>'."\n".'{element}'."\n".'</fieldset> '."\n".'</td></tr>'."\n", 'checkbox'.$id_liste);
110
  	$squelette_checkbox->setGroupElementTemplate( "\n".'<div class="bazar_checkbox">'."\n".'{element}'."\n".'</div>'."\n", 'checkbox'.$id_liste);
111
 
112
	$formtemplate->addGroup($checkbox, 'checkbox'.$id_liste, $label, "\n");
79 florian 113
	if (isset($obligatoire)and($obligatoire==1)) {
105 florian 114
		$formtemplate->addGroupRule('checkbox'.$id_liste, $label.' obligatoire', 'required', null, 1, 'client');
79 florian 115
	}
54 florian 116
}
117
 
118
 
5 florian 119
/** listedatedeb() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de début
120
*
121
* @param    mixed   L'objet QuickForm du formulaire
122
* @param    string  nom de la table dans la base de donnée
123
* @param    string  label à afficher dans le formulaire
124
* @param    string  première restriction de la taille des champs du formulaire
125
* @param    string  deuxième restriction de la taille des champs du formulaire
126
* @param    string  valeur par défaut du formulaire
127
* @param    string  table source pour les valeurs de la date
128
* @param    string  ce champs est il obligatoire? (required)
129
* @return   void
130
*/
131
function listedatedeb(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
82 alexandre_ 132
	$optiondate = array('language' => BAZ_LANGUE_PAR_DEFAUT,
133
						'minYear' => date('Y'),
134
						'maxYear'=> (date('Y')+10),
135
						'format' => 'd m Y',
118 florian 136
						'addEmptyOption' => BAZ_DATE_VIDE,
82 alexandre_ 137
						);
105 florian 138
	$formtemplate->addElement('date', $nom_bdd, $label, $optiondate) ;
79 florian 139
	//gestion des valeurs par défaut (date du jour)
118 florian 140
	if (isset($defaut) && $defaut!='') $formtemplate->setDefaults(array($nom_bdd => $defaut));
79 florian 141
	else {
142
		$defauts=array($nom_bdd => array ('d'=>date('d'), 'm'=>date('m'), 'Y'=>date('Y')));
143
		$formtemplate->setDefaults($defauts);
144
	}
5 florian 145
	//gestion du champs obligatoire
105 florian 146
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd, $label.' obligatoire', 'required', '', 'client') ;}
5 florian 147
}
148
 
149
/** listedatefin() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de fin
150
*
151
* @param    mixed   L'objet QuickForm du formulaire
152
* @param    string  nom de la table dans la base de donnée
153
* @param    string  label à afficher dans le formulaire
154
* @param    string  première restriction de la taille des champs du formulaire
155
* @param    string  deuxième restriction de la taille des champs du formulaire
156
* @param    string  valeur par défaut du formulaire
157
* @param    string  table source pour les valeurs de la date
158
* @param    string  ce champs est il obligatoire? (required)
159
* @return   void
160
*/
161
function listedatefin(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
162
	listedatedeb($formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire);
163
}
164
 
165
 
166
/** texte() - Ajoute un élément de type texte au formulaire
167
*
168
* @param    mixed   L'objet QuickForm du formulaire
169
* @param    string  nom de la table dans la base de donnée
170
* @param    string  label à afficher dans le formulaire
171
* @param    string  première restriction de la taille des champs du formulaire
172
* @param    string  deuxième restriction de la taille des champs du formulaire
173
* @param    string  valeur par défaut du formulaire
174
* @param    string  table source pour les valeurs du texte (inutile)
175
* @param    string  ce champs est il obligatoire? (required)
176
* @return   void
177
*/
178
function texte(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
179
	$option=array('size'=>$limite1,'maxlength'=>$limite2);
105 florian 180
	$formtemplate->addElement('text', $nom_bdd, $label, $option) ;
5 florian 181
	//gestion des valeurs par défaut
182
	$defauts=array($nom_bdd=>$defaut);
183
	$formtemplate->setDefaults($defauts);
41 alexandre_ 184
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
5 florian 185
	//gestion du champs obligatoire
105 florian 186
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd,  $label.' obligatoire', 'required', '', 'client') ;}
5 florian 187
}
188
 
189
 
190
/** textelong() - Ajoute un élément de type textearea au formulaire
191
*
192
* @param    mixed   L'objet QuickForm du formulaire
193
* @param    string  nom de la table dans la base de donnée
194
* @param    string  label à afficher dans le formulaire
195
* @param    string  taille des colonnes de l'élément
196
* @param    string  taille des lignes de l'élément
197
* @param    string  valeur par défaut du formulaire
198
* @param    string  table source pour les valeurs du texte (inutile)
199
* @param    string  ce champs est il obligatoire? (required)
200
* @return   void
201
*/
202
function textelong(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
105 florian 203
	$formtexte= new HTML_QuickForm_textarea($nom_bdd, $label, array('style'=>'white-space: normal;'));
5 florian 204
	$formtexte->setCols($limite1);
205
	$formtexte->setRows($limite2);
206
	$formtemplate->addElement($formtexte) ;
207
	//gestion des valeurs par défaut
208
	$defauts=array($nom_bdd=>$defaut);
209
	$formtemplate->setDefaults($defauts);
41 alexandre_ 210
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
5 florian 211
	//gestion du champs obligatoire
105 florian 212
	if (isset($obligatoire)and($obligatoire==1)) {$formtemplate->addRule($nom_bdd,  $label.' obligatoire', 'required', '', 'client') ;}
5 florian 213
}
214
 
86 florian 215
/** url() - Ajoute un élément de type url internet au formulaire
216
*
217
* @param    mixed   L'objet QuickForm du formulaire
218
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
219
* @param    string  label à afficher dans le formulaire
220
* @param    string  taille des colonnes de l'élément
221
* @param    string  taille des lignes de l'élément
222
* @param    string  valeur par défaut du formulaire
223
* @param    string  table source pour les valeurs du texte (inutile)
224
* @param    string  ce champs est il obligatoire? (required)
225
* @return   void
226
*/
227
function url(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
118 florian 228
	//recherche des URLs deja entrees dans la base
229
	$html_url= '';
230
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
231
		$requete = 'SELECT bu_id_url, bu_url, bu_descriptif_url FROM bazar_url WHERE bu_ce_fiche='.$GLOBALS['_BAZAR_']["id_fiche"];
232
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
233
		if (DB::isError ($resultat)) {
234
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
235
		}
236
		if ($resultat->numRows()>0) {
237
			$html_url= '<tr>'."\n".'<td colspan="2">'."\n".'<strong>'.BAZ_LISTE_URL.'</strong>'."\n";
238
			$tableAttr = array("class" => "bazar_table") ;
239
			$table = new HTML_Table($tableAttr) ;
240
			$entete = array (BAZ_LIEN , BAZ_SUPPRIMER) ;
241
			$table->addRow($entete) ;
242
			$table->setRowType(0, "th") ;
243
 
244
			$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
245
			$lien_supprimer->addQueryString('action', $_GET['action']);
246
			$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
247
			$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
248
 
249
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
250
				$lien_supprimer->addQueryString('id_url', $ligne->bu_id_url);
251
				$table->addRow (array(
252
				'<a href="'.$ligne->bu_url.'" target="_blank"> '.$ligne->bu_descriptif_url.'</a>', // col 1 : le lien
253
				'<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_LIEN.'\');" >'.BAZ_SUPPRIMER.'</a>'."\n")) ; // col 2 : supprimer
254
				$lien_supprimer->removeQueryString('id_url');
255
			}
256
			$table->altRowAttributes(1, array("class" => "ligne_impaire"), array("class" => "ligne_paire"));
257
			$table->updateColAttributes(1, array("align" => "center"));
258
			$html_url.= $table->toHTML()."\n".'</td>'."\n".'</tr>'."\n" ;
259
		}
260
	}
102 florian 261
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
86 florian 262
	$formtemplate->addElement('html', $html) ;
118 florian 263
	if ($html_url!='') $formtemplate->addElement('html', $html_url) ;
86 florian 264
	$formtemplate->addElement('text', 'url_lien'.$nom_bdd, BAZ_URL_LIEN) ;
265
	$formtemplate->addElement('text', 'url_texte'.$nom_bdd, BAZ_URL_TEXTE) ;
266
	//gestion du champs obligatoire
267
	if (isset($obligatoire)and($obligatoire==1)) {
268
		$formtemplate->addRule('url_lien'.$nom_bdd, BAZ_URL_LIEN_REQUIS, 'required', '', 'client') ;
269
		$formtemplate->addRule('url_texte'.$nom_bdd, BAZ_URL_TEXTE_REQUIS, 'required', '', 'client') ;
270
	}
271
}
5 florian 272
 
86 florian 273
/** fichier() - Ajoute un élément de type fichier au formulaire
274
*
275
* @param    mixed   L'objet QuickForm du formulaire
276
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
277
* @param    string  label à afficher dans le formulaire
278
* @param    string  taille des colonnes de l'élément
279
* @param    string  taille des lignes de l'élément
280
* @param    string  valeur par défaut du formulaire
281
* @param    string  table source pour les valeurs du texte (inutile)
282
* @param    string  ce champs est il obligatoire? (required)
283
* @return   void
284
*/
285
function fichier(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
118 florian 286
	//AJOUTER DES FICHIERS JOINTS
287
	$html_fichier= '';
288
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
289
		$requete = 'SELECT * FROM bazar_fichier_joint WHERE bfj_ce_fiche='.$GLOBALS['_BAZAR_']["id_fiche"];
290
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
291
		if (DB::isError ($resultat)) {
292
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
293
		}
294
 
295
		if ($resultat->numRows()>0) {
296
			$html_fichier = '<tr>'."\n".'<td colspan="2">'."\n".'<strong>'.BAZ_LISTE_FICHIERS_JOINTS.'</strong>'."\n";
297
			$tableAttr = array("class" => "bazar_table") ;
298
			$table = new HTML_Table($tableAttr) ;
299
			$entete = array (BAZ_FICHIER , BAZ_SUPPRIMER) ;
300
			$table->addRow($entete) ;
301
			$table->setRowType(0, "th") ;
302
 
303
			$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
304
			$lien_supprimer->addQueryString('action', $_GET['action']);
305
			$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
306
			$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
307
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
308
				$lien_supprimer->addQueryString('id_fichier', $ligne->bfj_id_fichier);
309
				$table->addRow(array('<a href="client/bazar/upload/'.$ligne->bfj_fichier.'"> '.$ligne->bfj_description.'</a>', // col 1 : le fichier et sa description
310
									 '<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_FICHIER.'\');" >'.BAZ_SUPPRIMER.'</a>'."\n")) ; // col 2 : supprimer
311
				$lien_supprimer->removeQueryString('id_fichier');
312
			}
313
			$table->altRowAttributes(1, array("class" => "ligne_impaire"), array("class" => "ligne_paire"));
314
			$table->updateColAttributes(1, array("align" => "center"));
315
			$html_fichier .= $table->toHTML()."\n".'</td>'."\n".'</tr>'."\n" ;
316
		}
317
	}
102 florian 318
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
86 florian 319
	$formtemplate->addElement('html', $html) ;
118 florian 320
	if ($html_fichier!='') $formtemplate->addElement('html', $html_fichier) ;
86 florian 321
	$formtemplate->addElement('text', 'texte_fichier'.$nom_bdd, BAZ_FICHIER_DESCRIPTION) ;
322
	$formtemplate->addElement('file', 'fichier'.$nom_bdd, BAZ_FICHIER_JOINT) ;
323
	$formtemplate->addRule('image', BAZ_IMAGE_VALIDE_REQUIS, '', '', 'client') ; //a completer pour checker l'image
324
	$formtemplate->setMaxFileSize($limite1);
325
	//gestion du champs obligatoire
326
	if (isset($obligatoire)and($obligatoire==1)) {
327
		$formtemplate->addRule('texte_fichier'.$nom_bdd, BAZ_FICHIER_LABEL_REQUIS, 'required', '', 'client') ;
328
		$formtemplate->addRule('fichier'.$nom_bdd, BAZ_FICHIER_JOINT_REQUIS, 'required', '', 'client') ;
329
	}
330
}
331
 
332
/** image() - Ajoute un élément de type image au formulaire
333
*
334
* @param    mixed   L'objet QuickForm du formulaire
335
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
336
* @param    string  label à afficher dans le formulaire
337
* @param    string  taille maximum du fichier colonnes de l'élément
338
* @param    string  taille des lignes de l'élément
339
* @param    string  valeur par défaut du formulaire
340
* @param    string  table source pour les valeurs du texte (inutile)
341
* @param    string  ce champs est il obligatoire? (required)
342
* @return   void
343
*/
344
function image(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
118 florian 345
	//AJOUTER UNE IMAGE
346
	$html_image= '';
347
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
348
		$requete = 'SELECT bf_url_image FROM bazar_fiche WHERE bf_id_fiche='.$GLOBALS['_BAZAR_']['id_fiche'];
349
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
350
		if (DB::isError ($resultat)) {
351
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
352
		}
353
 
354
		if ($resultat->numRows()>0) {
355
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
356
				$image=$ligne->bf_url_image;
357
			}
358
			if ($image!=NULL) {
359
				$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
360
				$lien_supprimer->addQueryString('action', $_GET['action']);
361
				$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
362
				$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
363
				$lien_supprimer->addQueryString('image', 1);
364
				$html_image = '<tr>'."\n".
365
							  '<td>'."\n".'<img src="client/bazar/upload/'.$image.'" alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" width="130" height="130" />'."\n".'</td>'."\n".
366
							  '<td>'."\n".'<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_IMAGE.'\');" >'.BAZ_SUPPRIMER.'</a><br /><br />'."\n".
367
							  '<strong>'.BAZ_POUR_CHANGER_IMAGE.'</strong><br />'."\n".'</td>'."\n".'</tr>'."\n";
368
			}
369
		}
370
	}
105 florian 371
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
86 florian 372
	$formtemplate->addElement('html', $html) ;
118 florian 373
	if ($html_image!='') $formtemplate->addElement('html', $html_image) ;
374
	$formtemplate->addElement('file', 'image', BAZ_IMAGE) ;
86 florian 375
	//TODO: controler si c'est une image
376
	$formtemplate->setMaxFileSize($limite1);
377
	//gestion du champs obligatoire
378
	if (isset($obligatoire)and($obligatoire==1)) {
118 florian 379
		$formtemplate->addRule('image', BAZ_IMAGE_VALIDE_REQUIS, 'required', '', 'client') ;
86 florian 380
	}
381
}
382
 
383
 
384
 
5 florian 385
/** labelhtml() - Ajoute un élément de type textearea au formulaire
386
*
387
* @param    mixed   L'objet QuickForm du formulaire
388
* @param    string  nom de la table dans la base de donnée (pas utilisé)
389
* @param    string  label à afficher dans le formulaire
390
* @param    string  taille des colonnes de l'élément (pas utilisé)
391
* @param    string  taille des lignes de l'élément (pas utilisé)
392
* @param    string  valeur par défaut du formulaire (pas utilisé)
393
* @param    string  table source pour les valeurs du texte (pas utilisé)
394
* @param    string  ce champs est il obligatoire? (required) (pas utilisé)
395
* @return   void
396
*/
397
function labelhtml(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire) {
118 florian 398
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/html.php';
399
	$formhtml= new HTML_QuickForm_html('<tr>'."\n".'<td colspan="2">'."\n".$label."\n".'</td>'."\n".'</tr>'."\n");
5 florian 400
	$formtemplate->addElement($formhtml) ;
401
}
402
 
403
/* +--Fin du code ----------------------------------------------------------------------------------------+
404
*
41 alexandre_ 405
* $Log: not supported by cvs2svn $
118 florian 406
* Revision 1.19  2006/03/02 20:36:52  florian
407
* les entrees du formulaire de saisir ne sont plus dans les constantes mias dans des tables qui gerent le multilinguisme.
408
*
105 florian 409
* Revision 1.18  2006/03/01 16:01:46  florian
410
* correction bug déclaration variable $html
411
*
102 florian 412
* Revision 1.17  2006/01/30 10:27:03  florian
413
* - ajout des entrées de formulaire fichier, url, et image
414
* - correction bug d'affichage du mode de saisie
415
*
86 florian 416
* Revision 1.16  2006/01/24 14:11:44  alexandre_tb
417
* ajout du paramètre emptyOptionValue dans les champs de date
418
*
82 alexandre_ 419
* Revision 1.15  2006/01/23 16:57:03  alexandre_tb
420
* correction d'un notice
421
*
80 alexandre_ 422
* Revision 1.14  2006/01/19 17:42:11  florian
423
* ajout des cases à cocher pré-cochées pour les maj
424
*
79 florian 425
* Revision 1.13  2006/01/13 14:12:51  florian
426
* utilisation des temlates dans la table bazar_nature
427
*
68 florian 428
* Revision 1.12  2006/01/05 16:28:24  alexandre_tb
429
* prise en chage des checkbox, reste la mise à jour à gérer
430
*
67 alexandre_ 431
* Revision 1.11  2006/01/02 13:24:07  alexandre_tb
432
* correction de bug d'un mauvais retour en erreur
433
*
62 alexandre_ 434
* Revision 1.10  2005/12/01 16:05:41  florian
435
* changement des chemins pour appli Pear
436
*
57 florian 437
* Revision 1.9  2005/11/24 16:17:13  florian
438
* corrections bugs, ajout des cases à cocher
439
*
54 florian 440
* Revision 1.8  2005/11/18 16:03:23  florian
441
* correction bug html entites
442
*
53 florian 443
* Revision 1.7  2005/11/07 17:51:06  florian
444
* correction bug liste
445
*
47 florian 446
* Revision 1.6  2005/11/07 17:30:36  florian
447
* ajout controle sur les listes pour la saisie
448
*
46 florian 449
* Revision 1.5  2005/11/07 17:05:45  florian
450
* amélioration validation conditions de saisie, ajout des règles spécifiques de saisie des formulaires
451
*
45 florian 452
* Revision 1.4  2005/10/25 13:53:02  alexandre_tb
453
* ajout d'un filtre dans les formulaire texte et textelong
454
*
41 alexandre_ 455
* Revision 1.3  2005/07/21 19:03:12  florian
456
* nouveautés bazar: templates fiches, correction de bugs, ...
457
*
5 florian 458
* Revision 1.1.1.1  2005/02/17 18:05:11  florian
459
* Import initial de Bazar
460
*
461
* Revision 1.1.1.1  2005/02/17 11:09:50  florian
462
* Import initial
463
*
464
* Revision 1.1.1.1  2005/02/16 18:06:35  florian
465
* import de la nouvelle version
466
*
467
* Revision 1.4  2004/07/08 11:17:59  alex
468
* ajout de commentaires et d'entete
469
*
470
*
471
* +-- Fin du code ----------------------------------------------------------------------------------------+
472
*/
473
?>