49,6 → 49,7 |
} |
|
public function creerMetadonnee() { |
|
$this->chargerModele('AnnuaireModele'); |
$this->chargerModele('MetadonneeModele'); |
$id_liste_inscrit = $this->AnnuaireModele->migrer(); |
200,14 → 201,16 |
|
$donnees['tableau_mappage'] = $tableau_mappage[1]; |
|
// si le formulaire existe, on le charge |
if(!$this->templateExiste($annuaire['informations']['aa_code'].'_inscription','formulaires/')) { |
if($this->annuaireAvoirFormulaireInscription($annuaire['informations']['aa_code'])) { |
|
$formulaire_inscription = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_inscription',$donnees); |
|
} else { |
|
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
|
$formulaire_inscription = $this->genererFormulaireInscription($donnees); |
} else { |
// sinon on en génère un qui contient tous les champs |
$formulaire_inscription = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_inscription',$donnees); |
} |
|
return $formulaire_inscription; |
415,8 → 418,7 |
|
$identificateur->loggerUtilisateur($mail, $pass); |
|
// S'il existe une page d'accueil spécifique à l'annuaire pour la confirmation d'inscription |
if($this->templateExiste($annuaire['informations']['aa_code'].'_inscription_confirmation', Config::get('dossier_squelettes_annuaires'))) { |
if($this->annuaireAvoirPageAccueilPostInscription($annuaire['informations']['aa_code'])) { |
// on l'affiche |
$donnees = array('id_utilisateur' => $id_nouvel_inscrit, 'id_annuaire' => $id_annuaire); |
return $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_inscription_confirmation', $donnees); |
469,19 → 471,16 |
$navigateur = new NavigationControleur(); |
$donnees['navigation'] = $navigateur->afficherBandeauNavigationUtilisateur($id_annuaire ,$id_utilisateur, 'fiche'); |
|
/*if(Registre::getInstance()->get('est_admin')) { |
$donnees['formulaire_blocage'] = $this->getVue(Config::get('dossier_squelettes_elements').'blocage',$donnees); |
}*/ |
|
// Si le formulaire spécifique à l'annuaire existe, on l'affiche |
|
if(!$this->templateExiste($annuaire['informations']['aa_code'].'_fiche','/fiches/')) { |
// S'il existe une fiche spécifique pour l'annuaire |
if($this->annuaireAvoirFicheUtilisateur($annuaire['informations']['aa_code'])) { |
// on l'affiche |
$fiche_inscrit = $this->getVue(Config::get('dossier_squelettes_fiches').$annuaire['informations']['aa_code'].'_fiche',$donnees); |
} else { |
// sinon on en génère une minimale par défaut |
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
$fiche_inscrit = $this->genererFicheInscrit($donnees); |
} else { |
// Sinon on prend celui par defaut |
$fiche_inscrit = $this->getVue(Config::get('dossier_squelettes_fiches').$annuaire['informations']['aa_code'].'_fiche',$donnees); |
|
} |
|
return $fiche_inscrit; |
504,15 → 503,9 |
$donnees['id_utilisateur'] = $id_utilisateur; |
$donnees['mail_utilisateur'] = $mail_utilisateur; |
|
$url_modification_profil = new Url(Config::get('base_url_application')); |
$url_modification_profil->setVariableRequete('m','annuaire_formulaire_modification_inscription'); |
$url_modification_profil->setVariableRequete('id_annuaire',$id_annuaire); |
$url_modification_profil->setVariableRequete('id_utilisateur',$id_utilisateur); |
$url_modification_profil = self::getUrlModificationProfil($id_annuaire, $id_utilisateur); |
|
$url_oubli_mdp = new Url(Config::get('base_url_application')); |
$url_oubli_mdp->setVariableRequete('m','annuaire_afficher_formulaire_oubli_mdp'); |
$url_oubli_mdp->setVariableRequete('id_annuaire',$id_annuaire); |
$url_oubli_mdp->setVariableRequete('id_utilisateur',$id_utilisateur); |
$url_oubli_mdp = self::getUrlOubliMotDePasse($id_annuaire, $id_utilisateur); |
|
$donnees['url_oubli_mdp'] = $url_oubli_mdp; |
$donnees['url_modification_profil'] = $url_modification_profil; |
614,13 → 607,17 |
|
|
// Si le formulaire spécifique à l'annuaire existe, on l'affiche |
if(!$this->templateExiste($annuaire['informations']['aa_code'].'_modification','/formulaires/')) { |
if($this->annuaireAvoirFormulaireModificationInscription($annuaire['informations']['aa_code'])) { |
|
// Sinon on prend celui par defaut |
$formulaire_modification = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_modification',$donnees); |
|
} else { |
|
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
|
$formulaire_modification = $this->genererFormulaireModificationInscription($donnees); |
} else { |
// Sinon on prend celui par defaut |
$formulaire_modification = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_modification',$donnees); |
} |
|
return $formulaire_modification; |
825,6 → 822,9 |
$identificateur->setUtilisateur($nouveau_mail); |
} |
|
$statistique = new StatistiqueControleur(); |
$statistique->ajouterEvenementStatistique($id_annuaire, $id_utilisateur, 'modification'); |
|
return $this->afficherFicheUtilisateur($id_annuaire, $id_utilisateur); |
} |
|
970,9 → 970,10 |
$donnees = array(); |
|
// Si le formulaire spécifique à l'annuaire existe, on l'affiche |
if($this->templateExiste($annuaire['informations']['aa_code'].'_desinscription_confirmation','/annuaires/')) { |
if($this->annuaireAvoirPagePostDesinscription($annuaire['informations']['aa_code'])) { |
$informations_desinscription = $this->GetVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_desinscription_confirmation',$donnees); |
} else { |
|
// Sinon on prend celui par defaut |
$donnees['titre'] = 'Vous êtes maintenant désinscrit de l\'annuaire'; |
$donnees['message'] = 'Votre désinscription a bien été prise en compte <br />'; |
980,6 → 981,9 |
$informations_desinscription = $this->getVue(Config::get('dossier_squelettes_annuaires').'information_simple',$donnees); |
} |
|
$statistique = new StatistiqueControleur(); |
$statistique->ajouterEvenementStatistique($id_annuaire, $id_utilisateur, 'suppression'); |
|
return $informations_desinscription; |
} |
|
1010,7 → 1014,6 |
|
if(isset($donnees[$type_champ.'_'.$id_champ])) { |
|
//Debug::printr($donnees[$type_champ.'_'.$id_champ]); |
$metadonnee['valeur_defaut']['amv_valeur'] = $donnees[$type_champ.'_'.$id_champ]; |
} |
|
1020,13 → 1023,17 |
} |
|
// Si le formulaire spécifique à l'annuaire existe, on l'affiche |
if(!$this->templateExiste($annuaire['informations']['aa_code'].'_recherche','/formulaires/')) { |
if($this->annuaireAvoirFormulaireRecherche($annuaire['informations']['aa_code'])) { |
|
// Sinon on prend celui par defaut |
$formulaire_recherche = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_recherche',$donnees); |
|
} else { |
|
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
$formulaire_recherche = $this->genererFormulaireRecherche($donnees); |
} else { |
// Sinon on prend celui par defaut |
$formulaire_recherche = $this->GetVue(Config::get('dossier_squelettes_formulaires').$annuaire['informations']['aa_code'].'_recherche',$donnees); |
|
} |
|
return $formulaire_recherche; |
1061,48 → 1068,15 |
$valeurs_mappees = array(); |
$valeurs = array(); |
|
//TODO: faire une fonction qui factorise ce principe !!!! |
// |
$collecteur = new VerificationControleur(); |
$tableau_valeur_collectees = $collecteur->collecterValeursRechercheMoteur($valeurs_recherchees, $tableau_mappage); |
|
// on itère sur le tableau de valeur pour récupérer les métadonnées; |
foreach($valeurs_recherchees as $nom_champ => $valeur) { |
$valeurs_recherchees = $tableau_valeur_collectees['valeurs_recherchees']; |
$valeurs_mappees = $tableau_valeur_collectees['valeurs_mappees']; |
$valeurs_get = $tableau_valeur_collectees['valeurs_get']; |
|
// pour chaque valeur |
// on extrait l'id du champ |
$ids_champ = mb_split("_",$nom_champ); |
|
if(count($ids_champ) == 2) { |
|
// l'identifiant du champ est la dernière valeur du tableau |
$type = $ids_champ[0]; |
$id_champ = $ids_champ[1]; |
|
// Si le champ fait partie des champs mappés |
$cle_champ = array_search($id_champ, $tableau_mappage[1]); |
if($cle_champ) { |
// on ajoute sa clé correspondante dans l'annuaire mappé et sa valeur dans le tableau des champs mappés |
$valeurs_mappees[$tableau_mappage[0][$cle_champ]] = $valeur; |
// et on supprime sa valeur du tableau de valeurs pour ne pas la retrouver lors |
// de l'insertion des métadonnées |
} else { |
$valeurs_recherchees[$id_champ] = $valeur; |
} |
// on retire la valeur du tableau pour ne pas la retrouver dans les deux recherches |
$valeurs_get[$nom_champ] = $valeur; |
} |
|
unset($valeurs_recherchees[$nom_champ]); |
} |
|
$admin = Registre::getInstance()->get('est_admin'); |
|
//if(!$admin) { |
// $champs_blocage = $this->AnnuaireModele->obtenirChampsDescriptionAnnuaire($id_annuaire); |
// $valeurs_recherchees[$champs_blocage[1]['champ_statut']] = '0'; |
//} |
|
$champ_id_annuaire = $tableau_mappage[0]['champ_id']; |
|
// on recherche dans les métadonnées |
$this->chargerModele('MetadonneeModele'); |
// le résultat est un ensemble d'identifiants |
1117,6 → 1091,8 |
|
$nb_resultats = $resultat_annuaire_mappe['total']; |
|
$champ_id_annuaire = $tableau_mappage[0]['champ_id']; |
|
$resultats = array(); |
foreach($resultat_recherche as $resultat) { |
$id_utilisateur = $resultat[$champ_id_annuaire]; |
1132,20 → 1108,25 |
$url_base = new URL(Registre::getInstance()->get('base_url_application')); |
$url_pagination = clone($url_base); |
|
$donnees['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination, $valeurs_get); |
|
$valeurs_get['exclusive'] = $exclusive; |
$donnees['criteres'] = urlencode(serialize($valeurs_get)); |
|
$valeurs_get['id_annuaire'] = $id_annuaire; |
$valeurs_get['m'] = $_GET['m']; |
|
$donnees['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination, $valeurs_get); |
|
// S'il existe une page de résultats spécifique à l'annuaire pour la recherche |
if($this->templateExiste($annuaire['informations']['aa_code'].'_resultat_recherche', Config::get('dossier_squelettes_annuaires'))) { |
if($this->annuaireAvoirPageResultatRecherche($annuaire['informations']['aa_code'])) { |
// on l'affiche |
$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_resultat_recherche', $donnees); |
|
} else { |
|
// sinon on prend celle par défaut |
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
|
$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').'resultat_recherche', $donnees); |
} |
|
1184,6 → 1165,8 |
$valeurs_mappees = array(); |
$valeurs = array(); |
|
$continent = $valeurs_recherchees['continent']; |
|
$champ_id_annuaire = $tableau_mappage[0]['champ_id']; |
|
$valeur = $valeurs_recherchees['pays']; |
1219,8 → 1202,13 |
$donnees['id_annuaire'] = $id_annuaire; |
$donnees['nb_resultats'] = $nb_resultats; |
|
//Debug::printr($resultat_annuaire_mappe); |
|
|
$donnees['criteres'] = urlencode(serialize(array('select_'.$tableau_mappage[1]['champ_pays'] => $valeurs_recherchees['pays'], |
'text_'.$tableau_mappage[1]['champ_code_postal'] => $valeurs_recherchees['departement'], |
'exclusive' => true |
))); |
|
$url_base = new URL(Registre::getInstance()->get('base_url_application')); |
$url_pagination = clone($url_base); |
|
1229,15 → 1217,20 |
|
$donnees['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination, $valeurs_get); |
|
// S'il existe une page de résultats spécifique à l'annuaire pour la recherche |
if($this->templateExiste($annuaire['informations']['aa_code'].'_resultat_recherche', Config::get('dossier_squelettes_annuaires'))) { |
if($this->annuaireAvoirPageResultatRecherche($annuaire['informations']['aa_code'])) { |
// on l'affiche |
$navigation_carto = new NavigationControleur(); |
$cartographe = new CartoControleur(); |
$donnees_navigation = $cartographe->obtenirUrlsNavigation($id_annuaire,$valeurs_recherchees['continent'],$valeurs_recherchees['pays'],$valeurs_recherchees['departement']); |
$donnees['navigation'] = $navigation_carto->afficherBandeauNavigationCartographie($donnees_navigation); |
$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_resultat_recherche', $donnees); |
|
} else { |
|
// sinon on prend celle par défaut |
$tableau_nom_mappage = $this->obtenirNomsChampsMappageAnnuaire($id_annuaire); |
$donnees['mappage_nom_champs'] = $tableau_nom_mappage; |
|
$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').'resultat_recherche', $donnees); |
} |
|
1244,7 → 1237,11 |
return $vue_resultat_recherche; |
} |
|
public function rechercherParRequeteMoteur($id_annuaire, $criteres) { |
|
} |
|
|
/** --- Fonction pour les images ------------------------------------------------------------------------*/ |
|
public function afficherFormulaireUploadImage($id_annuaire,$id_utilisateur, $donnees = array()) { |