Subversion Repositories Applications.papyrus

Rev

Rev 1462 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1108 florian 1
<?php
2
function formulaire_valeurs_template_champs($valeur_template) {
3
	//Parcours du template, pour mettre les champs du formulaire avec leurs valeurs specifiques
4
	$tableau= array();
5
	$nblignes=0;
6
	$chaine = explode ("\n", $valeur_template);
7
	array_pop($chaine);
8
	foreach ($chaine as $ligne)  {
9
		$souschaine = explode ("***", $ligne) ;
10
		$tableau[$nblignes]['type'] = trim($souschaine[0]) ;
11
		if (isset($souschaine[1])) {$tableau[$nblignes]['nom_bdd'] = trim($souschaine[1]);}
12
		else {$tableau[$nblignes]['nom_bdd'] ='';}
13
		if (isset($souschaine[2])) $tableau[$nblignes]['label'] = trim($souschaine[2]);
14
		else {$tableau[$nblignes]['label'] ='';}
15
		if (isset($souschaine[3])) $tableau[$nblignes]['limite1'] = trim($souschaine[3]);
16
		else {$tableau[$nblignes]['limite1'] ='';}
17
		if (isset($souschaine[4])) $tableau[$nblignes]['limite2'] = trim($souschaine[4]);
18
		else {$tableau[$nblignes]['limite2'] ='';}
19
		if (isset($souschaine[5])) $tableau[$nblignes]['defaut'] = trim($souschaine[5]);
20
		else {$tableau[$nblignes]['defaut'] ='';}
21
		if (isset($souschaine[6])) $tableau[$nblignes]['table_source'] = trim($souschaine[6]);
22
		else {$tableau[$nblignes]['table_source'] ='';}
23
		if (isset($souschaine[7])) $tableau[$nblignes]['id_source'] = trim($souschaine[7]);
24
		else {$tableau[$nblignes]['id_source'] ='';}
25
		if (isset($souschaine[8])) $tableau[$nblignes]['obligatoire'] = trim($souschaine[8]);
26
		else {$tableau[$nblignes]['obligatoire'] ='';}
27
		if (isset($souschaine[9])) $tableau[$nblignes]['recherche'] = trim($souschaine[9]);
28
		else {$tableau[$nblignes]['recherche'] ='';}
29
 
30
		// traitement des cases à cocher, dans ce cas la, on a une table de jointure entre la table
31
		// de liste et la table bazar_fiche (elle porte un nom du genre bazar_ont_***)
32
		// dans le template, à la place d'un nom de champs dans 'nom_bdd', on a un nom de table
33
		// et 2 noms de champs séparés par un virgule ex : bazar_ont_theme,bot_id_theme,bot_id_fiche
34
		if (isset($tableau[$nblignes]['nom_bdd']) && preg_match('/,/', $tableau[$nblignes]['nom_bdd'])) {
35
			$tableau_info_jointe = explode (',', $tableau[$nblignes]['nom_bdd']) ;
36
			$tableau[$nblignes]['table_jointe'] = $tableau_info_jointe[0] ;
37
			$tableau[$nblignes]['champs_id_fiche'] = $tableau_info_jointe[1] ;
38
			$tableau[$nblignes]['champs_id_table_jointe'] = $tableau_info_jointe[2] ;
39
		}
40
		$nblignes++;
41
	}
42
	return $tableau;
43
}
44
 
