Subversion Repositories Applications.papyrus

Rev

Rev 1185 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1185 Rev 1292
Line 8... Line 8...
8
// | Les fonctions de annuaire_moteur.php                                           |
8
// | Les fonctions de annuaire_moteur.php                                           |
9
// +--------------------------------------------------------------------------------+
9
// +--------------------------------------------------------------------------------+
10
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> 		  		        |
10
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> 		  		        |
11
// +--------------------------------------------------------------------------------+
11
// +--------------------------------------------------------------------------------+
12
//
12
//
13
// $Id: annuaire_backoffice.fonct.php,v 1.8 2007-01-04 16:33:09 alexandre_tb Exp $
13
// $Id: annuaire_backoffice.fonct.php,v 1.9 2007-04-06 08:35:46 neiluj Exp $
Line 14... Line 14...
14
 
14
 
15
 
15
 
16
/** function mkengine ()
16
/** function mkengine ()
17
*
17
*
18
*
18
*
19
*
19
*
Line 20... Line 20...
20
*	@return
20
*	@return
21
*/
21
*/
22
 
-
 
Line 23... Line 22...
23
include_once PAP_CHEMIN_API_PEAR.'Pager/Pager.php' ;
22
 
24
include_once PAP_CHEMIN_API_PEAR.'HTML/Table.php';
23
include_once 'Pager/Pager.php' ;
25
include_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/select.php';
24
include_once 'HTML/Table.php';
26
 
25
 
Line 52... Line 51...
52
                    'mode' => 'Jumping',
51
                    'mode' => 'Jumping',
53
                    'delta' => 5,
52
                    'delta' => 5,
54
                    'itemData' => $donnees
53
                    'itemData' => $donnees
55
             ) ;
54
             ) ;
56
    $pager = & Pager::factory($param_pager);
55
    $pager = & Pager::factory($param_pager);
-
 
56
	
57
	    
57
	
58
    $mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "cotisant", "pays", "sort", "T_REPONSE", "lettre","statut") ;
58
    $mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "cotisant", "pays", "sort", "T_REPONSE", "lettre","statut") ;
-
 
59
    
59
    // Deux cas , soit on a cliqué sur rechercher, soit on a cliqué sur un lien
60
    // Deux cas , soit on a cliqué sur rechercher, soit on a cliqué sur un lien
60
    foreach ($mes_vars as $key=>$value) {
61
    foreach ($mes_vars as $key=>$value) {
61
        if (!$bouton) {     // on a cliqué sur un lien
62
        if (!$bouton) {     // on a cliqué sur un lien
62
            if (empty($HTTP_POST_VARS[$value])) {
63
            if (empty($HTTP_POST_VARS[$value])) {
Line 68... Line 69...
68
                $$value = "" ;
69
                $$value = "" ;
69
            } else {
70
            } else {
70
                $$value = $HTTP_POST_VARS[$value] ;
71
                $$value = $HTTP_POST_VARS[$value] ;
71
            }
72
            }
72
        }
73
        }
73
    }    
74
    }
-
 
75
    // Comptage du nombre total de données dans la table (hors CACHER = 1)
-
 
76
    $requete_nbre_inscrit = "select count(*) as CPT from ".INS_ANNUAIRE;
-
 
77
    $resultat_nbre_inscrit = $GLOBALS['ins_db']->query($requete_nbre_inscrit) ;
-
 
78
    
-
 
79
 
-
 
80
  if ($resultat_nbre_inscrit->numRows() == 1) {
-
 
81
        $tmp_nb = $resultat_nbre_inscrit->fetchRow(DB_FETCHMODE_OBJECT);
-
 
82
        $nbr_total = $tmp_nb->CPT;
-
 
83
        if ($nbr_total > 0) $chaine = "parmi $nbr_total données";
-
 
84
        else die("<B>Erreur</B> lors du comptage des structures ($nbr_total trouvées) : $query");
-
 
85
    }
-
 
86
  else die("<B>Erreur</B> lors du comptage des structures : $query");
-
 
87
 
-
 
88
 
-
 
89
  // fin comptage
Line 74... Line 90...
74
 
90
 
75
  	$ret = '';
91
  	$ret = '';
76
	$ret .= '<h1>'.AM_L_TITRE.'</h1>'."\n" ;
