Subversion Repositories Applications.bazar

Rev

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

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