Subversion Repositories Applications.annuaire

Rev

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

Rev Author Line No. Line
4 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');
4 aurelien 18
 
153 aurelien 19
// on récupère les variables d'identification
40 aurelien 20
$identification = Config::get('identification');
21
$annuaire_controleur = new AnnuaireControleur();
78 aurelien 22
if($identification) {
23
	$id = $annuaire_controleur->obtenirIdParMail('1', $identification);
24
} else {
25
	$id = false;
26
}
40 aurelien 27
 
57 aurelien 28
Registre::getInstance()->set('est_admin',false);
29
Registre::getInstance()->set('identification_id',$id);
30
Registre::getInstance()->set('identification_mail',$identification);
31
 
40 aurelien 32
// identification
33
// TODO : faire mieux (un wrapper pour gérer différents types d'objets)
34
if(isset($_GET['id_utilisateur'])) {
35
	$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
51 aurelien 36
} else if (isset($_POST['id_utilisateur'])) {
40 aurelien 37
	$GLOBALS['id_utilisateur'] = $_POST['id_utilisateur'];
38
} else {
39
	$GLOBALS['id_utilisateur'] = $id;
40
}
41
 
78 aurelien 42
 
4 aurelien 43
/**
44
 * Fonction d'affichage de Papyrus, pour le corps de page
45
 */
46
function afficherContenuCorps() {
47
 
78 aurelien 48
	// TODO : rendre cette partie modulable.
49
	if(isset($_GET['id_annuaire'])) {
50
		$id_annuaire = $_GET['id_annuaire'];
51
	} else {
52
		$_GET['id_annuaire'] = Config::get('annuaire_defaut');
53
	}
104 aurelien 54
 
4 aurelien 55
	$methode = '';
78 aurelien 56
 
4 aurelien 57
	if (isset($_GET['m'])) {
20 aurelien 58
		$methode = $_GET['m'];
40 aurelien 59
		//unset($_GET['m']);
20 aurelien 60
	} else {
61
		if (isset($_POST['m'])) {
62
			$methode = $_POST['m'];
40 aurelien 63
			//unset($_POST['m']);
78 aurelien 64
		} else {
65
				// Gestion des paramêtres définis dans Papyrus
66
			if (isset($GLOBALS['_GEN_commun']['info_application']->m)) {
104 aurelien 67
					       $methode = $GLOBALS['_GEN_commun']['info_application']->m;
78 aurelien 68
			}
69
 
70
			// Gestion des paramêtres définis dans Papyrus
71
			if (isset($GLOBALS['_GEN_commun']['info_application']->id_annuaire)) {
72
					        $_GET['id_annuaire'] = $GLOBALS['_GEN_commun']['info_application']->id_annuaire;
73
			}
20 aurelien 74
		}
4 aurelien 75
	}
76
 
57 aurelien 77
	$identification = Config::get('identification');
78
 
79
	if(!$identification) {
78 aurelien 80
 
81
		switch ($methode) {
82
			case 'annuaire_formulaire_inscription':
83
				$controleur = new AnnuaireControleur();
84
				$id = $_GET['id_annuaire'];
85
				$retour = $controleur->afficherFormulaireInscription($id);
86
				break;
87
 
88
			case 'annuaire_ajout_inscription':
89
				$valeurs = $_POST;
90
				$controleur = new AnnuaireControleur();
91
				$retour = $controleur->ajouterInscriptionTemporaire($valeurs);
92
				break;
93
 
94
			case 'annuaire_inscription_confirmation':
95
				$identifiant = $_GET['id'];
96
				$controleur = new AnnuaireControleur();
97
				$retour = $controleur->ajouterNouvelleInscription($identifiant);
98
				break;
141 aurelien 99
 
100
			case 'annuaire_afficher_formulaire_oubli_mdp':
101
				$identifiant_annuaire = $_GET['id_annuaire'];
102
				$controleur = new AnnuaireControleur();
103
				$retour = $controleur->afficherFormulaireOubliMotDePasse($identifiant_annuaire);
104
			break;
78 aurelien 105
 
141 aurelien 106
			case 'annuaire_oubli_mdp':
107
				$identifiant_annuaire = $_GET['id_annuaire'];
108
				$mail = $_POST['mail'];
109
				$controleur = new AnnuaireControleur();
110
				$retour = $controleur->reinitialiserMotDePasse($identifiant_annuaire, $mail);
111
			break;
153 aurelien 112
 
113
			case 'annuaire_afficher_carte':
114
				$identifiant_annuaire = $_GET['id_annuaire'];
115
 
116
				$continent = null;
117
				$pays = null;
118
				$departement = null;
119
 
120
				if(isset($_GET['continent'])) {
121
					$continent = $_GET['continent'];
122
				}
123
 
124
				if(isset($_GET['pays'])) {
125
					$pays = $_GET['pays'];
126
				}
127
 
128
				if(isset($_GET['departement'])) {
129
					$departement = $_GET['departement'];
130
				}
131
 
132
				$controleur = new CartoControleur();
133
				$retour = $controleur->cartographier($identifiant_annuaire, $continent, $pays, $departement);
134
			break;
141 aurelien 135
 
78 aurelien 136
			default :
137
				$id = $_GET['id_annuaire'];
138
				$controleur = new IdentificationControleur();
139
				$retour = $controleur->afficherFormulaireIdentification($id);
140
			break;
141
		}
142
 
143
		if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
144
			$retour = mb_convert_encoding($retour, Config::get('sortie_encodage'),Config::get('appli_encodage'));
145
		}
146
 
147
		return $retour;
57 aurelien 148
	}