45
/** liste() - Ajoute un élément de type liste au formulaire
46
*
47
* @param    mixed   L'objet QuickForm du formulaire
48
* @param    int     identifiant de la liste sur bazar_liste
49
* @param    string  label à afficher dans le formulaire
50
* @param    string  première restriction de la taille des champs du formulaire
51
* @param    string  deuxième restriction de la taille des champs du formulaire
52
* @param    string  valeur par défaut du formulaire
53
* @param    string  table source pour les valeurs de la liste
54
* @param    string  ce champs est il obligatoire? (required)
55
* @param    boolean sommes nous dans le moteur de recherche?
56
* @return   void
57
*/
58
function liste(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
59
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'"';
60
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
61
	if (DB::isError ($resultat)) {
62
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
63
	}
64
	if ($dans_moteur_de_recherche==0) {
65
		$select[0]=BAZ_CHOISIR;
66
	}
67
	else {
68
		$select[0]=BAZ_INDIFFERENT;
69
	}
70
	while ($ligne = $resultat->fetchRow()) {
71
		$select[$ligne[1]] = $ligne[2] ;
72
	}
73
	$option=array('style'=>'width: '.$limite1.'px;');
74
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/select.php';
75
	$select= new HTML_QuickForm_select('liste'.$id_liste, $label, $select, $option);
76
	$select->setSize($limite2);
77
	$select->setMultiple(0);
78
	$select->setSelected($defaut);
79
	$formtemplate->addElement($select) ;
80
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
81
		$formtemplate->addRule('liste'.$id_liste, BAZ_CHOISIR_OBLIGATOIRE.' '.$label , 'nonzero', '', 'client') ;
82
		$formtemplate->addRule('liste'.$id_liste, $label.' obligatoire', 'required', '', 'client') ;}
83
}
84
 
85
 
86
/** checkbox() - Ajoute un élément de type checkbox au formulaire
87
*
88
* @param    mixed   L'objet QuickForm du formulaire
89
* @param    int     identifiant de la liste sur bazar_liste
90
* @param    string  label à afficher dans le formulaire
91
* @param    string  première restriction de la taille des champs du formulaire
92
* @param    string  deuxième restriction de la taille des champs du formulaire
93
* @param    string  valeur par défaut du formulaire
94
* @param    string  table source pour les valeurs de la liste
95
* @param    string  ce champs est il obligatoire? (required)
96
* @return   void
97
*/
98
function checkbox(&$formtemplate, $id_liste , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
99
	$requete = 'SELECT * FROM bazar_liste_valeurs WHERE blv_ce_liste='.$id_liste.' AND blv_ce_i18n="'.$GLOBALS['_BAZAR_']['langue'].'" ORDER BY blv_label';
100
	$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
101
	if (DB::isError ($resultat)) {
102
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
103
	}
104
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/checkbox.php' ;
105
	$i=0;
106
	if (isset($defaut)) $tab=split(', ', $defaut);
107
	while ($ligne = $resultat->fetchRow()) {
108
		if ($i==0) $labelchkbox=$label ; else $labelchkbox='&nbsp;';
109
		$checkbox[$i]= & HTML_Quickform::createElement('checkbox', $ligne[1], $labelchkbox, $ligne[2],
110
						array ('style'=>'display:inline;margin:2px;')) ;
111
		foreach ($tab as $val) {
112
            if ($ligne[1]==$val) $checkbox[$i]->setChecked(1);
113
        }
114
		$i++;
115
	}
116
	$squelette_checkbox =& $formtemplate->defaultRenderer();
117
	$squelette_checkbox->setElementTemplate( '<tr><td colspan="2" style="text-align:left;">'."\n".'<fieldset class="bazar_fieldset">'."\n".'<legend>{label}'.
118
                                             '<!-- BEGIN required --><span class="symbole_obligatoire">&nbsp;*</span><!-- END required -->'."\n".
119
											 '</legend>'."\n".'{element}'."\n".'</fieldset> '."\n".'</td></tr>'."\n", 'checkbox'.$id_liste);
120
  	$squelette_checkbox->setGroupElementTemplate( "\n".'<div class="bazar_checkbox">'."\n".'{element}'."\n".'</div>'."\n", 'checkbox'.$id_liste);
121
 
122
	$formtemplate->addGroup($checkbox, 'checkbox'.$id_liste, $label, "\n");
123
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
124
		$formtemplate->addGroupRule('checkbox'.$id_liste, $label.' obligatoire', 'required', null, 1, 'client');
125
	}
126
}
127
 
128
 
