Subversion Repositories Applications.annuaire

Rev

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

Rev Author Line No. Line
40 aurelien 1
<?php
2
// declare(encoding='UTF-8');
3
/**
4
 *
5
 * PHP version 5
6
 *
7
 * @category PHP
8
 * @package Framework
9
 * @author Aurelien PERONNET <aurelien@tela-botanica.org>
10
 * @copyright Tela-Botanica 2009
11
 * @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
12
 * @license   http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
13
 * @version   SVN: $$Id$$
14
 * @link /doc/framework/
15
 */
16
 
57 aurelien 17
include_once('initialisation.php');
40 aurelien 18
 
19
$identification = Config::get('identification');
20
 
57 aurelien 21
//ajout des variables d'identification
22
Registre::getInstance()->set('est_admin',true);
23
 
40 aurelien 24
// identification
25
// TODO : faire mieux (un wrapper pour gérer différents types d'objets)
183 aurelien 26
if(isset($_GET['id_utilisateur'])) {
224 aurelien 27
	$id = $_GET['id_utilisateur'];
183 aurelien 28
} else if (isset($_POST['id_utilisateur'])) {
224 aurelien 29
	$id = $_POST['id_utilisateur'];
183 aurelien 30
}
40 aurelien 31
 
224 aurelien 32
Registre::getInstance()->set('id_utilisateur',$id);
33
 
40 aurelien 34
/**
35
 * Fonction d'affichage de Papyrus, pour le corps de page
36
 */