92
	$ret .= '<h1>'.AM_L_TITRE.' '.$chaine.'</h1>'."\n" ;
77
  // construction du moteur de str
-
 
Line 78... Line -...
78
 	$ret .= '<div>';
-
 
79
 
-
 
80
	// Le formulaire de recherche avec QuickForm
-
 
81
	$formulaire = new HTML_QuickForm('formulaire_recherche', 'post', str_replace('&amp;', '&', $GLOBALS['ins_url']->getURL()));
-
 
82
 	
-
 
83
 	$formulaire->addElement('text', 'recherche', AM_L_RECHERCHER);
93
  // construction du moteur de str
84
 	
94
 
Line -... Line 95...
-
 
95
    $ret .= '<form action="'.$GLOBALS['ins_url']->getURL().'" method="post">'."\n";
-
 
96
    $ret .= '<table summary="recherche">'."\n";
-
 
97
    
-
 
98
    // ligne de recherche
85
 	$requete = 'select GC_ID, GC_NAME from gen_COUNTRY where GC_LOCALE="fr"';
99
    $ret .= "<tr>\n";
Line -... Line 100...
-
 
100
    $ret .= "<td>".AM_L_RECHERCHER." :\n</td>\n<td>";
86
    $pays = &$GLOBALS['ins_db']->getAssoc ($requete);
101
    $ret .= form_mk_chaineI(isset ($_REQUEST['recherche']) ? stripslashes($_REQUEST['recherche']) : '', "recherche")."&nbsp;";
-
 
102
    $ret .= '</td><td colspan="4">'.AM_L_PAYS." : \n" ;
87
    
103
    
88
    $pays = array_merge (array('tous' => 'Tous les pays'), $pays);
-
 
89
    
104
    // formulaire contenant les pays, avec par défaut soit le pays en cours
-
 
105
    // soit "tous les pays"
90
    if (DB::isError($pays)) {
106
    $liste_pays = new ListeDePays($GLOBALS['ins_db']) ;
91
		return $pays->getMessage().'<br />'.$pays->getDebugInfo();
107
    $tableau_pays = $liste_pays->getListePays(INS_LANGUE_DEFAUT) ;
92
	}
108
    
-
 
109
    $ret .= "<select name=\"pays\">\n" ;
93
 
110
    $ret .= "<option value=\"tous\">Tous les pays</option>\n" ;
-
 
111
    foreach ($tableau_pays as $codeIso => $labelPays) {
94
	$select = new HTML_QuickForm_select ('pays', AM_L_PAYS, $pays, array ('class' => 'projet_asso')) ;
112
        $ret .= '<option value="'.$codeIso.'"' ;
-
 
113
        if (!empty($pays)) {
-
 
114
                if ($pays == $codeIso) $ret .= " selected" ;
-
 
115
        }
95
	$formulaire->addElement($select) ;
116
        $ret .= '>'.$labelPays.'</option>'."\n" ;
-
 
117
    }
96
	$formulaire->addElement('text', 'nom', AM_L_NOM);
118
    $ret .= "</select>\n" ;
97
	$formulaire->addElement('text', 'prenom', AM_L_PRENOM);
119
    $ret .= "</td></tr>\n" ;
98
	$formulaire->addElement('text', 'ville', AM_L_VILLE);
120
  
99
	
-
 
100
	if (defined('INS_CHAMPS_NOM_DEPARTEMENT')) {
121
	$ret .= "<tr>\n";
101
		$departement = & $GLOBALS['ins_db']->getAssoc('select GFD_ID, CONCAT(GFD_ID,\' - \',GFD_NAME) as GFD_NAME from gen_FRENCH_DPT');
122
    $ret .= "<td>".AM_L_NOM." :\n</td><td>";
102
		$departement = array_merge (array ('tous' => 'Tous'), $departement);
-
 
103
		
123
    $ret .= form_mk_chaineI(isset ($_REQUEST['nom']) ? stripslashes($_REQUEST['nom']) : '', "nom")."&nbsp;</td>\n<td>" ;
104
		$select_dpt = new HTML_QuickForm_select ('departement', AM_L_DEPARTEMENT, $departement, array ('class' => 'projet_asso')) ;
124
    $ret .= AM_L_PRENOM."&nbsp;:</td>\n<td>".form_mk_chaineI(isset ($_REQUEST['prenom']) ? stripslashes($_REQUEST['prenom']) : '', "prenom")."&nbsp;</td>\n<td class=\"insLabel\">" ;
105
		$formulaire->addElement($select_dpt);
125
    $ret .= AM_L_VILLE."&nbsp;:</td>\n<td>".form_mk_chaineI(isset ($_REQUEST['ville']) ? stripslashes($_REQUEST['ville']) : '', "ville")."&nbsp;</td>" ;
106
	}