149
 
78 aurelien 150
 
4 aurelien 151
	switch ($methode) {
152
 
153
		case 'annuaire_inscrits':
154
			$controleur = new AnnuaireControleur();
155
			$id = $_GET['id_annuaire'];
7 aurelien 156
 
157
			if(isset($_GET['taille_page'])) {
158
				$taille_page = $_GET['taille_page'];
159
			} else  {
160
				$taille_page = 50;
161
			}
162
 
163
			if(isset($_GET['numero_page'])) {
164
				$numero_page = $_GET['numero_page'];
165
			} else {
166
				$numero_page = 1;
167
			}
20 aurelien 168
			$retour = $controleur->afficherFormulaireRecherche($id);
169
			$retour .= $controleur->chargerAnnuaireListeInscrits($id, $numero_page, $taille_page);
4 aurelien 170
			break;
171
 
172
		case 'annuaire_fiche_utilisateur_consultation':
173
			$identifiant_annuaire = $_GET['id_annuaire'];
174
			$controleur = new AnnuaireControleur();
40 aurelien 175
			$retour = $controleur->afficherFicheUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
4 aurelien 176
			break;
177
 
40 aurelien 178
		case 'annuaire_fiche_resume_consultation':
179
			$identifiant_annuaire = $_GET['id_annuaire'];
180
			$controleur = new AnnuaireControleur();
181
			$retour = $controleur->afficherFicheResumeUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
182
			break;
20 aurelien 183
 
57 aurelien 184
		case 'annuaire_fiche_gestion_consultation':
185
			$identifiant_annuaire = $_GET['id_annuaire'];
186
			$controleur = new AnnuaireControleur();
153 aurelien 187
			$retour = $controleur->gererInscriptionExterne($identifiant_annuaire,Registre::getInstance()->get('identification_id'));
57 aurelien 188
			break;
40 aurelien 189
 
57 aurelien 190
 
20 aurelien 191
		case 'annuaire_formulaire_modification_inscription':
192
			$controleur = new AnnuaireControleur();
193
			$id_annuaire = $_GET['id_annuaire'];
153 aurelien 194
			$retour = $controleur->afficherFormulaireModificationInscription($id_annuaire, Registre::getInstance()->get('identification_id'));
20 aurelien 195
			break;
196
 
197
		case 'annuaire_modification_inscription':
198
			$controleur = new AnnuaireControleur();
199
			$valeurs = $_POST;
200
			$retour = $controleur->modifierInscription($_POST);
201
 
202
			break;
203
 
13 aurelien 204
		case 'annuaire_afficher_formulaire_ajout_image':
205
			$identifiant_annuaire = $_GET['id_annuaire'];
206
			$controleur = new AnnuaireControleur();
153 aurelien 207
			$retour = $controleur->afficherFormulaireUploadImage($identifiant_annuaire,Registre::getInstance()->get('identification_id'), $_GET);
13 aurelien 208
			break;
209
 
210
		case 'annuaire_ajouter_image':
211
			$identifiant_annuaire = $_GET['id_annuaire'];
40 aurelien 212
			$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
13 aurelien 213
			$infos_images = $_FILES;
214
			$controleur = new AnnuaireControleur();
153 aurelien 215
			$retour = $controleur->ajouterImageUtilisateur($identifiant_annuaire,Registre::getInstance()->get('identification_id'),$infos_images);
13 aurelien 216
			break;
217
 
20 aurelien 218
 
219
		case 'annuaire_suppression_inscription':
220
			$identifiant_annuaire = $_GET['id_annuaire'];
114 aurelien 221
			$id_utilisateur = $_GET['id_utilisateur'];
20 aurelien 222
			$controleur = new AnnuaireControleur();
153 aurelien 223
			$retour = $controleur->supprimerInscription($identifiant_annuaire,Registre::getInstance()->get('identification_id'));
20 aurelien 224
			break;
225
 
114 aurelien 226
		case 'annuaire_formulaire_suppression_inscription':
227
			$identifiant_annuaire = $_GET['id_annuaire'];
228
			$id_utilisateur = $_GET['id_utilisateur'];
229
			$controleur = new AnnuaireControleur();
153 aurelien 230
			$retour = $controleur->afficherFormulaireSuppressionInscription($identifiant_annuaire,Registre::getInstance()->get('identification_id'));
114 aurelien 231
			break;
232
 
20 aurelien 233
		case 'annuaire_afficher_formulaire_recherche':
234
			$identifiant_annuaire = $_GET['id_annuaire'];
235
			$controleur = new AnnuaireControleur();
236
			$retour = $controleur->afficherFormulaireRecherche($identifiant_annuaire);
237
			break;
238
 
239
		case 'annuaire_recherche_inscrit':
240
			$identifiant_annuaire = $_GET['id_annuaire'];
241
			unset($_GET['id_annuaire']);
242
 
243
			if(isset($_GET['inclusive'])) {
244
				$exclusive = false;
245
				unset($_GET['inclusive']);
246
			} else {
247
				$exclusive = true;
248
			}
249
 
250
			$criteres = $_GET;
40 aurelien 251
 
20 aurelien 252
			$controleur = new AnnuaireControleur();
253
			$retour = $controleur->rechercherInscrit($identifiant_annuaire,$criteres, $exclusive);
254
			break;
255
 
40 aurelien 256
		case 'annuaire_afficher_carte':
257
			$identifiant_annuaire = $_GET['id_annuaire'];
258
 
259
			$continent = null;
260
			$pays = null;
261
			$departement = null;
262
 
263
			if(isset($_GET['continent'])) {
264
				$continent = $_GET['continent'];
265
			}
266
 
267
			if(isset($_GET['pays'])) {
268
				$pays = $_GET['pays'];
269
			}
270
 
271
			if(isset($_GET['departement'])) {
272
				$departement = $_GET['departement'];
273
			}
274
 
275
			$controleur = new CartoControleur();
276
			$retour = $controleur->cartographier($identifiant_annuaire, $continent, $pays, $departement);
277
		break;
153 aurelien 278
 
279
		case 'annuaire_inscrits_carto':
280
			$identifiant_annuaire = $_GET['id_annuaire'];
281
			$criteres = $_GET;
282
			$controleur = new AnnuaireControleur();
283
			$retour = $controleur->rechercherInscritParlocalisation($identifiant_annuaire,$criteres);
284
		break;
40 aurelien 285
 
51 aurelien 286
		case 'annuaire_envoyer_message':
287
 
288
			$id_annuaire = $_GET['id_annuaire'];
289
			$contenu_message = $_GET['contenu_message'];
290
			$sujet_message = $_GET['sujet_message'];
291
			$destinataires = array_keys($_GET['destinataires']);
292
 
293
			$controleur = new MessageControleur();
294
			$retour = $controleur->envoyerMailDirectOuModere($id_annuaire ,Config::get('identification'), $destinataires, $sujet_message, $contenu_message);
295
		break;
104 aurelien 296
 
297
		// Fonctions de modération des messages
298
		case 'message_moderation_confirmation':
299
			if(isset($_GET['id'])) {
300
				$id_message = $_GET['id'];
301
			}
302
			$controleur = new MessageControleur();
303
			$retour = $controleur->envoyerMailModere($id_message);
304
		break;
51 aurelien 305
 
104 aurelien 306
		case 'message_moderation_suppression':
307
			if(isset($_GET['id'])) {
308
				$id_message = $_GET['id'];
309
			}
310
			$controleur = new MessageControleur();
311
			$retour = $controleur->supprimerMailModere($id_message);
312
		break;
313
 
57 aurelien 314
		case 'inscription_lettre_actualite':
315
			$controleur = new AnnuaireControleur();
316
			$id_annuaire = $_GET['id_annuaire'];
317
			$retour = $controleur->inscriptionLettreActualite($id_annuaire, $GLOBALS['id_utilisateur']);
318
 
319
			if(isset($_GET['retour'])) {
320
				$retour = $controleur->gererInscriptionExterne($identifiant_annuaire,$GLOBALS['id_utilisateur']);
321
			}
322
		break;
323
 
324
		case 'desinscription_lettre_actualite':
325
			$controleur = new AnnuaireControleur();
326
			$id_annuaire = $_GET['id_annuaire'];
327
			$retour = $controleur->desinscriptionLettreActualite($id_annuaire, $GLOBALS['id_utilisateur']);
328
 
329
			if(isset($_GET['retour'])) {
330
				$retour = $controleur->gererInscriptionExterne($identifiant_annuaire,$GLOBALS['id_utilisateur']);
331
			}
332
		break;
333
 
40 aurelien 334
		default:
335
			$controleur = new AnnuaireControleur();
336
			$retour = $controleur->afficherFicheUtilisateur(Config::get('annuaire_defaut'),$GLOBALS['id_utilisateur']);
337
		break;
4 aurelien 338
	}