37
function afficherContenuCorps() {
38
 
39
	$methode = '';
104 aurelien 40
 
41
	if (isset($_GET['m'])) {
42
		$methode = $_GET['m'];
43
		//unset($_GET['m']);
44
	} else {
45
		if (isset($_POST['m'])) {
46
			$methode = $_POST['m'];
47
			//unset($_POST['m']);
48
		} else {
49
				// Gestion des paramêtres définis dans Papyrus
311 aurelien 50
			if (isset($GLOBALS['_GEN_commun']['info_application']->m)) {
104 aurelien 51
					       $methode = $GLOBALS['_GEN_commun']['info_application']->m;
52
			}
40 aurelien 53
 
104 aurelien 54
			// Gestion des paramêtres définis dans Papyrus
55
			if (isset($GLOBALS['_GEN_commun']['info_application']->id_annuaire)) {
56
					        $_GET['id_annuaire'] = $GLOBALS['_GEN_commun']['info_application']->id_annuaire;
311 aurelien 57
			}
104 aurelien 58
		}
59
	}
60
 
51 aurelien 61
	$identification = Config::get('identification');
62
 
63
	if(!$identification) {
71 aurelien 64
		$controleur = new IdentificationControleur();
51 aurelien 65
		return $controleur->afficherFormulaireIdentification();
66
	}
67
 
40 aurelien 68
	switch ($methode) {
69
 
51 aurelien 70
		// Fonctions de liste d'ontologie
40 aurelien 71
		case 'liste_listes':
72
			$controleur = new OntologieControleur();
73
			$retour = $controleur->chargerListeListe();
74
			break;
75
 
76
		case 'liste_ontologie':
77
			$controleur = new OntologieControleur();
78
			$id = $_GET['id_liste'];
79
			$retour = $controleur->chargerListeOntologie($id);
80
			break;
81
 
82
		case 'liste_ontologie_formulaire_ajout':
83
			$valeurs = $_GET;
84
			$controleur = new OntologieControleur();
85
			$retour = $controleur->afficherFormulaireAjoutListeOntologie($valeurs);
86
			break;
87
 
88
		case 'liste_ontologie_formulaire_modification':
89
			$id_ontologie = $_GET['amo_id_ontologie'];
90
			$controleur = new OntologieControleur();
91
			$retour = $controleur->afficherFormulaireModificationListeOntologie($id_ontologie);
92
			break;
93
 
94
		case 'liste_ontologie_ajout':
95
			$controleur = new OntologieControleur();
96
			$retour = $controleur->ajouterNouvelleListeOntologie($_POST);
97
			break;
98
 
99
		case 'liste_ontologie_modification':
100
			$controleur = new OntologieControleur();
101
			$retour = $controleur->modifierListeOntologie($_POST);
102
			break;
103
 
104
		case 'liste_ontologie_suppression':
105
			$controleur = new OntologieControleur();
106
			$id_a_supprimer = $_GET['amo_id_ontologie'];
107
			$retour = $controleur->supprimerListeOntologie($id_a_supprimer);
108
			break;
109
 
51 aurelien 110
		// Fonction de gestion des métadonnées des annuaire
40 aurelien 111
		case 'metadonnee_formulaire_ajout':
112
			$controleur = new MetadonneeControleur();
113
			$valeurs = $_GET;
114
			$retour = $controleur->afficherFormulaireAjoutMetadonnee($valeurs);
115
			break;
116
 
117
		case 'metadonnee_formulaire_modification':
118
			$controleur = new MetadonneeControleur();
119
			$valeurs = $_GET;
120
			$retour = $controleur->afficherFormulaireModificationMetadonnee($valeurs);
121
			break;
122
 
123
		case 'metadonnee_ajout':
124
			$controleur = new MetadonneeControleur();
125
			$valeurs = $_POST;
126
			$retour = $controleur->ajouterNouvelleMetadonnee($valeurs);
127
			break;
128
 
129
		case 'metadonnee_modification':
130
			$controleur = new MetadonneeControleur();
131
			$valeurs = $_POST;
132
			$retour = $controleur->modifierMetadonnee($valeurs);
133
			break;
134
 
135
		case 'metadonnee_suppression':
136
			$controleur = new MetadonneeControleur();
57 aurelien 137
			$id_a_supprimer = $_GET['amc_id_champ'];
138
			$id_annuaire = $_GET['amc_ce_annuaire'];
139
			$retour = $controleur->supprimerMetadonnee($id_annuaire, $id_a_supprimer);
40 aurelien 140
			break;
141
 
51 aurelien 142
		// Fonctions de gestion des annuaires
40 aurelien 143
		case 'liste_annu':
144
			$controleur = new AnnuaireControleur();
145
			$retour = $controleur->chargerListeAnnuaire();
146
			break;
147
 
148
		case 'annuaire':
149
			$controleur = new AnnuaireControleur();
150
			$id = $_GET['id_annuaire'];
151
			$retour = $controleur->chargerAnnuaire($id);
152
			break;
153 aurelien 153
 
154
 
155
		case 'annuaire_formulaire_ajout':
158 aurelien 156
			$controleur = new GestionAnnuaireControleur();
153 aurelien 157
			$valeurs = $_POST;
158
			$retour = $controleur->afficherFormulaireAjoutAnnuaire($valeurs);
159
			break;
160
 
161
		case 'annuaire_ajout':
158 aurelien 162
			$controleur = new GestionAnnuaireControleur();
153 aurelien 163
			$valeurs = $_POST;
164
			$retour = $controleur->ajouterAnnuaire($valeurs);
165
			break;
166
 
158 aurelien 167
		case 'mappage_formulaire_ajout':
168
			$controleur = new MappageControleur();
169
			$id_annuaire = $_GET['id_annuaire'];
170
			$retour = $controleur->afficherFormulaireAjoutMappage($id_annuaire);
171
			break;
172
 
173
		case 'mappage_ajout':
174
			$controleur = new MappageControleur();
175
			$valeurs = $_POST;
176
			$retour = $controleur->ajouterNouveauMappage($valeurs);
177
			break;
178
 
179
 
153 aurelien 180
		// visualisation et recherche des inscrits
40 aurelien 181
		case 'annuaire_inscrits':
182
			$controleur = new AnnuaireControleur();
183
			$id = $_GET['id_annuaire'];
184
 
185
			if(isset($_GET['taille_page'])) {
186
				$taille_page = $_GET['taille_page'];
187
			} else  {
188
				$taille_page = 50;
189
			}
190
 
191
			if(isset($_GET['numero_page'])) {
192
				$numero_page = $_GET['numero_page'];
193
			} else {
194
				$numero_page = 1;
195
			}
196
			$retour = $controleur->afficherFormulaireRecherche($id);
197
			$retour .= $controleur->chargerAnnuaireListeInscrits($id, $numero_page, $taille_page);
198
			break;
183 aurelien 199
 
200
		case 'annuaire_afficher_page':
201
			$id_annuaire = $_GET['id_annuaire'];
202
			$page = $_GET['page'];
203
			$controleur = new AnnuaireControleur();
311 aurelien 204
			$retour = $controleur->afficherPage($id_annuaire, Registre::getInstance()->get('id_utilisateur'), $page);
183 aurelien 205
			break;
40 aurelien 206
 
207
		case 'annuaire_formulaire_inscription':
208
			$controleur = new AnnuaireControleur();
209
			$id = $_GET['id_annuaire'];
210
			$retour = $controleur->afficherFormulaireInscription($id);
211
			break;
212
 
213
		case 'annuaire_ajout_inscription':
214
			$valeurs = $_POST;
215
			$controleur = new AnnuaireControleur();
216
			$retour = $controleur->ajouterInscriptionTemporaire($valeurs);
217
			break;
218
 
219
		case 'annuaire_inscription_confirmation':
220
			$identifiant = $_GET['id'];
221
			$controleur = new AnnuaireControleur();
222
			$retour = $controleur->ajouterNouvelleInscription($identifiant);
223
			break;
224
 
225
		case 'annuaire_fiche_utilisateur_consultation':
226
			$identifiant_annuaire = $_GET['id_annuaire'];
227
			$controleur = new AnnuaireControleur();
224 aurelien 228
			$retour = $controleur->afficherFicheUtilisateur($identifiant_annuaire,Registre::getInstance()->get('id_utilisateur'));
40 aurelien 229
			break;
230
 
231
		case 'annuaire_fiche_resume_consultation':
232
			$identifiant_annuaire = $_GET['id_annuaire'];
233
			$controleur = new AnnuaireControleur();
224 aurelien 234
			$retour = $controleur->afficherFicheResumeUtilisateur($identifiant_annuaire,Registre::getInstance()->get('id_utilisateur'));
40 aurelien 235
			break;
176 aurelien 236
 
237
		case 'annuaire_fiche_gestion_consultation':
238
			$identifiant_annuaire = $_GET['id_annuaire'];
239
			$controleur = new AnnuaireControleur();
224 aurelien 240
			$retour = $controleur->gererInscriptionExterne($identifiant_annuaire,Registre::getInstance()->get('id_utilisateur'));
176 aurelien 241
			break;
40 aurelien 242
 
243
 
244
		case 'annuaire_formulaire_modification_inscription':
245
			$controleur = new AnnuaireControleur();
246
			$id_annuaire = $_GET['id_annuaire'];
224 aurelien 247
			$retour = $controleur->afficherFormulaireModificationInscription($id_annuaire, Registre::getInstance()->get('id_utilisateur'));
40 aurelien 248
 
249
			break;
250
 
251
		case 'annuaire_modification_inscription':
252
			$controleur = new AnnuaireControleur();
253
			$valeurs = $_POST;
254
			$retour = $controleur->modifierInscription($_POST);
255
 
256
			break;
257
 
258
		case 'annuaire_afficher_formulaire_ajout_image':
259
			$identifiant_annuaire = $_GET['id_annuaire'];
260
			$controleur = new AnnuaireControleur();
224 aurelien 261
			$retour = $controleur->afficherFormulaireUploadImage($identifiant_annuaire,Registre::getInstance()->get('id_utilisateur'));
40 aurelien 262
			break;
263
 
264
		case 'annuaire_ajouter_image':
265
			$identifiant_annuaire = $_GET['id_annuaire'];
266
			$infos_images = $_FILES;
267
			$controleur = new AnnuaireControleur();
224 aurelien 268
			$retour = $controleur->ajouterImageUtilisateur($identifiant_annuaire,Registre::getInstance()->get('id_utilisateur'),$infos_images);
40 aurelien 269
			break;
270
 
271
		case 'annuaire_suppression_inscription':
272
			$identifiant_annuaire = $_GET['id_annuaire'];
114 aurelien 273
			$id_utilisateur = $_GET['id_utilisateur'];
40 aurelien 274
			$controleur = new AnnuaireControleur();
114 aurelien 275
			$retour = $controleur->supprimerInscription($identifiant_annuaire,$id_utilisateur);
40 aurelien 276
			break;
277
 
114 aurelien 278
		case 'annuaire_formulaire_suppression_inscription':
279
			$identifiant_annuaire = $_GET['id_annuaire'];
280
			$id_utilisateur = $_GET['id_utilisateur'];
281
			$controleur = new AnnuaireControleur();
282
			$retour = $controleur->afficherFormulaireSuppressionInscription($identifiant_annuaire,$id_utilisateur);
283
			break;
284
 
40 aurelien 285
		case 'annuaire_afficher_formulaire_oubli_mdp':
286
			$identifiant_annuaire = $_GET['id_annuaire'];
287
			$controleur = new AnnuaireControleur();
288
			$retour = $controleur->afficherFormulaireOubliMotDePasse($identifiant_annuaire);
289
			break;
290
 
291
		case 'annuaire_oubli_mdp':
292
			$identifiant_annuaire = $_GET['id_annuaire'];
293
			$mail = $_POST['mail'];
294
			$controleur = new AnnuaireControleur();
295
			$retour = $controleur->reinitialiserMotDePasse($identifiant_annuaire, $mail);
296
			break;
297
 
51 aurelien 298
		// Fonctions de recherche d'inscrits
40 aurelien 299
		case 'annuaire_afficher_formulaire_recherche':
300
			$identifiant_annuaire = $_GET['id_annuaire'];
301
			$controleur = new AnnuaireControleur();
302
			$retour = $controleur->afficherFormulaireRecherche($identifiant_annuaire);
303
			break;
304
 
305
		case 'annuaire_recherche_inscrit':
183 aurelien 306
 
40 aurelien 307
			$identifiant_annuaire = $_GET['id_annuaire'];
308
			unset($_GET['id_annuaire']);
309
 
310
			if(isset($_GET['inclusive'])) {
311
				$exclusive = false;
312
				unset($_GET['inclusive']);
313
			} else {
314
				$exclusive = true;
315
			}
183 aurelien 316
 
317
			$controleur = new AnnuaireControleur();
40 aurelien 318
			$criteres = $_GET;
183 aurelien 319
 
40 aurelien 320
			$retour = $controleur->rechercherInscrit($identifiant_annuaire,$criteres, $exclusive);
321
			break;
322
 
51 aurelien 323
 
324
		// Fonctions cartographiques
104 aurelien 325
		case 'annuaire_inscrits_carto':
40 aurelien 326
			$identifiant_annuaire = $_GET['id_annuaire'];
183 aurelien 327
			$controleur = new AnnuaireControleur();
40 aurelien 328
			$criteres = $_GET;
329
			$retour = $controleur->rechercherInscritParlocalisation($identifiant_annuaire,$criteres);
330
		break;
331
 
332
		case 'annuaire_afficher_carte':
333
			$identifiant_annuaire = $_GET['id_annuaire'];
334
 
335
			$continent = null;
336
			$pays = null;
337
			$departement = null;
183 aurelien 338
 
339
			$controleur = new CartoControleur();
40 aurelien 340
 
341
			if(isset($_GET['continent'])) {
342
				$continent = $_GET['continent'];
343
			}
344
 
345
			if(isset($_GET['pays'])) {
346
				$pays = $_GET['pays'];
347
			}
348
 
349
			if(isset($_GET['departement'])) {
350
				$departement = $_GET['departement'];
351
			}
352
 
353
			$retour = $controleur->cartographier($identifiant_annuaire, $continent, $pays, $departement);
354
		break;
141 aurelien 355
 
356
		case 'annuaire_envoyer_message':
183 aurelien 357
 
358
			$controleur = new MessageControleur();
224 aurelien 359
 
360
			$id_annuaire = $_POST['id_annuaire'];
361
			$contenu_message = $_POST['contenu_message'];
362
			$sujet_message = $_POST['sujet_message'];
363
			$destinataires = array_keys($_POST['destinataires']);
364
			$criteres = unserialize(urldecode($_POST['criteres']));
365
 
366
			if(isset($_POST['envoyer_tous'])) {
367
				$retour = $controleur->envoyerMailParRequete($id_annuaire,Config::get('identification'), $criteres, $sujet_message, $contenu_message);
368
			} else {
369
				$retour = $controleur->envoyerMailDirectOuModere($id_annuaire ,Config::get('identification'), $destinataires, $sujet_message, $contenu_message);
370
			}
141 aurelien 371
		break;
372
 
51 aurelien 373
		// Fonctions de modération des messages
374
		case 'message_moderation_confirmation':
375
			if(isset($_GET['id'])) {
376
				$id_message = $_GET['id'];
377
			}
378
			$controleur = new MessageControleur();
379
			$retour = $controleur->envoyerMailModere($id_message);
380
		break;
381
 
382
		case 'message_moderation_suppression':
383
			if(isset($_GET['id'])) {
384
				$id_message = $_GET['id'];
385
			}
386
			$controleur = new MessageControleur();
387
			$retour = $controleur->supprimerMailModere($id_message);
388
		break;
389
 
57 aurelien 390
		case 'annuaire_bloquer_debloquer_utilisateur':
391
			$id_annuaire = $_GET['id_annuaire'];
392
			$id_utilisateur = $_GET['id_utilisateur'];
393
			$action = $_GET['action'];
394
			$controleur = new AnnuaireControleur();
395
			$retour = $controleur->bloquerDebloquerUtilisateur($id_annuaire, $id_utilisateur, $action);
396
		break;
250 aurelien 397
 
398
		case 'annuaire_recherche_doublons':
399
			$id_annuaire = $_GET['id_annuaire'];
400
			$controleur = new AnnuaireControleur();
401
			$retour = $controleur->rechercherDoublons($id_annuaire);
402
		break;
57 aurelien 403
 
40 aurelien 404
		default:
405
			$controleur = new AnnuaireControleur();
406
			$retour = $controleur->index();
407
		break;
408
	}
409
 
410
	if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
411
		$retour = mb_convert_encoding($retour, Config::get('sortie_encodage'),Config::get('appli_encodage'));
412
	}
413
 
414
	return $retour;
415
}
416
 
417
function afficherContenuTete() {
78 aurelien 418
	// c'est très moche, il ne faudrait pas faire comme ceci
419
	if(function_exists('GEN_stockerStyleExterne')) {
104 aurelien 420
		GEN_stockerStyleExterne('annuaire_papyrus',Config::get('base_url_styles').'squelettes/css/annuaire_complexe.css');
421
		GEN_stockerStyleExterne('annuaire_papyrus_simple',Config::get('base_url_styles').'squelettes/css/annuaire.css');
78 aurelien 422
	}
40 aurelien 423
	return '';
424
}
425
 
426
function afficherContenuPied() {
427
	return '';
428
}
429
 
430
function afficherContenuNavigation() {
431
	return '';
432
}
433
 
434
function afficherContenuMenu() {
435
 
436
	if(isset($_GET['id_annuaire'])) {
437
		$id_annuaire = $_GET['id_annuaire'];
104 aurelien 438
	} else {
439
		$id_annuaire = Config::get('annuaire_defaut');
40 aurelien 440
	}
104 aurelien 441
 
442
	$controleur = new NavigationControleur();
443
	return $controleur->afficherContenuMenu($id_annuaire,true);
40 aurelien 444
}
445
 
446
?>