Subversion Repositories Applications.annuaire

Rev

Rev 92 | Rev 98 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 92 Rev 96
Line 21... Line 21...
21
	 * @return Array $donnees les données modifiées
21
	 * @return Array $donnees les données modifiées
22
	 */
22
	 */
23
	public function preTraiterDonnees($donnees) {
23
	public function preTraiterDonnees($donnees) {
Line 24... Line 24...
24
 
24
 
25
		// ajout de l'url de l'appli
25
		// ajout de l'url de l'appli
-
 
26
		$donnees['base_url'] = new Url(Config::get('base_url_application'));
-
 
27
		
-
 
28
		//$donnees['base_url']->setVariableRequete('menu','83');
-
 
29
		$donnees['base_url_styles'] = new Url(Config::get('base_url_styles'));
26
		$donnees['base_url'] = new Url(Registre::getInstance()->get('base_url_application'));
30
		
Line 27... Line 31...
27
		$donnees['url_cette_page'] = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
31
		$donnees['url_cette_page'] = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
28
 
32
 
29
		//ajout des variables d'identification
33
		//ajout des variables d'identification
Line 215... Line 219...
215
		
219
		
216
		$valeurs_mappees = $valeurs_collectees['valeurs_mappees'];
220
		$valeurs_mappees = $valeurs_collectees['valeurs_mappees'];
Line 217... Line 221...
217
		$valeurs_a_inserer = $valeurs_collectees['valeurs_a_inserer'];
221
		$valeurs_a_inserer = $valeurs_collectees['valeurs_a_inserer'];
218
 
222
 
219
		// vérification des champs minimaux : nom, prénom, mail, mot de passe
223
		// vérification des champs minimaux : nom, prénom, mail, mot de passe
220
		/*if($erreurs = $verificateur->verifierErreursChampsSelonType($id_annuaire,$valeurs_mappees, $tableau_mappage)) {
224
		if($erreurs = $verificateur->verifierErreursChampsSelonType($id_annuaire,$valeurs_mappees, $tableau_mappage)) {
221
			$valeurs['erreurs'] = $erreurs;
225
			$valeurs['erreurs'] = $erreurs;
Line 222... Line 226...
222
			return $this->afficherFormulaireInscription($id_annuaire, $valeurs);
226
			return $this->afficherFormulaireInscription($id_annuaire, $valeurs);
Line 223... Line 227...
223
		}*/
227
		}
Line 895... Line 899...
895
		$donnees = array('erreurs' => array());
899
		$donnees = array('erreurs' => array());
Line 896... Line 900...
896
 
900
 
897
		$this->chargerModele('MetadonneeModele');
901
		$this->chargerModele('MetadonneeModele');
Line 898... Line 902...
898
 		$suppression_metadonnees = $this->MetadonneeModele->supprimerValeursMetadonneesParIdEnregistrementLie($id_utilisateur);
902
 		$suppression_metadonnees = $this->MetadonneeModele->supprimerValeursMetadonneesParIdEnregistrementLie($id_utilisateur);
899
 
903
 
900
		/*if(!$suppression_inscription || !$suppression_metadonnees) {
904
		if(!$suppression_inscription || !$suppression_metadonnees) {
901
			$donnees['erreurs']['inscription'] = $suppression_inscription;
905
			$donnees['erreurs']['inscription'] = $suppression_inscription;
Line 902... Line 906...
902
			$donnees['erreurs']['metadonnees'] = $suppression_metadonnees;
906
			$donnees['erreurs']['metadonnees'] = $suppression_metadonnees;
903
			$donnees['erreurs']['titre'] = 'Impossible de supprimer l\'inscription ';
907
			$donnees['erreurs']['titre'] = 'Erreur lors de la suppression de l\'inscription ';
Line 904... Line 908...
904
 
908
 
905
			return $this->getVue(Config::get('dossier_squelettes_elements').'erreurs',$donnees);
909
			return $this->getVue(Config::get('dossier_squelettes_elements').'erreurs',$donnees);
906
		}*/
910
		}
907
 
911
 
Line 976... Line 980...
976
	 * Recherche un ou plusieurs inscrits selon les valeurs passées en paramètres, qui peuvent êtres des valeurs
980
	 * Recherche un ou plusieurs inscrits selon les valeurs passées en paramètres, qui peuvent êtres des valeurs
977
	 * dans l'annuaire mappé ou bien des valeurs de metadonnées
981
	 * dans l'annuaire mappé ou bien des valeurs de metadonnées