129
/** listedatedeb() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de début
130
*
131
* @param    mixed   L'objet QuickForm du formulaire
132
* @param    string  nom de la table dans la base de donnée
133
* @param    string  label à afficher dans le formulaire
134
* @param    string  première restriction de la taille des champs du formulaire
135
* @param    string  deuxième restriction de la taille des champs du formulaire
136
* @param    string  valeur par défaut du formulaire
137
* @param    string  table source pour les valeurs de la date
138
* @param    string  ce champs est il obligatoire? (required)
139
* @return   void
140
*/
141
function listedatedeb(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
142
	$optiondate = array('language' => BAZ_LANGUE_PAR_DEFAUT,
143
						'minYear' => date('Y'),
144
						'maxYear'=> (date('Y')+10),
145
						'format' => 'd m Y',
146
						'addEmptyOption' => BAZ_DATE_VIDE,
147
						);
148
	$formtemplate->addElement('date', $nom_bdd, $label, $optiondate) ;
149
	//gestion des valeurs par défaut (date du jour)
150
	if (isset($defaut) && $defaut!='') $formtemplate->setDefaults(array($nom_bdd => $defaut));
151
	else {
152
		$defauts=array($nom_bdd => array ('d'=>date('d'), 'm'=>date('m'), 'Y'=>date('Y')));
153
		$formtemplate->setDefaults($defauts);
154
	}
155
	//gestion du champs obligatoire
156
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
157
		$formtemplate->addRule($nom_bdd, $label.' obligatoire', 'required', '', 'client') ;
158
	}
159
}
160
 
161
/** listedatefin() - Ajoute un élément de type date sous forme de liste au formulaire pour designer une date de fin
162
*
163
* @param    mixed   L'objet QuickForm du formulaire
164
* @param    string  nom de la table dans la base de donnée
165
* @param    string  label à afficher dans le formulaire
166
* @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
168
* @param    string  valeur par défaut du formulaire
169
* @param    string  table source pour les valeurs de la date
170
* @param    string  ce champs est il obligatoire? (required)
171
* @return   void
172
*/
173
function listedatefin(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
174
	listedatedeb($formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche);
175
}
176
 
177
 
178
/** texte() - Ajoute un élément de type texte au formulaire
179
*
180
* @param    mixed   L'objet QuickForm du formulaire
181
* @param    string  nom de la table dans la base de donnée
182
* @param    string  label à afficher dans le formulaire
183
* @param    string  première restriction de la taille des champs du formulaire
184
* @param    string  deuxième restriction de la taille des champs du formulaire
185
* @param    string  valeur par défaut du formulaire
186
* @param    string  table source pour les valeurs du texte (inutile)
187
* @param    string  ce champs est il obligatoire? (required)
188
* @return   void
189
*/
190
function texte(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
191
	$option=array('size'=>$limite1,'maxlength'=>$limite2);
192
	$formtemplate->addElement('text', $nom_bdd, $label, $option) ;
193
	//gestion des valeurs par défaut
194
	$defauts=array($nom_bdd=>$defaut);
195
	$formtemplate->setDefaults($defauts);
196
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
197
	//gestion du champs obligatoire
198
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
199
		$formtemplate->addRule($nom_bdd,  $label.' obligatoire', 'required', '', 'client') ;
200
	}
201
}
202
 
203
 
204
/** textelong() - Ajoute un élément de type textearea au formulaire
205
*
206
* @param    mixed   L'objet QuickForm du formulaire
207
* @param    string  nom de la table dans la base de donnée
208
* @param    string  label à afficher dans le formulaire
209
* @param    string  taille des colonnes de l'élément
210
* @param    string  taille des lignes de l'élément
211
* @param    string  valeur par défaut du formulaire
212
* @param    string  table source pour les valeurs du texte (inutile)
213
* @param    string  ce champs est il obligatoire? (required)
214
* @return   void
215
*/
216
function textelong(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
217
	$formtexte= new HTML_QuickForm_textarea($nom_bdd, $label, array('style'=>'white-space: normal;'));
218
	$formtexte->setCols($limite1);
219
	$formtexte->setRows($limite2);
220
	$formtemplate->addElement($formtexte) ;
221
	//gestion des valeurs par défaut
222
	$defauts=array($nom_bdd=>$defaut);
223
	$formtemplate->setDefaults($defauts);
224
	$formtemplate->applyFilter($nom_bdd, 'addslashes') ;
225
	//gestion du champs obligatoire
226
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
227
		$formtemplate->addRule($nom_bdd,  $label.' obligatoire', 'required', '', 'client') ;
228
	}