126
    $ret .= "</tr><tr>\n" ;
-
 
127
    $ret .= "<td>".AM_L_DEPARTEMENT."&nbsp;: </td>\n<td>" ;
107
	$formulaire->addElement('text', 'mail', AM_L_MAIL);
128
    
108
	
129
    // Construction du <select> des départements
-
 
130
    $requete_dpt = 'select '.INS_CHAMPS_ID_DEPARTEMENT.', '.INS_CHAMPS_NOM_DEPARTEMENT.' from '.INS_TABLE_DPT ;
109
	$grp = array(20 => 20, 50 => 50, 100 => 100) ;
131
    $resultat_dpt = $GLOBALS['ins_db']->query($requete_dpt) ;
110
	$select_grp = new HTML_QuickForm_select ('T_REPONSE', '', $grp, array ('class' => 'projet_asso')) ;
132
    if (DB::isError($resultat_dpt)) {
-
 
133
    	echo 'Echec de la requete<br />'.$requete_dpt.'<br />'.$resultat_dpt->getMessage();	
111
	$formulaire->addElement($select_grp);
134
    }
-
 
135
    $ret .= "<select name=\"dept\">\n" ;
-
 
136
    $ret .= "<option value=\"tous\">tous</option>\n" ;
112
	$formulaire->addElement('submit', 'bouton', AM_L_RECHERCHER);
137
    while ($ligne_dpt = $resultat_dpt->fetchRow(DB_FETCHMODE_ASSOC)) {
-
 
138
        $ret .= '<option value="'.$ligne_dpt[INS_CHAMPS_ID_DEPARTEMENT].'"' ;
113
	foreach ($mes_vars as $key=>$value) {
139
        if (isset ($_REQUEST['dept']) && $_REQUEST['dept'] == $ligne_dpt[INS_CHAMPS_ID_DEPARTEMENT]) $ret .= " selected" ;
-
 
140
        $ret .= '>'.$ligne_dpt[INS_CHAMPS_ID_DEPARTEMENT].' - '.$ligne_dpt[INS_CHAMPS_NOM_DEPARTEMENT].'</option>'."\n" ;
114
		if (isset($_POST[$value])) {
141
    }
115
			$default[$value] = $_POST[$value] ;
142
    $ret .= "</select></td>\n" ;
116
		}
143
    
Line -... Line 144...
-
 
144
    $ret .= '<td>'.AM_L_MAIL.'&nbsp;: </td><td colspan="3">'.form_mk_chaineI(isset ($_REQUEST['mail']) ? stripslashes($_REQUEST['mail']) : '', "mail")."</td>\n" ;
-
 
145
    $ret .= "</tr>" ;
-
 
146
    
-
 
147
    // Les statuts des inscrits
-
 
148
 
-
 
149
    $ret .= "<tr>\n";
-
 
150
    $ret .= "<td>\n";
-
 
151
    $ret .= AM_L_GRP_RES." : </td>" ;
-
 
152
    $ret .= '<td>'.$pager->getperpageselectbox (50 , 200, 50 , false ,'%d').'</td>'."\n" ;
Line 117... Line 153...
117
	}
153
    $ret .= '<td colspan="4">'."\n";
118
	$formulaire->setDefaults($_POST);
154
    $ret .= "<input type=\"submit\" value=\"".AM_L_RECHERCHER."\" name =\"bouton\">\n";
119
 
155
    $ret .= "</td></tr></table></form>\n";
120
    $ret .= '<br />'.$formulaire->toHTML();
156
    
Line 129... Line 165...
129
        $ret .= "</a> \n";
165
        $ret .= "</a> \n";
130
	}
166
	}
131
	$GLOBALS['ins_url']->addQueryString ('lettre', 'tous') ;
167
	$GLOBALS['ins_url']->addQueryString ('lettre', 'tous') ;