978
	 * @param int $id_annuaire l'identifiant de l'annuaire
982
	 * @param int $id_annuaire l'identifiant de l'annuaire
979
	 * @param array $valeurs_recherchees les valeurs à rechercher
983
	 * @param array $valeurs_recherchees les valeurs à rechercher
980
	 * @param boolean $exclusive indique si la recherche si fait sur tous les critères ou bien sur au moins un
984
	 * @param boolean $exclusive indique si la recherche si fait sur tous les critères ou bien sur au moins un
981
	 * @param int $numero_page le numero de page demandé
-
 
982
	 * @param int $taille_page la taille de page
-
 
983
	 */
985
	 */
984
	public function rechercherInscrit($id_annuaire,$valeurs_recherchees, $exclusive = true,  $numero_page = 1, $taille_page = 50) {
986
	public function rechercherInscrit($id_annuaire,$valeurs_recherchees, $exclusive = true) {
Line 985... Line 987...
985
 
987
 
986
		$this->chargerModele('AnnuaireModele');
988
		$this->chargerModele('AnnuaireModele');
Line 987... Line 989...
987
		$annuaire = $this->AnnuaireModele->chargerAnnuaire($id_annuaire, true);
989
		$annuaire = $this->AnnuaireModele->chargerAnnuaire($id_annuaire, true);
988
 
990
 
-
 
991
		if(isset($_GET['numero_page'])) {
-
 
992
			$numero_page = $_GET['numero_page'];
989
		if(isset($_GET['numero_page'])) {
993
		} else {
Line 990... Line 994...
990
			$numero_page = $_GET['numero_page'];
994
			$numero_page = 1;
991
		}
995
		}
-
 
996
 
-
 
997
		if(isset($_GET['taille_page'])) {
992
 
998
			$taille_page = $_GET['taille_page'];
Line 993... Line 999...
993
		if(isset($_GET['taille_page'])) {
999
		} else {
Line 994... Line 1000...
994
			$taille_page = $_GET['taille_page'];
1000
			$taille_page = 50;
Line 1026... Line 1032...
1026
				$valeurs_get[$nom_champ] = $valeur;
1032
				$valeurs_get[$nom_champ] = $valeur;
1027
			}
1033
			}
Line 1028... Line 1034...
1028
 
1034
 
1029
			unset($valeurs_recherchees[$nom_champ]);
1035
			unset($valeurs_recherchees[$nom_champ]);
-
 
1036
		}
-
 
1037
		
Line 1030... Line 1038...
1030
		}
1038
		//Debug::printr($valeurs_recherchees);
Line 1031... Line 1039...
1031
 
1039
 
1032
		$admin = Registre::getInstance()->get('est_admin');
1040
		$admin = Registre::getInstance()->get('est_admin');
Line 1040... Line 1048...
1040
 
1048
 
1041
		// on recherche dans les métadonnées
1049
		// on recherche dans les métadonnées
1042
		$this->chargerModele('MetadonneeModele');
1050
		$this->chargerModele('MetadonneeModele');
1043
		// le résultat est un ensemble d'identifiants
1051
		// le résultat est un ensemble d'identifiants
1044
		$resultat_metadonnees = $this->MetadonneeModele->rechercherDansValeurMetadonnees($id_annuaire,$valeurs_recherchees, $exclusive);
1052
		$resultat_metadonnees = $this->MetadonneeModele->rechercherDansValeurMetadonnees($id_annuaire,$valeurs_recherchees, $exclusive);
1045
 
1053
		
1046
		// on recherche les infos dans la table annuaire mappée
1054
		// on recherche les infos dans la table annuaire mappée
1047
		// en incluant ou excluant les id déjà trouvées dans les metadonnées
1055
		// en incluant ou excluant les id déjà trouvées dans les metadonnées
1048
		// suivant le critères d'exclusivité ou non
1056
		// suivant le critères d'exclusivité ou non
Line 1049... Line 1057...
1049
		$resultat_annuaire_mappe = $this->AnnuaireModele->rechercherInscritDansAnnuaireMappe($id_annuaire,$valeurs_mappees, $resultat_metadonnees, $exclusive, $numero_page, $taille_page);
1057
		$resultat_annuaire_mappe = $this->AnnuaireModele->rechercherInscritDansAnnuaireMappe($id_annuaire,$valeurs_mappees, $resultat_metadonnees, $exclusive, $numero_page, $taille_page);