229
}
230
 
231
/** url() - Ajoute un élément de type url internet au formulaire
232
*
233
* @param    mixed   L'objet QuickForm du formulaire
234
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
235
* @param    string  label à afficher dans le formulaire
236
* @param    string  taille des colonnes de l'élément
237
* @param    string  taille des lignes de l'élément
238
* @param    string  valeur par défaut du formulaire
239
* @param    string  table source pour les valeurs du texte (inutile)
240
* @param    string  ce champs est il obligatoire? (required)
241
* @return   void
242
*/
243
function url(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
244
	//recherche des URLs deja entrees dans la base
245
	$html_url= '';
246
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
247
		$requete = 'SELECT bu_id_url, bu_url, bu_descriptif_url FROM bazar_url WHERE bu_ce_fiche='.$GLOBALS['_BAZAR_']["id_fiche"];
248
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
249
		if (DB::isError ($resultat)) {
250
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
251
		}
252
		if ($resultat->numRows()>0) {
253
			$html_url= '<tr>'."\n".'<td colspan="2">'."\n".'<strong>'.BAZ_LISTE_URL.'</strong>'."\n";
254
			$tableAttr = array("class" => "bazar_table") ;
255
			$table = new HTML_Table($tableAttr) ;
256
			$entete = array (BAZ_LIEN , BAZ_SUPPRIMER) ;
257
			$table->addRow($entete) ;
258
			$table->setRowType(0, "th") ;
259
 
260
			$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
261
			$lien_supprimer->addQueryString('action', $_GET['action']);
262
			$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
263
			$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
264
 
265
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
266
				$lien_supprimer->addQueryString('id_url', $ligne->bu_id_url);
267
				$table->addRow (array(
268
				'<a href="'.$ligne->bu_url.'" target="_blank"> '.$ligne->bu_descriptif_url.'</a>', // col 1 : le lien
269
				'<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_LIEN.'\');" >'.BAZ_SUPPRIMER.'</a>'."\n")) ; // col 2 : supprimer
270
				$lien_supprimer->removeQueryString('id_url');
271
			}
272
			$table->altRowAttributes(1, array("class" => "ligne_impaire"), array("class" => "ligne_paire"));
273
			$table->updateColAttributes(1, array("align" => "center"));
274
			$html_url.= $table->toHTML()."\n".'</td>'."\n".'</tr>'."\n" ;
275
		}
276
	}
277
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
278
	$formtemplate->addElement('html', $html) ;
279
	if ($html_url!='') $formtemplate->addElement('html', $html_url) ;
280
	$formtemplate->addElement('text', 'url_lien'.$nom_bdd, BAZ_URL_LIEN) ;
281
	$formtemplate->addElement('text', 'url_texte'.$nom_bdd, BAZ_URL_TEXTE) ;
282
	//gestion du champs obligatoire
283
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
284
		$formtemplate->addRule('url_lien'.$nom_bdd, BAZ_URL_LIEN_REQUIS, 'required', '', 'client') ;
285
		$formtemplate->addRule('url_texte'.$nom_bdd, BAZ_URL_TEXTE_REQUIS, 'required', '', 'client') ;
286
	}
287
}
288
 