132
	$ret .= " <a href=\"".$GLOBALS['ins_url']->getURL().'">'.AM_L_TOUS."</a>\n" ;
168
	$ret .= " <a href=\"".$GLOBALS['ins_url']->getURL().'">'.AM_L_TOUS."</a>\n" ;
133
    $ret .= "</div>\n" ;
169
    $ret .= "</div>\n" ;
134
    
-
 
135
    // Comptage du nombre total de données dans la table (hors CACHER = 1)
-
 
136
    $requete_nbre_inscrit = "select count(*) as CPT from ".INS_ANNUAIRE;
-
 
137
    $resultat_nbre_inscrit = $GLOBALS['ins_db']->query($requete_nbre_inscrit) ;
-
 
138
    if ($resultat_nbre_inscrit->numRows() == 1) {
-
 
139
    	$tmp_nb = $resultat_nbre_inscrit->fetchRow(DB_FETCHMODE_OBJECT);
-
 
140
        $nbr_total = $tmp_nb->CPT;
-
 
141
        $chaine = " sur $nbr_total entrées";
-
 
142
        if ($nbr_total <= 0) $ret .= "<B>Erreur</B> lors du comptage des structures ($nbr_total trouvées) : $requete_nbre_inscrit";
-
 
143
    }
-
 
144
  else $ret .=  "<B>Erreur</B> lors du comptage des structures : $requete_nbre_inscrit";
-
 
145
  // fin comptage
-
 
146
  
-
 
147
    $ret .= '<p class="zone_info">'.$nbr_final.' résultat(s)'.$chaine.'</p>' ;
170
    $ret .= '<div>'.$nbr_final.' résultat(s)</div>' ;
148
    $GLOBALS['ins_url']->removeQueryString('lettre') ;
171
    $GLOBALS['ins_url']->removeQueryString('lettre') ;
Line 149... Line 172...
149
    
172
    
150
    // Menu Ajouter un inscrit
173
    // Menu Ajouter un inscrit
151
    $GLOBALS['ins_url']->addQueryString('ajouter', '1') ;
174
    $GLOBALS['ins_url']->addQueryString('ajouter', '1') ;
152
    $ret .= '<div><a href="'.$GLOBALS['ins_url']->getURL().'">'.INS_AJOUT_MEMBRE.'</a></div>'."\n";
175
    $ret .= '<div><a href="'.$GLOBALS['ins_url']->getURL().'">'.INS_AJOUT_MEMBRE.'</a></div>'."\n";
Line 153... Line 176...
153
	$data  = $pager->getPageData();
176
	$data  = $pager->getPageData();
154
	
-
 
155
	$table = new HTML_Table(array ('class' => 'table_bazar')) ;
177
	
156
	if (defined('INS_CHAMPS_VILLE')) {
178
	$table = new HTML_Table(array ('class' => 'table_bazar')) ;
157
		$table->addRow(array(
179
	$table->addRow(array(
158
			'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_NOM.'">Identit&eacute;</a>',
180
				'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_NOM.'">Identit&eacute;</a>',
159
			'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_MAIL.'">Adresse mail</a>',
-
 
160
			'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_VILLE.'">'.AM_L_VILLE.'</a>',
-
 
161
			'Pays ou Dpt (fr)'	
-
 
162
			), '', 'TH') ;
-
 
163
	} else {
-
 
164
		$table->addRow(array(
-
 
165
			'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_NOM.'">Identit&eacute;</a>',
181
				'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_MAIL.'">Adresse mail</a>',
166
			'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_MAIL.'">Adresse mail</a>',			
182
				'<a href="'.$GLOBALS['ins_url']->getURL().'&amp;sort='.INS_CHAMPS_VILLE.'">'.AM_L_VILLE.'</a>',
167
			'Pays ou Dpt (fr)'	
-
 
Line 168... Line 183...
168
			), '', 'TH') ;
183
				'Pays ou Dpt (fr)'	
169
	}
184
			), '', 'TH') ;
170
	
185
	
171
	$debut = isset($_REQUEST['pageID']) ? $_REQUEST['pageID'] : 1 ; 
186
	$debut = isset($_REQUEST['pageID']) ? $_REQUEST['pageID'] : 1 ; 
