Subversion Repositories Applications.annuaire

Rev

Rev 40 | Rev 57 | 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
 
17
// La fonction autolad doit être appelée avant tout autre chose dans l'application.
18
// Sinon, rien ne sera chargé.
19
require_once dirname(__FILE__).'/framework/autoload.inc.php';
20
Application::setChemin(__FILE__);
21
Application::setInfo(Config::get('info'));
22
mb_internal_encoding(Config::get('appli_encodage'));
23
 
24
// c'est très moche, il ne faudrait pas faire comme ceci
25
if(function_exists('GEN_stockerStyleExterne')) {
26
	GEN_stockerStyleExterne('annuaire_papyrus',GEN_CHEMIN_PAP.'applications/annuaire/squelettes/css/annuaire_complexe.css');
27
}
28
 
29
// Autoload pour cette application
30
function __autoload($nom_classe) {
31
    // Tableau des chemins à inclure pour trouver une classe relatif à ce fichier
32
    $chemins = array(
33
        'bibliotheque'.DS.'noyau',
34
        'bibliotheque'.DS.'pear',
35
        'bibliotheque'.DS.'utilitaires',
36
        'composants',
37
        'composants'.DS.'cartographie');
38
    foreach ($chemins as $chemin) {
39
        $fichier_a_inclure = dirname(__FILE__).DS.$chemin.DS.$nom_classe.'.php';
40
 
41
        if (file_exists($fichier_a_inclure)) {
42
            include_once $fichier_a_inclure;
43
            return null;
44
        }
45
    }
46
}
47
 
48
 
49
$identification = Config::get('identification');
50
$annuaire_controleur = new AnnuaireControleur();
51
 
52
$annuaire_controleur->chargerModele('AnnuaireModele');
53
$id = $annuaire_controleur->AnnuaireModele->obtenirIdParMail('1',$identification);
54
 
55
// identification
56
// TODO : faire mieux (un wrapper pour gérer différents types d'objets)
57
if(isset($_GET['id_utilisateur'])) {
58
	$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
59
} else if ($_POST['id_utilisateur']) {
60
	$GLOBALS['id_utilisateur'] = $_POST['id_utilisateur'];
61
} else {
62
	$GLOBALS['id_utilisateur'] = $id;
63
}
64
 
65
/**
66
 * Fonction d'affichage de Papyrus, pour le corps de page
67
 */