Line 1050... Line 1058...
1050
 
1058
 
-
 
1059
		$resultat_recherche = $resultat_annuaire_mappe['resultat'];
-
 
1060
 
-
 
1061
		$nb_resultats = $resultat_annuaire_mappe['total'];
-
 
1062
		
-
 
1063
		$resultats = array();
-
 
1064
		foreach($resultat_recherche as $resultat) {
Line 1051... Line 1065...
1051
		$resultat_recherche = $resultat_annuaire_mappe['resultat'];
1065
			$id_utilisateur = $resultat[$champ_id_annuaire];
1052
 
1066
			$resultats[$id_utilisateur] = $this->obtenirValeursUtilisateur($id_annuaire, $id_utilisateur);
1053
		$nb_resultats = $resultat_annuaire_mappe['total'];
1067
		}
1054
 
1068
 
1055
		// on renvoie une liste identique à celle de la liste des inscrits
1069
		// on renvoie une liste identique à celle de la liste des inscrits
Line 1056... Line 1070...
1056
		$donnees['resultats_recherche'] = $resultat_recherche;
1070
		$donnees['resultats_recherche'] = $resultats;
1057
		$donnees['tableau_mappage'] = $tableau_mappage[0];
1071
		$donnees['tableau_mappage'] = $tableau_mappage[1];
Line 1058... Line 1072...
1058
		$donnees['id_annuaire'] = $id_annuaire;
1072
		$donnees['id_annuaire'] = $id_annuaire;
1059
		$donnees['nb_resultats'] = $nb_resultats;
1073
		$donnees['nb_resultats'] = $nb_resultats;
Line 1060... Line 1074...
1060
 
1074
 
1061
		$url_base = new URL(Registre::getInstance()->get('base_url_application'));
-
 
Line -... Line 1075...
-
 
1075
		$url_base = new URL(Registre::getInstance()->get('base_url_application'));
-
 
1076
		$url_pagination = clone($url_base);
-
 
1077
 
-
 
1078
		$valeurs_get['id_annuaire'] = $id_annuaire;
-
 
1079
		$valeurs_get['m'] = $_GET['m'];
-
 
1080
 
-
 