172
	for ($i = ($debut - 1) * $_REQUEST['setPerPage']; 
187
	for ($i = ($debut - 1) * $_REQUEST['setPerPage']; 
173
				$i < $_REQUEST['setPerPage'] * $debut;
188
				$i < $_REQUEST['setPerPage'] * $debut;
174
				$i++) {
189
				$i++) {
175
		// On teste s'il y une valeur, si oui on ajoute la ligne
-
 
176
		if (isset ($data[$i])) {
190
		// On teste s'il y une valeur, si oui on ajoute la ligne
177
			$urlPop = $GLOBALS['ins_url']->getURL().'&amp;'.INS_CHAMPS_ID.'='.$data[$i][INS_CHAMPS_ID];
191
		if (isset ($data[$i])) {
178
			if (defined('INS_CHAMPS_VILLE')) {
-
 
179
				$ligne_inscrit = array ("<a href=\"$urlPop\">".$data[$i][INS_CHAMPS_NOM].' '.$data[$i][INS_CHAMPS_PRENOM].
-
 
180
								'</a>', $data[$i][INS_CHAMPS_MAIL], $data[$i][INS_CHAMPS_VILLE]) ;
-
 
181
			} else {
-
 
Line 182... Line 192...
182
				$ligne_inscrit = array ("<a href=\"$urlPop\">".$data[$i][INS_CHAMPS_NOM].' '.$data[$i][INS_CHAMPS_PRENOM].
192
			$urlPop = $GLOBALS['ins_url']->getURL().'&amp;'.INS_CHAMPS_ID.'='.$data[$i][INS_CHAMPS_ID];
183
								'</a>', $data[$i][INS_CHAMPS_MAIL]) ;
193
			$ligne_inscrit = array ("<a href=\"$urlPop\">".$data[$i][INS_CHAMPS_NOM].' '.$data[$i][INS_CHAMPS_PRENOM].
184
			}
194
								'</a>', $data[$i][INS_CHAMPS_MAIL], $data[$i][INS_CHAMPS_VILLE]) ;
185
								
195
								
186
			// Pour la france on met le département, sinon on laisse le nom du pays
-
 
187
			if ($data[$i][INS_CHAMPS_PAYS] != 'fr') {
196
			// Pour la france on met le département, sinon on laisse le nom du pays
188
				array_push ($ligne_inscrit, $data[$i][INS_CHAMPS_LABEL_PAYS]);
197
			if ($data[$i][INS_CHAMPS_PAYS] != 'fr') {
189
			} else {
198
				array_push ($ligne_inscrit, $data[$i][INS_CHAMPS_LABEL_PAYS]);
190
				if (defined('INS_CHAMPS_NOM_DEPARTEMENT')) {
199
			} else {
191
			        $req_dpt = 'select '.INS_CHAMPS_NOM_DEPARTEMENT.' from '.INS_TABLE_DPT.",".INS_ANNUAIRE.
200
		        $req_dpt = 'select '.INS_CHAMPS_NOM_DEPARTEMENT.' from '.INS_TABLE_DEPARTEMENT.",".INS_ANNUAIRE.
192
								" where ".INS_ANNUAIRE.'.'.INS_CHAMPS_ID.'='.$data[$i][INS_CHAMPS_ID] ;
-
 
193
			        $req_dpt .= " and ".INS_ANNUAIRE.'.'.INS_CHAMPS_DEPARTEMENT.'='.INS_TABLE_DPT.'.'
-
 
194
			        					.INS_CHAMPS_ID_DEPARTEMENT ;
-
 
195
			        $resultat_dpt = $GLOBALS['ins_db']->query($req_dpt) ;
201
							" where ".INS_ANNUAIRE.'.'.INS_CHAMPS_ID.'='.$data[$i][INS_CHAMPS_ID] ;
196
			        if (DB::isError($resultat_dpt)) {
202
		        $req_dpt .= " and ".INS_ANNUAIRE.'.'.INS_CHAMPS_ID_DEPARTEMENT.'='.INS_TABLE_DEPARTEMENT.'.'
197
			        	echo $resultat_dpt->getMessage().$resultat_dpt->getDebugInfo();		        	
-
 
198
			        }
203
		        					.INS_CHAMPS_ID_DEPARTEMENT ;
Line 199... Line 204...
199
			        $ligne_dpt = $resultat_dpt->fetchRow(DB_FETCHMODE_ASSOC) ;
204
		        $resultat_dpt = $GLOBALS['ins_db']->query($req_dpt) ;
200
					array_push ($ligne_inscrit, $ligne_dpt[INS_CHAMPS_NOM_DEPARTEMENT]) ;
205
		        $ligne_dpt = $resultat_dpt->fetchRow(DB_FETCHMODE_ASSOC) ;
201
				}
206
				array_push ($ligne_inscrit, $ligne_dpt[INS_CHAMPS_NOM_DEPARTEMENT]) ;
Line 212... Line 217...
212
    			.'">'.AM_L_MAIL_SELECTION."</a></div>\n" ;
217
    			.'">'.AM_L_MAIL_SELECTION."</a></div>\n" ;
Line 213... Line 218...
213
 
218
 
214
    return $ret;
219
    return $ret;
Line -... Line 220...
-
 
220
}
-
 
221
 
-
 
222
/** function form_mk_chaineI () Renvoie une balise de type <input>
-
 
223
*
-
 
224
*   @param  string  l'attribut value de la balise
-
 
225
*   @param  string  l'attibut name de la balise
-
 
226
*   @param  string  la classe CSS
-
 
227
*   @return string  HTML
-
 
228
*/
-
 
229
function form_mk_chaineI($value="", $name, $class="insInputForm")
-
 
230
{
-
 
231
    return "<input type=\"text\" size=\"15\" value=\"$value\" name=\"$name\" class=\"$class\">";
-
 
232
}
-
 
233
 
-
 
234
function form_mk_select($value="", $name="", $class="insInputForm") {
-
 
235
	$res = "<select name=\"$name\" class=\"$class\">\n" ;
-
 
236
	$res .= "<option value=\"1\"" ;
-
 
237
	if ($value == 1) $res .= " selected" ;
-
 
238
	$res .= ">Cotisants</option>\n" ;
-
 
239
	$res .= "<option value=\"2\"" ;
-
 
240
	if ($value == 2) $res .= " selected" ;
-
 
241
	$res .= ">Non cotisants</option>\n" ;
-
 
242
	$res .= "<option value=\"3\"" ;	
-
 
243
	if ($value == 3 || $value == "") $res .= " selected" ;
-
 
244
	$res .= ">Tous</option>\n" ;
-
 
245
	$res .= "</select>\n" ;
Line 215... Line 246...
215
}
246
	return $res ;
216
 
247
  }
Line 217... Line 248...
217
 
248
 
218
function mkquery()
249
function mkquery()
Line 219... Line 250...
219
{
250
{
220
    
-
 
221
	// Requete sur l'annuaire pour extraire le nom, prénom, ville, nom du département (jointure),
251
    
222
	// l'état de la cotisation (jointure) 
252
	// Requete sur l'annuaire pour extraire le nom, prénom, ville, nom du département (jointure),
223
	
-
 
224
	// le tableau suivant contient tous les champs de la table annuaire_tela sur lesquels on peut effectuer une recherche
-
 
225
	if (defined('INS_CHAMPS_DEPARTEMENT')) {
-
 
226
		$fields_annu = array("nom" => INS_CHAMPS_NOM, "prenom" => INS_CHAMPS_PRENOM , "mail" => INS_CHAMPS_MAIL ,
-
 
227
		"dept" => INS_CHAMPS_DEPARTEMENT, "pays" => INS_CHAMPS_PAYS ) ;
-
 
228
	}
-
 
229
	else {
-
 
Line -... Line 253...
-
 
253
	// l'état de la cotisation (jointure) 
-
 
254
	
230
		$fields_annu = array("nom" => INS_CHAMPS_NOM, "prenom" => INS_CHAMPS_PRENOM , "mail" => INS_CHAMPS_MAIL ,
255
	// le tableau suivant contient tous les champs de la table annuaire_tela sur lesquels on peut effectuer une recherche
231
		 "pays" => INS_CHAMPS_PAYS ) ;
256
	$fields_annu = array("nom" => INS_CHAMPS_NOM, "prenom" => INS_CHAMPS_PRENOM , "mail" => INS_CHAMPS_MAIL , "ville" => INS_CHAMPS_VILLE,
232
	}
257
			"dept" => INS_CHAMPS_DEPARTEMENT, "pays" => INS_CHAMPS_PAYS ) ;
233
	if (defined('INS_CHAMPS_VILLE')) $fields_annu["ville"]=INS_CHAMPS_VILLE;
258
 
Line 234... Line 259...
234
    $mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "pays", "sort", "T_REPONSE", "lettre", "statut") ;
259
    $mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "cotisant", "pays", "sort", "T_REPONSE", "lettre","statut") ;
Line 235... Line 260...
235
 
260
 
Line 236... Line 261...
236
	$queries = "SELECT ".INS_ANNUAIRE.".*" ;
261
	$queries = "select ".INS_ANNUAIRE.".*" ;
237
    $queries .= ", ".INS_TABLE_PAYS.'.'.INS_CHAMPS_LABEL_PAYS ;
262
    $queries .= ", ".INS_TABLE_PAYS.'.'.INS_CHAMPS_LABEL_PAYS ;
238
	$queries .= " FROM ".INS_ANNUAIRE ;
263
	$queries .= " from ".INS_ANNUAIRE ;
239
    $queries .= ",".INS_TABLE_PAYS ;
264
    $queries .= ",".INS_TABLE_PAYS ;
240
 
265
 
241
	// Construction en fonction des champs saisies
266
	// Construction en fonction des champs saisies
Line 261... Line 286...
261
		$or_flag = false ;
286
		$or_flag = false ;
262
		foreach($fields_annu as $key=>$valeur) {
287
		foreach($fields_annu as $key=>$valeur) {
263
            if ($key != "") {
288
            if ($key != "") {
264
                if ($key == "pays") {
289
                if ($key == "pays") {
265
                    if (!isset($_REQUEST[$key]) || $_REQUEST[$key] == "tous") {
290
                    if (!isset($_REQUEST[$key]) || $_REQUEST[$key] == "tous") {
266
                    	$where .= ' '.INS_CHAMPS_PAYS." like '%'"." and ";
291
                    	$where .= " and ".INS_CHAMPS_PAYS." like '%'";
267
                    } else {
292
                    } else {
268
                    	$where .= " $valeur like \"%".$_REQUEST[$key]."%\""." and " ;
293
                    	$where .= " and $valeur like \"%".$_REQUEST[$key]."%\"" ;
269
                    }
294
                    }
270
                } else {
295
                } else {
271
                    if ($key == "dept") {
296
                    if ($key == "dept") {
272
                        if (isset($_REQUEST[$key]) && $_REQUEST[$key] != "tous") {
297
                        if (isset($_REQUEST[$key]) && $_REQUEST[$key] != "tous") {
273
                            $where .= " and ".INS_CHAMPS_DEPARTEMENT."=".$_REQUEST[$key] ;
298
                            $where .= " and ".INS_CHAMPS_DEPARTEMENT."=".$_REQUEST[$key] ;
274
                            if ($fields_annu["pays"] != "fr") $where .= " and ".INS_CHAMPS_PAYS."=\"fr\"" ;
299
                            if ($fields_annu["pays"] != "fr") $where .= " and ".INS_CHAMPS_PAYS."=\"fr\"" ;
275
                        }
300
                        }
Line 276... Line 301...
276
                        
301
                        
277
                    } else {
302
                    } else {
278
                        if (isset ($_REQUEST[$key]) && $or_flag) {
303
                        if (isset ($_REQUEST[$key]) && $or_flag) {
279
                        	$where .= "$valeur like \"%".$_REQUEST[$key]."%\" and " ; ;
304
                        	$where .= "$valeur like \"%".$_REQUEST[$key]."%\"" ;
280
                        } else {
305
                        } else {
281
                        	$where .= "$valeur like \"%%\" and " ; ;
306
                        	$where .= "$valeur like \"%%\"" ;
-
 
307
                        }
282
                        }                        
308
                        if ($key != "ville") $where .= " and " ;
283
                    }
309
                    }
284
                }
310
                }
285
                $or_flag = true ;
311
                $or_flag = true ;
286
            }
312
            }
287
		}
-
 
288
		$where = substr($where, 0, strlen($where)-5);
313
		}
289
		// ici le cas ou rien n'a été saisie du tout, on affiche tout
314
		// ici le cas ou rien n'a été saisie du tout, on affiche tout
290
		if (!$or_flag) {
315
		if (!$or_flag) {
291
				$where .= INS_CHAMPS_NOM." like '%')" ;
316
				$where .= INS_CHAMPS_NOM." like '%')" ;
292
		}
317
		}
Line 293... Line 318...
293
	}
318
	}
294
 
319
 
295
    if (isset($_REQUEST['lettre'])) {
320
    if (isset($_REQUEST['lettre'])) {
296
    	if ($_REQUEST['lettre'] == 'tous') $_REQUEST['lettre'] = '';
321
    	if ($_REQUEST['lettre'] == 'tous') $_REQUEST['lettre'] = '';
297
    	$where = ' WHERE '.INS_CHAMPS_NOM.' LIKE "'.$_REQUEST['lettre'].'%"' ;
322
    	$where = ' where '.INS_CHAMPS_NOM.' like "'.$_REQUEST['lettre'].'%"' ;
Line 298... Line 323...
298
    }
323
    }
299
    $where .= " and ".INS_ANNUAIRE.".".INS_CHAMPS_PAYS."=".INS_TABLE_PAYS.".".INS_CHAMPS_ID_PAYS."" ;
324
    $where .= " and ".INS_ANNUAIRE.".".INS_CHAMPS_PAYS."=".INS_TABLE_PAYS.".".INS_CHAMPS_ID_PAYS."" ;
Line 307... Line 332...
307
 
332
 
308
	if (isset ($_REQUEST['lettre']) && $_REQUEST['lettre'] == "tous") $_REQUEST['lettre'] = "" ;
333
	if (isset ($_REQUEST['lettre']) && $_REQUEST['lettre'] == "tous") $_REQUEST['lettre'] = "" ;
Line 309... Line 334...
309
    if (!isset ($_REQUEST['lettre'])) $_REQUEST['lettre'] = '' ;
334
    if (!isset ($_REQUEST['lettre'])) $_REQUEST['lettre'] = '' ;
Line 310... Line 335...
310
	
335
	
311
 
336
 
312
    $queries .= $where.' AND '.INS_CHAMPS_ID.'!=0';
337
    $queries .= $where ;
Line 324... Line 349...
324
						str_replace ('&amp;', '&', $GLOBALS['ins_url']->getURL()), '', '') ;
349
						str_replace ('&amp;', '&', $GLOBALS['ins_url']->getURL()), '', '') ;