68
function afficherContenuCorps() {
69
 
70
	$methode = '';
71
	// Si l'utilisateur est authentifié
72
	if (isset($_GET['m'])) {
73
		$methode = $_GET['m'];
74
		unset($_GET['m']);
75
	} else {
76
		if (isset($_POST['m'])) {
77
			$methode = $_POST['m'];
78
			unset($_POST['m']);
79
		}
80
	}
81
 
51 aurelien 82
	$identification = Config::get('identification');
83
 
84
	if(!$identification) {
85
		$controleur = new AnnuaireControleur();
86
		return $controleur->afficherFormulaireIdentification();
87
	}
88
 
40 aurelien 89
	switch ($methode) {
90
 
51 aurelien 91
		// Fonctions de liste d'ontologie
40 aurelien 92
		case 'liste_listes':
93
			$controleur = new OntologieControleur();
94
			$retour = $controleur->chargerListeListe();
95
			break;
96
 
97
		case 'liste_ontologie':
98
			$controleur = new OntologieControleur();
99
			$id = $_GET['id_liste'];
100
			$retour = $controleur->chargerListeOntologie($id);
101
			break;
102
 
103
		case 'liste_ontologie_formulaire_ajout':
104
			$valeurs = $_GET;
105
			$controleur = new OntologieControleur();
106
			$retour = $controleur->afficherFormulaireAjoutListeOntologie($valeurs);
107
			break;
108
 
109
		case 'liste_ontologie_formulaire_modification':
110
			$id_ontologie = $_GET['amo_id_ontologie'];
111
			$controleur = new OntologieControleur();
112
			$retour = $controleur->afficherFormulaireModificationListeOntologie($id_ontologie);
113
			break;
114
 
115
		case 'liste_ontologie_ajout':
116
			$controleur = new OntologieControleur();
117
			$retour = $controleur->ajouterNouvelleListeOntologie($_POST);
118
			break;
119
 
120
		case 'liste_ontologie_modification':
121
			$controleur = new OntologieControleur();
122
			$retour = $controleur->modifierListeOntologie($_POST);
123
			break;
124
 
125
		case 'liste_ontologie_suppression':
126
			$controleur = new OntologieControleur();
127
			$id_a_supprimer = $_GET['amo_id_ontologie'];
128
			$retour = $controleur->supprimerListeOntologie($id_a_supprimer);
129
			break;
130
 
51 aurelien 131
		// Fonction de gestion des métadonnées des annuaire
40 aurelien 132
		case 'metadonnee_formulaire_ajout':
133
			$controleur = new MetadonneeControleur();
134
			$valeurs = $_GET;
135
			$retour = $controleur->afficherFormulaireAjoutMetadonnee($valeurs);
136
			break;
137
 
138
		case 'metadonnee_formulaire_modification':
139
			$controleur = new MetadonneeControleur();
140
			$valeurs = $_GET;
141
			$retour = $controleur->afficherFormulaireModificationMetadonnee($valeurs);
142
			break;
143
 
144
		case 'metadonnee_ajout':
145
			$controleur = new MetadonneeControleur();
146
			$valeurs = $_POST;
147
			$retour = $controleur->ajouterNouvelleMetadonnee($valeurs);
148
			break;
149
 
150
		case 'metadonnee_modification':
151
			$controleur = new MetadonneeControleur();
152
			$valeurs = $_POST;
153
			$retour = $controleur->modifierMetadonnee($valeurs);
154
			break;
155
 
156
		case 'metadonnee_suppression':
157
			$controleur = new MetadonneeControleur();
158
			$id_a_supprimer = $_GET['amc_id_metadonnee'];
159
			$retour = $controleur->supprimerMetadonnee($id_a_supprimer);
160
			break;
161
 
51 aurelien 162
		// Fonctions de gestion des annuaires
40 aurelien 163
		case 'liste_annu':
164
			$controleur = new AnnuaireControleur();
165
			$retour = $controleur->chargerListeAnnuaire();
166
			break;
167
 
168
		case 'annuaire':
169
			$controleur = new AnnuaireControleur();
170
			$id = $_GET['id_annuaire'];
171
			$retour = $controleur->chargerAnnuaire($id);
172
			break;
173
		default:
174
 
175
		case 'annuaire_inscrits':
176
			$controleur = new AnnuaireControleur();
177
			$id = $_GET['id_annuaire'];
178
 
179
			if(isset($_GET['taille_page'])) {
180
				$taille_page = $_GET['taille_page'];
181
			} else  {
182
				$taille_page = 50;
183
			}
184
 
185
			if(isset($_GET['numero_page'])) {
186
				$numero_page = $_GET['numero_page'];
187
			} else {
188
				$numero_page = 1;
189
			}
190
			$retour = $controleur->afficherFormulaireRecherche($id);
191
			$retour .= $controleur->chargerAnnuaireListeInscrits($id, $numero_page, $taille_page);
192
			break;
193
 
194
		case 'annuaire_formulaire_inscription':
195
			$controleur = new AnnuaireControleur();
196
			$id = $_GET['id_annuaire'];
197
			$retour = $controleur->afficherFormulaireInscription($id);
198
			break;
199
 
200
		case 'annuaire_ajout_inscription':
201
			$valeurs = $_POST;
202
			$controleur = new AnnuaireControleur();
203
			$retour = $controleur->ajouterInscriptionTemporaire($valeurs);
204
			break;
205
 
206
		case 'annuaire_inscription_confirmation':
207
			$identifiant = $_GET['id'];
208
			$controleur = new AnnuaireControleur();
209
			$retour = $controleur->ajouterNouvelleInscription($identifiant);
210
			break;
211
 
212
		case 'annuaire_fiche_utilisateur_consultation':
213
			$identifiant_annuaire = $_GET['id_annuaire'];
214
			$controleur = new AnnuaireControleur();
215
			$retour = $controleur->afficherFicheUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
216
			break;
217
 
218
		case 'annuaire_fiche_resume_consultation':
219
			$identifiant_annuaire = $_GET['id_annuaire'];
220
			$controleur = new AnnuaireControleur();
221
			$retour = $controleur->afficherFicheResumeUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
222
			break;
223
 
224
 
225
		case 'annuaire_formulaire_modification_inscription':
226
			$controleur = new AnnuaireControleur();
227
			$id_annuaire = $_GET['id_annuaire'];
228
			$retour = $controleur->afficherFormulaireModificationInscription($id_annuaire, $GLOBALS['id_utilisateur']);
229
 
230
			break;
231
 
232
		case 'annuaire_modification_inscription':
233
			$controleur = new AnnuaireControleur();
234
			$valeurs = $_POST;
235
			$retour = $controleur->modifierInscription($_POST);
236
 
237
			break;
238
 
239
		case 'annuaire_afficher_formulaire_ajout_image':
240
			$identifiant_annuaire = $_GET['id_annuaire'];
241
			$controleur = new AnnuaireControleur();
242
			$retour = $controleur->afficherFormulaireUploadImage($identifiant_annuaire,$GLOBALS['id_utilisateur']);
243
			break;
244
 
245
		case 'annuaire_ajouter_image':
246
			$identifiant_annuaire = $_GET['id_annuaire'];
247
			$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
248
			$infos_images = $_FILES;
249
			$controleur = new AnnuaireControleur();
250
			$retour = $controleur->ajouterImageUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur'],$infos_images);
251
			break;
252
 
253
 
254
		case 'annuaire_suppression_inscription':
255
			$identifiant_annuaire = $_GET['id_annuaire'];
256
			$controleur = new AnnuaireControleur();
257
			$retour = $controleur->supprimerInscription($identifiant_annuaire,$GLOBALS['id_utilisateur']);
258
			break;
259
 
260
		case 'annuaire_afficher_formulaire_oubli_mdp':
261
			$identifiant_annuaire = $_GET['id_annuaire'];
262
			$controleur = new AnnuaireControleur();
263
			$retour = $controleur->afficherFormulaireOubliMotDePasse($identifiant_annuaire);
264
			break;
265
 
266
		case 'annuaire_oubli_mdp':
267
			$identifiant_annuaire = $_GET['id_annuaire'];
268
			$mail = $_POST['mail'];
269
			$controleur = new AnnuaireControleur();
270
			$retour = $controleur->reinitialiserMotDePasse($identifiant_annuaire, $mail);
271
			break;
272
 
51 aurelien 273
		// Fonctions de recherche d'inscrits
40 aurelien 274
		case 'annuaire_afficher_formulaire_recherche':
275
			$identifiant_annuaire = $_GET['id_annuaire'];
276
			$controleur = new AnnuaireControleur();
277
			$retour = $controleur->afficherFormulaireRecherche($identifiant_annuaire);
278
			break;
279
 
280
		case 'annuaire_recherche_inscrit':
281
			$identifiant_annuaire = $_GET['id_annuaire'];
282
			unset($_GET['id_annuaire']);
283
 
284
			if(isset($_GET['inclusive'])) {
285
				$exclusive = false;
286
				unset($_GET['inclusive']);
287
			} else {
288
				$exclusive = true;
289
			}
290
 
291
			$criteres = $_GET;
292
			$controleur = new AnnuaireControleur();
293
			$retour = $controleur->rechercherInscrit($identifiant_annuaire,$criteres, $exclusive);
294
			break;
295
 
51 aurelien 296
 
297
		// Fonctions cartographiques
40 aurelien 298
		case 'annuaire_recherche_inscrit_carto':
299
			$identifiant_annuaire = $_GET['id_annuaire'];
300
 
301
			$criteres = $_GET;
302
			$controleur = new AnnuaireControleur();
303
			$retour = $controleur->rechercherInscritParlocalisation($identifiant_annuaire,$criteres);
304
		break;
305
 
306
		case 'annuaire_afficher_carte':
307
			$identifiant_annuaire = $_GET['id_annuaire'];
308
 
309
			$continent = null;
310
			$pays = null;
311
			$departement = null;
312
 
313
			if(isset($_GET['continent'])) {
314
				$continent = $_GET['continent'];
315
			}
316
 
317
			if(isset($_GET['pays'])) {
318
				$pays = $_GET['pays'];
319
			}
320
 
321
			if(isset($_GET['departement'])) {
322
				$departement = $_GET['departement'];
323
			}
324
 
325
			$controleur = new CartoControleur();
326
			$retour = $controleur->cartographier($identifiant_annuaire, $continent, $pays, $departement);
327
		break;
328
 
51 aurelien 329
 
330
		// Fonctions de modération des messages
331
		case 'message_moderation_confirmation':
332
			if(isset($_GET['id'])) {
333
				$id_message = $_GET['id'];
334
			}
335
			$controleur = new MessageControleur();
336
			$retour = $controleur->envoyerMailModere($id_message);
337
		break;
338
 
339
		case 'message_moderation_suppression':
340
			if(isset($_GET['id'])) {
341
				$id_message = $_GET['id'];
342
			}
343
			$controleur = new MessageControleur();
344
			$retour = $controleur->supprimerMailModere($id_message);
345
		break;
346
 
40 aurelien 347
		default:
348
			$controleur = new AnnuaireControleur();
349
			$retour = $controleur->index();
350
		break;
351
	}
352
 
353
	if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
354
		$retour = mb_convert_encoding($retour, Config::get('sortie_encodage'),Config::get('appli_encodage'));
355
	}
356
 
357
	return $retour;
358
}
359
 
360
function afficherContenuTete() {
361
	return '';
362
}
363
 
364
function afficherContenuPied() {
365
	return '';
366
}
367
 
368
function afficherContenuNavigation() {
369
	return '';
370
}
371
 
372
function afficherContenuMenu() {
373
 
374
	if(isset($_GET['id_annuaire'])) {
375
		$id_annuaire = $_GET['id_annuaire'];
376
	}
377
 
378
	$menu = '<ul>';
379
	$menu .= '<li><a href="http://162.38.234.9/papyrus_bp/page:annuaire_admin?m=liste_listes"> G&eacute;rer les liste d\'ontologie </a></li>';
380
	$menu .= '<li><a href="http://162.38.234.9/papyrus_bp/page:annuaire_admin?m=liste_annu"> G&eacute;rer les annuaires </a></li>';
381
	$menu .= '</ul>';
382
 
383
	return $menu;
384
}
385
 
386
?>