339
 
340
	if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
341
		$retour = mb_convert_encoding($retour, Config::get('sortie_encodage'),Config::get('appli_encodage'));
342
	}
13 aurelien 343
 
344
	return $retour;
4 aurelien 345
}
346
 
347
function afficherContenuTete() {
57 aurelien 348
 
78 aurelien 349
	// c'est très moche, il ne faudrait pas faire comme ceci
350
	if(function_exists('GEN_stockerStyleExterne')) {
104 aurelien 351
		GEN_stockerStyleExterne('annuaire_papyrus',Config::get('base_url_styles').'squelettes/css/annuaire_complexe.css');
352
		GEN_stockerStyleExterne('annuaire_papyrus_simple',Config::get('base_url_styles').'squelettes/css/annuaire.css');
78 aurelien 353
	}
354
	return "";
4 aurelien 355
}
356
 
357
function afficherContenuPied() {
157 aurelien 358
	return '';
4 aurelien 359
}
360
 
361
function afficherContenuNavigation() {
362
	return '';
363
}
364
 
365
function afficherContenuMenu() {
40 aurelien 366
 
51 aurelien 367
	// TODO : rendre cette partie modulable.
40 aurelien 368
	if(isset($_GET['id_annuaire'])) {
369
		$id_annuaire = $_GET['id_annuaire'];
370
	} else {
371
		$id_annuaire = Config::get('annuaire_defaut');
372
	}
373
 
78 aurelien 374
	$identification = Config::get('identification');
40 aurelien 375
 
78 aurelien 376
	if($identification) {
114 aurelien 377
		$controleur = new NavigationControleur();
378
		$menu = $controleur->afficherContenuMenu($id_annuaire,false);
379
	} else {
380
		$menu = '';
78 aurelien 381
	}
153 aurelien 382
 
383
	return '';
78 aurelien 384
 
40 aurelien 385
	return $menu;
4 aurelien 386
}
387
 
388
?>