325
	$formulaire->construitFormulaire(str_replace ('&amp;', '&', $GLOBALS['ins_url']->getURL())) ;
350
	$formulaire->construitFormulaire(str_replace ('&amp;', '&', $GLOBALS['ins_url']->getURL())) ;
Line 326... Line 351...
326
	
351
	
327
	if (isset($_REQUEST['ajouter_v'])) {
352
	if (isset($_REQUEST['ajouter_v'])) {
328
		if ($formulaire->validate()) {
353
		if ($formulaire->validate()) {
329
			$id_utilisateur = insertion($formulaire->getSubmitValues()) ;
-
 
330
			
-
 
331
			// Appel des actions desinscriptions des applications clientes
-
 
332
		        $d = dir(GEN_CHEMIN_CLIENT);
-
 
333
				while (false !== ($repertoire = $d->read())) {
-
 
334
					if (file_exists(GEN_CHEMIN_CLIENT.$repertoire.GEN_SEP.$repertoire.'.inscription.inc.php'))
-
 
335
					include_once GEN_CHEMIN_CLIENT.$repertoire.GEN_SEP.$repertoire.'.inscription.inc.php' ;   
-
 
336
				}
-
 
337
					$d->close();
354
			insertion($formulaire->getSubmitValues()) ;
338
			if (INS_CHAMPS_LETTRE != '' && isset ($valeurs['lettre'])) {
355
			if (INS_CHAMPS_LETTRE != '' && isset ($valeurs['lettre'])) {
339
				inscription_lettre(INS_MAIL_INSCRIPTION_LISTE) ;
356
				inscription_lettre(INS_MAIL_INSCRIPTION_LISTE) ;
340
			}
357
			}
341
		    return mkengine();
358
		    return mkengine();
342
        } 
359
        } 
343
	}
360
	}
344
	return $formulaire->toHTML();	
361
	return $formulaire->toHTML();	
345
}
-
 
346
?>
362
}
-
 
363
?>