Subversion Repositories Applications.annuaire

Rev

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