Subversion Repositories Applications.annuaire

Compare Revisions

Ignore whitespace Rev 312 → Rev 313

/trunk/modeles/DonneeTemporaireModele.php
11,8 → 11,6
* @link /doc/annuaire/
*/
 
 
// TODO : utiliser cette classe pour l'inscription temporaire
Class DonneeTemporaireModele extends Modele {
 
private $config = array();
19,8 → 17,6
public function stockerDonneeTemporaire($donnee, $id_aleatoire = false) {
//$this->maintenanceDonneesTemporaires();
 
// on protège et on sérialise les données
$identifiant = $this->calculerIdentifiant($id_aleatoire);
$donnees = $this->encoderDonneeTemporaire($donnee);
29,8 → 25,12
'VALUES '.
'('.$this->proteger($identifiant).','.$this->proteger($donnees).', NOW())';
 
$this->requete($requete_insertion);
$insertion = $this->requete($requete_insertion);
 
if(!$insertion) {
return false;
}
return $identifiant;
 
}
37,8 → 37,6
 
public function chargerDonneeTemporaire($code_donnee) {
//$this->maintenanceDonneesTemporaires();
 
$requete_chargement_donnee = 'SELECT * FROM annu_donnees_temp '.
' WHERE adt_id = '.$this->proteger($code_donnee);
 
104,5 → 102,4
}
 
}
 
?>
?>
/trunk/modeles/AnnuaireModele.php
35,18 → 35,6
}
return $annuaires;
}
public function migrer() {
$requete = 'SELECT * FROM tela_prod.annuaire_tela';
$resultat = $this->requeteTous($requete);
foreach ($resultat as $ligne) {
$annuaires[] = $ligne['U_ID'];
}
return $annuaires;
}
 
/**
* Charge la liste complète des champs d'un annuaire
234,11 → 222,41
$tableau_mappage[1][$champ['at_action']] = $champ['at_valeur'];
}
 
// TODO faire une interface de gestion des champs de mappage
 
return $tableau_mappage ;
}
/** Charge le nombre d'inscrits d'une table annuaire mappée
* @param int $identifiant l'identifiant de l'annuaire mappé
*/
public function chargerNombreAnnuaireListeInscrits($identifiant) {
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '.
'FROM annu_annuaire '.
'WHERE aa_id_annuaire = '.$identifiant.' ';
$resultat_informations_annuaire = $this->requeteUn($requete_informations_annuaire);
 
if(!$resultat_informations_annuaire) {
trigger_error('impossible de récupérer les informations de la table '.$identifiant);
}
$requete_nombre_inscrits = 'SELECT COUNT(*) as nb '.
'FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table'];
// Récupération des résultats
try {
$resultat_nb_inscrits = $this->requeteUn($requete_nombre_inscrits);
if ($donnees === false) {
$this->messages[] = "La requête n'a retourné aucun résultat.";
} else {
$nb_inscrits = $resultat_nb_inscrits['nb'];
}
} catch (Exception $e) {
$this->messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage());
}
return $nb_inscrits;
}
 