289
/** fichier() - Ajoute un élément de type fichier au formulaire
290
*
291
* @param    mixed   L'objet QuickForm du formulaire
292
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
293
* @param    string  label à afficher dans le formulaire
294
* @param    string  taille des colonnes de l'élément
295
* @param    string  taille des lignes de l'élément
296
* @param    string  valeur par défaut du formulaire
297
* @param    string  table source pour les valeurs du texte (inutile)
298
* @param    string  ce champs est il obligatoire? (required)
299
* @return   void
300
*/
301
function fichier(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
302
	//AJOUTER DES FICHIERS JOINTS
303
	$html_fichier= '';
304
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
305
		$requete = 'SELECT * FROM bazar_fichier_joint WHERE bfj_ce_fiche='.$GLOBALS['_BAZAR_']["id_fiche"];
306
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
307
		if (DB::isError ($resultat)) {
308
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
309
		}
310
 
311
		if ($resultat->numRows()>0) {
312
			$html_fichier = '<tr>'."\n".'<td colspan="2">'."\n".'<strong>'.BAZ_LISTE_FICHIERS_JOINTS.'</strong>'."\n";
313
			$tableAttr = array("class" => "bazar_table") ;
314
			$table = new HTML_Table($tableAttr) ;
315
			$entete = array (BAZ_FICHIER , BAZ_SUPPRIMER) ;
316
			$table->addRow($entete) ;
317
			$table->setRowType(0, "th") ;
318
 
319
			$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
320
			$lien_supprimer->addQueryString('action', $_GET['action']);
321
			$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
322
			$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
323
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
324
				$lien_supprimer->addQueryString('id_fichier', $ligne->bfj_id_fichier);
325
				$table->addRow(array('<a href="client/bazar/upload/'.$ligne->bfj_fichier.'"> '.$ligne->bfj_description.'</a>', // col 1 : le fichier et sa description
326
									 '<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_FICHIER.'\');" >'.BAZ_SUPPRIMER.'</a>'."\n")) ; // col 2 : supprimer
327
				$lien_supprimer->removeQueryString('id_fichier');
328
			}
329
			$table->altRowAttributes(1, array("class" => "ligne_impaire"), array("class" => "ligne_paire"));
330
			$table->updateColAttributes(1, array("align" => "center"));
331
			$html_fichier .= $table->toHTML()."\n".'</td>'."\n".'</tr>'."\n" ;
332
		}
333
	}
334
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
335
	$formtemplate->addElement('html', $html) ;
336
	if ($html_fichier!='') $formtemplate->addElement('html', $html_fichier) ;
337
	$formtemplate->addElement('text', 'texte_fichier'.$nom_bdd, BAZ_FICHIER_DESCRIPTION) ;
338
	$formtemplate->addElement('file', 'fichier'.$nom_bdd, BAZ_FICHIER_JOINT) ;
339
	$formtemplate->addRule('image', BAZ_IMAGE_VALIDE_REQUIS, '', '', 'client') ; //a completer pour checker l'image
340
	$formtemplate->setMaxFileSize($limite1);
341
	//gestion du champs obligatoire
342
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
343
		$formtemplate->addRule('texte_fichier'.$nom_bdd, BAZ_FICHIER_LABEL_REQUIS, 'required', '', 'client') ;
344
		$formtemplate->addRule('fichier'.$nom_bdd, BAZ_FICHIER_JOINT_REQUIS, 'required', '', 'client') ;
345
	}
346
}
347
 
