Rev 40 | Rev 71 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
// declare(encoding='UTF-8');
/**
*
* PHP version 5
*
* @category PHP
* @package Framework
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @copyright Tela-Botanica 2009
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*/
// La fonction autolad doit être appelée avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
require_once dirname(__FILE__).'/framework/autoload.inc.php';
Application::setChemin(__FILE__);
Application::setInfo(Config::get('info'));
mb_internal_encoding(Config::get('appli_encodage'));
// c'est très moche, il ne faudrait pas faire comme ceci
if(function_exists('GEN_stockerStyleExterne')) {
GEN_stockerStyleExterne('annuaire_papyrus',GEN_CHEMIN_PAP.'applications/annuaire/squelettes/css/annuaire_complexe.css');
}
// Autoload pour cette application
function __autoload($nom_classe) {
// Tableau des chemins à inclure pour trouver une classe relatif à ce fichier
$chemins = array(
'bibliotheque'.DS.'noyau',
'bibliotheque'.DS.'pear',
'bibliotheque'.DS.'utilitaires',
'composants',
'composants'.DS.'cartographie');
foreach ($chemins as $chemin) {
$fichier_a_inclure = dirname(__FILE__).DS.$chemin.DS.$nom_classe.'.php';
if (file_exists($fichier_a_inclure)) {
include_once $fichier_a_inclure;
return null;
}
}
}
$identification = Config::get('identification');
$annuaire_controleur = new AnnuaireControleur();
$annuaire_controleur->chargerModele('AnnuaireModele');
$id = $annuaire_controleur->AnnuaireModele->obtenirIdParMail('1',$identification);
// identification
// TODO : faire mieux (un wrapper pour gérer différents types d'objets)
if(isset($_GET['id_utilisateur'])) {
$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
} else if ($_POST['id_utilisateur']) {
$GLOBALS['id_utilisateur'] = $_POST['id_utilisateur'];
} else {
$GLOBALS['id_utilisateur'] = $id;
}
/**
* Fonction d'affichage de Papyrus, pour le corps de page
*/
function afficherContenuCorps() {
$methode = '';
// Si l'utilisateur est authentifié
if (isset($_GET['m'])) {
$methode = $_GET['m'];
unset($_GET['m']);
} else {
if (isset($_POST['m'])) {
$methode = $_POST['m'];
unset($_POST['m']);
}
}
$identification = Config::get('identification');
if(!$identification) {
$controleur = new AnnuaireControleur();
return $controleur->afficherFormulaireIdentification();
}
switch ($methode) {
// Fonctions de liste d'ontologie
case 'liste_listes':
$controleur = new OntologieControleur();
$retour = $controleur->chargerListeListe();
break;
case 'liste_ontologie':
$controleur = new OntologieControleur();
$id = $_GET['id_liste'];
$retour = $controleur->chargerListeOntologie($id);
break;
case 'liste_ontologie_formulaire_ajout':
$valeurs = $_GET;
$controleur = new OntologieControleur();
$retour = $controleur->afficherFormulaireAjoutListeOntologie($valeurs);
break;
case 'liste_ontologie_formulaire_modification':
$id_ontologie = $_GET['amo_id_ontologie'];
$controleur = new OntologieControleur();
$retour = $controleur->afficherFormulaireModificationListeOntologie($id_ontologie);
break;
case 'liste_ontologie_ajout':
$controleur = new OntologieControleur();
$retour = $controleur->ajouterNouvelleListeOntologie($_POST);
break;
case 'liste_ontologie_modification':
$controleur = new OntologieControleur();
$retour = $controleur->modifierListeOntologie($_POST);
break;
case 'liste_ontologie_suppression':
$controleur = new OntologieControleur();
$id_a_supprimer = $_GET['amo_id_ontologie'];
$retour = $controleur->supprimerListeOntologie($id_a_supprimer);
break;
// Fonction de gestion des métadonnées des annuaire
case 'metadonnee_formulaire_ajout':
$controleur = new MetadonneeControleur();
$valeurs = $_GET;
$retour = $controleur->afficherFormulaireAjoutMetadonnee($valeurs);
break;
case 'metadonnee_formulaire_modification':
$controleur = new MetadonneeControleur();
$valeurs = $_GET;
$retour = $controleur->afficherFormulaireModificationMetadonnee($valeurs);
break;
case 'metadonnee_ajout':
$controleur = new MetadonneeControleur();
$valeurs = $_POST;
$retour = $controleur->ajouterNouvelleMetadonnee($valeurs);
break;
case 'metadonnee_modification':
$controleur = new MetadonneeControleur();
$valeurs = $_POST;
$retour = $controleur->modifierMetadonnee($valeurs);
break;
case 'metadonnee_suppression':
$controleur = new MetadonneeControleur();
$id_a_supprimer = $_GET['amc_id_metadonnee'];
$retour = $controleur->supprimerMetadonnee($id_a_supprimer);
break;
// Fonctions de gestion des annuaires
case 'liste_annu':
$controleur = new AnnuaireControleur();
$retour = $controleur->chargerListeAnnuaire();
break;
case 'annuaire':
$controleur = new AnnuaireControleur();
$id = $_GET['id_annuaire'];
$retour = $controleur->chargerAnnuaire($id);
break;
default:
case 'annuaire_inscrits':
$controleur = new AnnuaireControleur();
$id = $_GET['id_annuaire'];
if(isset($_GET['taille_page'])) {
$taille_page = $_GET['taille_page'];
} else {
$taille_page = 50;
}
if(isset($_GET['numero_page'])) {
$numero_page = $_GET['numero_page'];
} else {
$numero_page = 1;
}
$retour = $controleur->afficherFormulaireRecherche($id);
$retour .= $controleur->chargerAnnuaireListeInscrits($id, $numero_page, $taille_page);
break;
case 'annuaire_formulaire_inscription':
$controleur = new AnnuaireControleur();
$id = $_GET['id_annuaire'];
$retour = $controleur->afficherFormulaireInscription($id);
break;
case 'annuaire_ajout_inscription':
$valeurs = $_POST;
$controleur = new AnnuaireControleur();
$retour = $controleur->ajouterInscriptionTemporaire($valeurs);
break;
case 'annuaire_inscription_confirmation':
$identifiant = $_GET['id'];
$controleur = new AnnuaireControleur();
$retour = $controleur->ajouterNouvelleInscription($identifiant);
break;
case 'annuaire_fiche_utilisateur_consultation':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->afficherFicheUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
break;
case 'annuaire_fiche_resume_consultation':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->afficherFicheResumeUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur']);
break;
case 'annuaire_formulaire_modification_inscription':
$controleur = new AnnuaireControleur();
$id_annuaire = $_GET['id_annuaire'];
$retour = $controleur->afficherFormulaireModificationInscription($id_annuaire, $GLOBALS['id_utilisateur']);
break;
case 'annuaire_modification_inscription':
$controleur = new AnnuaireControleur();
$valeurs = $_POST;
$retour = $controleur->modifierInscription($_POST);
break;
case 'annuaire_afficher_formulaire_ajout_image':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->afficherFormulaireUploadImage($identifiant_annuaire,$GLOBALS['id_utilisateur']);
break;
case 'annuaire_ajouter_image':
$identifiant_annuaire = $_GET['id_annuaire'];
$GLOBALS['id_utilisateur'] = $_GET['id_utilisateur'];
$infos_images = $_FILES;
$controleur = new AnnuaireControleur();
$retour = $controleur->ajouterImageUtilisateur($identifiant_annuaire,$GLOBALS['id_utilisateur'],$infos_images);
break;
case 'annuaire_suppression_inscription':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->supprimerInscription($identifiant_annuaire,$GLOBALS['id_utilisateur']);
break;
case 'annuaire_afficher_formulaire_oubli_mdp':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->afficherFormulaireOubliMotDePasse($identifiant_annuaire);
break;
case 'annuaire_oubli_mdp':
$identifiant_annuaire = $_GET['id_annuaire'];
$mail = $_POST['mail'];
$controleur = new AnnuaireControleur();
$retour = $controleur->reinitialiserMotDePasse($identifiant_annuaire, $mail);
break;
// Fonctions de recherche d'inscrits
case 'annuaire_afficher_formulaire_recherche':
$identifiant_annuaire = $_GET['id_annuaire'];
$controleur = new AnnuaireControleur();
$retour = $controleur->afficherFormulaireRecherche($identifiant_annuaire);
break;
case 'annuaire_recherche_inscrit':
$identifiant_annuaire = $_GET['id_annuaire'];
unset($_GET['id_annuaire']);
if(isset($_GET['inclusive'])) {
$exclusive = false;
unset($_GET['inclusive']);
} else {
$exclusive = true;
}
$criteres = $_GET;
$controleur = new AnnuaireControleur();
$retour = $controleur->rechercherInscrit($identifiant_annuaire,$criteres, $exclusive);
break;
// Fonctions cartographiques
case 'annuaire_recherche_inscrit_carto':
$identifiant_annuaire = $_GET['id_annuaire'];
$criteres = $_GET;
$controleur = new AnnuaireControleur();
$retour = $controleur->rechercherInscritParlocalisation($identifiant_annuaire,$criteres);
break;
case 'annuaire_afficher_carte':
$identifiant_annuaire = $_GET['id_annuaire'];
$continent = null;
$pays = null;
$departement = null;
if(isset($_GET['continent'])) {
$continent = $_GET['continent'];
}
if(isset($_GET['pays'])) {
$pays = $_GET['pays'];
}
if(isset($_GET['departement'])) {
$departement = $_GET['departement'];
}
$controleur = new CartoControleur();
$retour = $controleur->cartographier($identifiant_annuaire, $continent, $pays, $departement);
break;
// Fonctions de modération des messages
case 'message_moderation_confirmation':
if(isset($_GET['id'])) {
$id_message = $_GET['id'];
}
$controleur = new MessageControleur();
$retour = $controleur->envoyerMailModere($id_message);
break;
case 'message_moderation_suppression':
if(isset($_GET['id'])) {
$id_message = $_GET['id'];
}
$controleur = new MessageControleur();
$retour = $controleur->supprimerMailModere($id_message);
break;
default:
$controleur = new AnnuaireControleur();
$retour = $controleur->index();
break;
}
if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
$retour = mb_convert_encoding($retour, Config::get('sortie_encodage'),Config::get('appli_encodage'));
}
return $retour;
}
function afficherContenuTete() {
return '';
}
function afficherContenuPied() {
return '';
}
function afficherContenuNavigation() {
return '';
}
function afficherContenuMenu() {
if(isset($_GET['id_annuaire'])) {
$id_annuaire = $_GET['id_annuaire'];
}
$menu = '<ul>';
$menu .= '<li><a href="http://162.38.234.9/papyrus_bp/page:annuaire_admin?m=liste_listes"> Gérer les liste d\'ontologie </a></li>';
$menu .= '<li><a href="http://162.38.234.9/papyrus_bp/page:annuaire_admin?m=liste_annu"> Gérer les annuaires </a></li>';
$menu .= '</ul>';
return $menu;
}
?>