1081
		$donnees['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination, $valeurs_get);
-
 
1082
 
-
 
1083
		// S'il existe une page de résultats spécifique à l'annuaire pour la recherche
-
 
1084
		if($this->templateExiste($annuaire['informations']['aa_code'].'_resultat_recherche', Config::get('dossier_squelettes_annuaires'))) {
1062
		$url_pagination = clone($url_base);
1085
			// on l'affiche
1063
 
1086
			$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_resultat_recherche', $donnees);
Line 1064... Line 1087...
1064
		$valeurs_get['id_annuaire'] = $id_annuaire;
1087
 
1065
		$valeurs_get['m'] = $_GET['m'];
1088
		} else {
Line 1076... Line 1099...
1076
	 * @param array $valeurs_recherchees les valeurs à rechercher
1099
	 * @param array $valeurs_recherchees les valeurs à rechercher
1077
	 * @param boolean $exclusive indique si la recherche si fait sur tous les critères ou bien sur au moins un
1100
	 * @param boolean $exclusive indique si la recherche si fait sur tous les critères ou bien sur au moins un
1078
	 * @param int $numero_page le numero de page demandé
1101
	 * @param int $numero_page le numero de page demandé
1079
	 * @param int $taille_page la taille de page
1102
	 * @param int $taille_page la taille de page
1080
	 */
1103
	 */
1081
	public function rechercherInscritParlocalisation($id_annuaire,$valeurs_recherchees, $numero_page = 1, $taille_page = 50) {
1104
	public function rechercherInscritParlocalisation($id_annuaire,$valeurs_recherchees) {
Line 1082... Line 1105...
1082
 
1105
 
1083
		if(isset($_GET['taille_page'])) {
1106
		if(isset($_GET['taille_page'])) {
1084
			$taille_page = $_GET['taille_page'];
1107
			$taille_page = $_GET['taille_page'];
1085
		} else  {
1108
		} else  {
Line 1110... Line 1133...
1110
		if(isset($valeurs_recherchees['departement'])) {
1133
		if(isset($valeurs_recherchees['departement'])) {
1111
			$valeur = $valeurs_recherchees['departement'];
1134
			$valeur = $valeurs_recherchees['departement'];
1112
			$champ_critere = $tableau_mappage[0]['champ_code_postal'];
1135
			$champ_critere = $tableau_mappage[0]['champ_code_postal'];
1113
		}
1136
		}
Line 1114... Line 1137...
1114
 
1137
 
Line 1115... Line 1138...
1115
		$resultat_annuaire_mappe = $this->AnnuaireModele->rechercherInscritDansAnnuaireMappeParChamp($id_annuaire, $champ_critere, $valeur, true, $taille_page, $numero_page);
1138
		$resultat_annuaire_mappe = $this->AnnuaireModele->rechercherInscritDansAnnuaireMappeParChamp($id_annuaire, $champ_critere, $valeur, true, $numero_page, $taille_page);
1116
 
1139
 
1117
		$resultat_recherche = $resultat_annuaire_mappe;
1140
		$resultat_recherche = $resultat_annuaire_mappe;
1118
 
1141
		
-
 
1142
		$nb_resultats = $resultat_recherche['total'];
-
 
1143
		$resultat_recherche = $resultat_recherche['resultat'];
-
 
1144
		
-
 
1145
		$resultats = array();
-
 
1146
		foreach($resultat_recherche as $resultat) {
-
 
1147
			$id_utilisateur = $resultat[$champ_id_annuaire];
Line 1119... Line 1148...
1119
		$nb_resultats = $resultat_recherche['total'];
1148
			$resultats[$id_utilisateur] = $this->obtenirValeursUtilisateur($id_annuaire, $id_utilisateur);
1120
		$inscrits_resultats = $resultat_recherche['resultat'];
1149
		}
1121
 
1150
 
1122
		// on renvoie une liste identique à celle de la liste des inscrits
1151
		// on renvoie une liste identique à celle de la liste des inscrits
1123
		$donnees['resultats_recherche'] = $inscrits_resultats;
1152
		$donnees['resultats_recherche'] = $resultats;
1124
		$donnees['tableau_mappage'] = $tableau_mappage[0];
1153
		$donnees['tableau_mappage'] = $tableau_mappage[1];
1125
		$donnees['id_annuaire'] = $id_annuaire;
1154
		$donnees['id_annuaire'] = $id_annuaire;
Line 1126... Line 1155...
1126
		$donnees['nb_resultats'] = $nb_resultats;
1155
		$donnees['nb_resultats'] = $nb_resultats;
1127
 
1156
		
-
 
1157
		//Debug::printr($resultat_annuaire_mappe);
-
 
1158
 
-
 
1159
		$url_base = new URL(Registre::getInstance()->get('base_url_application'));
Line 1128... Line 1160...
1128
		//Debug::printr($donnees['resultats_recherche']);
1160
		$url_pagination = clone($url_base);
1129
 
-
 
Line -... Line 1161...
-
 
1161
 
-
 
1162
		$valeurs_get['id_annuaire'] = $id_annuaire;
-
 
1163
		$valeurs_get['m'] = $_GET['m'];
-
 
1164
 
-
 
1165
		$donnees['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination, $valeurs_get);
-
 
1166
 
-
 
1167
		// S'il existe une page de résultats spécifique à l'annuaire pour la recherche
-
 
1168
		if($this->templateExiste($annuaire['informations']['aa_code'].'_resultat_recherche', Config::get('dossier_squelettes_annuaires'))) {
-
 
1169
			// on l'affiche
-
 
1170
			$vue_resultat_recherche = $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_resultat_recherche', $donnees);
1130
		$url_base = new URL(Registre::getInstance()->get('base_url_application'));
1171
 
1131
		$url_pagination = new URL($url_base);
1172
		} else {
Line 1132... Line 1173...
1132
 
1173
			// sinon on prend celle par défaut
Line 1429... Line 1470...
1429
	 * Ajoute une image uploadée à travers le formulaire
1470
	 * Ajoute une image uploadée à travers le formulaire
1430
	 *
1471
	 *
1431
	 */
1472
	 */
1432
	public function ajouterImageUtilisateur($id_annuaire, $id_utilisateur, $fichier_a_stocker, $retourner_booleen = false) {
1473
	public function ajouterImageUtilisateur($id_annuaire, $id_utilisateur, $fichier_a_stocker, $retourner_booleen = false) {
Line 1433... Line 1474...
1433
 
1474
 
Line 1434... Line 1475...
1434
		$donnees = array('erreurs' => array());
1475
		$donnees = array('erreurs' => array(), 'aa_id_annuaire' => $id_annuaire);
Line 1435... Line 1476...
1435
 
1476