/** Charge le nombre d'inscrits d'une table annuaire mappée en les groupant par départements
* @param int $identifiant l'identifiant de l'annuaire mappé
* @return array un tableau indexé par les numéros de departement contenant le nombre d'inscrits à chacun
398,7 → 416,10
}
 
$requete_recherche_inscrits = 'SELECT '.$champs_mappage[0]['champ_id'].' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table'];
$requete_recherche_inscrits .= ' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page);
if($taille_page != 0) {
$requete_recherche_inscrits .= ' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page);
}
 
$resultat_recherche_inscrits = $this->requeteTous($requete_recherche_inscrits);
 
460,8 → 481,6
 
$id_nouvel_enregistrement = false;
 
//Debug::printr($requete_insertion_annuaire);
 
//en cas d'erreur on renvoie false
//TODO: lever une exception
if(!$this->requete($requete_insertion_annuaire)) {
479,8 → 498,8
 
$resultat_nouvel_id = $this->requeteUn($requete_nouvel_id);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_nouvel_id) {
return $id_nouvel_enregistrement;
}
549,8 → 568,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
564,8 → 583,8
 
$resultat_selection_valeur = $this->requeteUn($requete_selection_valeur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_valeur) {
return false;
} else {
585,8 → 604,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
602,8 → 621,8
 
$resultat_modification_valeur = $this->requeteUn($requete_modification_valeur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
return $resultat_modification_valeur;
}
 
625,8 → 644,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
643,8 → 662,8
//echo $requete_selection_utilisateur;
$resultat_selection_utilisateur = $this->requeteUn($requete_selection_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateur) {
return false;
} else {
671,8 → 690,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
694,8 → 713,8
$resultat_utilisateurs[] = $utilisateur[$champs_mappage['champ_mail']];
}
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateurs) {
return false;
} else {
722,8 → 741,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
738,8 → 757,8
//echo $requete_selection_utilisateur;
$resultat_selection_utilisateur = $this->requeteUn($requete_selection_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateur) {
return false;
} else {
757,8 → 776,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
801,8 → 820,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
816,8 → 835,8
 
$resultat_selection_utilisateur = $this->requeteUn($requete_selection_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateur) {
return false;
} else {
841,8 → 860,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
858,8 → 877,8
 
$resultat_selection_utilisateur = $this->requeteTous($requete_selection_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateur) {
return false;
} else {
883,8 → 902,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
897,8 → 916,8
$resultat_selection_utilisateur = $this->requeteTous($requete_selection_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_selection_utilisateur) {
return false;
} else {
916,8 → 935,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
962,8 → 981,8
 
$resultat_infos_annuaire = $this->requeteUn($requete_infos_annuaire);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if(!$resultat_infos_annuaire) {
return false;
}
1004,8 → 1023,8
 
$resultat_suppression_utilisateur = $this->requeteUn($requete_suppression_utilisateur);
 
// en cas d'erreur on renvoie false
// TODO: lever une exception
 
 
if($this->utilisateurExisteParId($id_annuaire, $id_utilisateur, $champs_mappage)) {
return false;
}
1179,6 → 1198,8
return array('total' => $nb_inscrits, 'resultat' => $resultat_recherche_inscrits) ;
}
public function rechercherDoublonsDansAnnuaireMappe($id_annuaire, $numero_page = 1, $taille_page = 50) {
 
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '.
/trunk/modeles/ImageModele.php
247,4 → 247,4
 
}
}
?>
?>
/trunk/modeles/GestionAnnuaireModele.php
164,4 → 164,5
 
return $annuaire;
}
}
}
?>
/trunk/modeles/MetadonneeModele.php
478,19 → 478,35
$separateur = ' OR ';
}
 
$chaine_recherche = '';
$chaine_recherche = '' ;
 
foreach($valeurs as $nom_champ => $valeur) {
if(!$exclusive) {
 
if(is_array($valeur)) {
foreach($valeur as $cle => $valeur_multi_meta) {
$chaine_recherche .= '(amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur LIKE '.$this->proteger('%'.$cle.'%').')'.$separateur;
foreach($valeurs as $nom_champ => $valeur) {
 
if(is_array($valeur)) {
foreach($valeur as $cle => $valeur_multi_meta) {
$chaine_recherche .= '(amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur LIKE '.$this->proteger('%'.$cle.'%').')'.$separateur;
}
} else {
if(trim($valeur) != '') {
$chaine_recherche .= '(amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur = '.$this->proteger($valeur).')'.$separateur;
}
}
} else {
if(trim($valeur) != '') {
$chaine_recherche .= '(amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur = '.$this->proteger($valeur).')'.$separateur;
}
} else {
foreach($valeurs as $nom_champ => $valeur) {
 
if(is_array($valeur)) {
foreach($valeur as $cle => $valeur_multi_meta) {
$chaine_recherche .= ' amv_cle_ligne IN (SELECT amv_cle_ligne FROM annu_meta_valeurs WHERE amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur LIKE '.$this->proteger('%'.$cle.'%').')'.$separateur;
}
} else {
if(trim($valeur) != '') {
$chaine_recherche .= ' amv_cle_ligne IN (SELECT amv_cle_ligne FROM annu_meta_valeurs WHERE amv_ce_colonne = '.$this->proteger($nom_champ).' AND amv_valeur = '.$this->proteger($valeur).')'.$separateur;
}
}
}
}
}
 
if(trim($chaine_recherche) == '') {
502,7 → 518,7
$requete_recherche = 'SELECT DISTINCT amv_cle_ligne '.
'FROM annu_meta_valeurs '.
'WHERE '.$chaine_recherche ;
 
$resultat_recherche = $this->requeteTous($requete_recherche);
 
if($resultat_recherche) {
/trunk/modeles/StatistiqueModele.php
79,4 → 79,4
}
 
}
?>
?>