348
/** image() - Ajoute un élément de type image au formulaire
349
*
350
* @param    mixed   L'objet QuickForm du formulaire
351
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
352
* @param    string  label à afficher dans le formulaire
353
* @param    string  taille maximum du fichier colonnes de l'élément
354
* @param    string  taille des lignes de l'élément
355
* @param    string  valeur par défaut du formulaire
356
* @param    string  table source pour les valeurs du texte (inutile)
357
* @param    string  ce champs est il obligatoire? (required)
358
* @return   void
359
*/
360
function image(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
361
	//AJOUTER UNE IMAGE
362
	$html_image= '';
363
	if (isset($GLOBALS['_BAZAR_']["id_fiche"])) {
364
		$requete = 'SELECT bf_url_image FROM bazar_fiche WHERE bf_id_fiche='.$GLOBALS['_BAZAR_']['id_fiche'];
365
		$resultat = & $GLOBALS['_BAZAR_']['db'] -> query($requete) ;
366
		if (DB::isError ($resultat)) {
367
			die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS['_BAZAR_']['db']->getDebugInfo()) ;
368
		}
369
 
370
		if ($resultat->numRows()>0) {
371
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
372
				$image=$ligne->bf_url_image;
373
			}
374
			if ($image!=NULL) {
375
				$lien_supprimer=$GLOBALS['_BAZAR_']['url'];
376
				$lien_supprimer->addQueryString('action', $_GET['action']);
377
				$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']["id_fiche"]);
378
				$lien_supprimer->addQueryString('typeannonce', $_REQUEST['typeannonce']);
379
				$lien_supprimer->addQueryString('image', 1);
380
				$html_image = '<tr>'."\n".
381
							  '<td>'."\n".'<img src="client/bazar/upload/'.$image.'" alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" width="130" height="130" />'."\n".'</td>'."\n".
382
							  '<td>'."\n".'<a href="'.$lien_supprimer->getURL().'" onclick="javascript:return confirm(\''.BAZ_CONFIRMATION_SUPPRESSION_IMAGE.'\');" >'.BAZ_SUPPRIMER.'</a><br /><br />'."\n".
383
							  '<strong>'.BAZ_POUR_CHANGER_IMAGE.'</strong><br />'."\n".'</td>'."\n".'</tr>'."\n";
384
			}
385
		}
386
	}
387
	$html ='<tr>'."\n".'<td colspan="2">'."\n".'<h4>'.$label.'</h4>'."\n".'</td>'."\n".'</tr>'."\n";
388
	$formtemplate->addElement('html', $html) ;
389
	if ($html_image!='') $formtemplate->addElement('html', $html_image) ;
390
	$formtemplate->addElement('file', 'image', BAZ_IMAGE) ;
391
	//TODO: controler si c'est une image
392
	$formtemplate->setMaxFileSize($limite1);
393
	//gestion du champs obligatoire
394
	if (($dans_moteur_de_recherche==0) && isset($obligatoire) && ($obligatoire==1)) {
395
		$formtemplate->addRule('image', BAZ_IMAGE_VALIDE_REQUIS, 'required', '', 'client') ;
396
	}
397
}
398
 
399
/** wikini() - Ajoute un wikini au formulaire
400
*
401
* @param    mixed   L'objet QuickForm du formulaire
402
* @param    string  numero du champs input du formulaire (pour le différencier d'autres champs du meme type dans ce formulaire)
403
* @param    string  label à afficher dans le formulaire
404
* @param    string  taille maximum du fichier colonnes de l'élément
405
* @param    string  taille des lignes de l'élément
406
* @param    string  valeur par défaut du formulaire
407
* @param    string  table source pour les valeurs du texte (inutile)
408
* @param    string  ce champs est il obligatoire? (required)
409
* @return   void
410
*/
411
function wikini(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
412
	return;
413
}
414
 
415
/** labelhtml() - Ajoute un élément de type textearea au formulaire
416
*
417
* @param    mixed   L'objet QuickForm du formulaire
418
* @param    string  nom de la table dans la base de donnée (pas utilisé)
419
* @param    string  label à afficher dans le formulaire
420
* @param    string  taille des colonnes de l'élément (pas utilisé)
421
* @param    string  taille des lignes de l'élément (pas utilisé)
422
* @param    string  valeur par défaut du formulaire (pas utilisé)
423
* @param    string  table source pour les valeurs du texte (pas utilisé)
424
* @param    string  ce champs est il obligatoire? (required) (pas utilisé)
425
* @return   void
426
*/
427
function labelhtml(&$formtemplate, $nom_bdd , $label, $limite1, $limite2, $defaut, $source, $obligatoire, $dans_moteur_de_recherche=0) {
428
	require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/html.php';
429
	$formhtml= new HTML_QuickForm_html('<p class="formulaire_element">'.$label.'</p>'."\n");
430
	$formtemplate->addElement($formhtml) ;
431
}
432
 
433
 
434
?>