Subversion Repositories Applications.annuaire

Compare Revisions

No changes between revisions

Regard whitespace Rev 472 → Rev 473

/trunk/controleurs/AnnuaireControleur.php
166,6 → 166,7
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;
 
1200,7 → 1201,8
$valeur = $valeurs_recherchees['departement'];
$champ_critere = $tableau_mappage[0]['champ_code_postal'];
 
$criteres = array($tableau_mappage[0]['champ_pays'] => $valeurs_recherchees['pays'],
$criteres = array(
$tableau_mappage[0]['champ_pays'] => $valeurs_recherchees['pays'],
$tableau_mappage[0]['champ_code_postal'] => $valeurs_recherchees['departement']
);
}
1432,4 → 1434,3
return $this->AnnuaireModele->chargerNombreAnnuaireListeInscritsParDepartement($id_annuaire);
}
}
?>
Property changes:
Added: svnkit:entry:sha1-checksum
+944bd9cfcd47b6193f55d5774b921b5d4a220ca4
\ No newline at end of property
/trunk/controleurs/CartoControleur.php
10,11 → 10,9
* @copyright 2010 Tela-Botanica
* @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$
*/
class CartoControleur extends AppControleur {
 
 
// identifiant de la france pour l'accès direct
private $id_france = 'fr';
 
111,21 → 109,16
* @param int $niveau le niveau de la carto (monde, continent, ou pays)
*/
private function chargerZonesNbre($id_annuaire, &$zones, $niveau = 0) {
 
$metaModele = $this->getModele('AnnuaireModele');
// on charge les inscrits pour le niveau donné
$zones_infos = $this->chargerNombreInscritsParNiveauGeographique($id_annuaire, $niveau);
 
foreach ($zones as $id => &$infos) {
 
// si l'on a des données pour la zone, on renseigne le nombre d'inscrits
if (isset($zones_infos[$id])) {
 
$nbre = $zones_infos[$id];
$infos['info_nombre'] = $nbre;
$this->total_inscrits_zone += $nbre;
} else {
// sinon on le met à 0
$infos['info_nombre'] = 0;
295,9 → 288,6
* @return array un tableau associatif indexé par les identifiants de zone et contenant le nombre d'inscrits pour chaque zone
*/
private function chargerNombreInscritsParNiveauGeographique($id_annuaire, $niveau) {
 
$nb_inscrits = array();
 
if($niveau == 0) {
// si on est au niveau des continents
$zones_ids = array();
309,10 → 299,9
}
 
$annuaire_controleur = new AnnuaireControleur();
 
$nb_inscrits = array();
switch ($niveau) {
// niveau de la carte du monde
case 0:
case 0 : // niveau de la carte du monde
// pour chacun des continents, on fait la somme des membres de sa zone
foreach($templates as $id_continent => $template) {
$zones_continent_ids = $this->chargerZonesParCsv(Application::getChemin().Config::get('carte_fonds_chemin').$template);
319,34 → 308,21
$nb_inscrits[$id_continent] = array_sum($annuaire_controleur->chargerNombreAnnuaireListeInscritsParPays($id_annuaire, $zones_continent_ids));
}
break;
 
// niveau de la carte des pays d'un continent
case 1:
case 1 : // niveau de la carte des pays d'un continent
$nb_inscrits = $annuaire_controleur->chargerNombreAnnuaireListeInscritsParPays($id_annuaire, $zones_ids);
break;
 
// détail d'un pays
case 2 :
case 2 : // détail d'un pays
$nb_inscrits = $annuaire_controleur->chargerNombreAnnuaireListeInscritsParDepartement($id_annuaire);
break;
 
// action par défaut
default:
// on renvoie un tableau vide
$nb_inscrits = array();
break;
}
 
return $nb_inscrits;
}
public function obtenirUrlsNavigation($id_annuaire ,$continent = null, $pays = null, $departement = null) {
$donnees = array();
$url_carte_monde = new URL(Config::get('url_base'));
$url_carte_monde->setVariableRequete('id_annuaire', $id_annuaire);
$url_carte_monde->setVariableRequete('m', 'annuaire_afficher_carte');
$donnees = array();
$donnees['url_carte_monde'] = $url_carte_monde;
$donnees['nom_carte_monde'] = 'Carte du monde';
361,7 → 337,6
}
if($pays != null && trim($pays) != '') {
$templates_continents = $this->renvoyerTousTemplates();
$infos_continents = $this->chargerInformationsPaysDuContinentsCsv($templates_continents[$continent]);
$infos_pays = $infos_continents[$pays];
392,42 → 367,32
}
 
$donnees['nb_resultats'] = $this->total_inscrits_zone;
 
return $donnees;
}
public function chargerInformationsContinentCsv() {
$nom_csv = Application::getChemin().Config::get('carte_fonds_chemin').'continents';
return $this->chargerInformationsCompletesParCsv($nom_csv);
}
public function chargerInformationsPaysDuContinentsCsv($continent) {
$nom_csv = Application::getChemin().Config::get('carte_fonds_chemin').$continent;
 
return $this->chargerInformationsCompletesParCsv($nom_csv);
}
public function chargerInformationsDepartementsFranceCsv() {
$nom_csv = Application::getChemin().Config::get('carte_fonds_chemin').'france';
return $this->chargerInformationsCompletesParCsv($nom_csv);
}
public function chargerInformationsCompletesParCsv($nom_csv) {
$fichier_csv = $nom_csv.'.csv';
$infos = array();
 
if (($handle = fopen($fichier_csv, 'r')) !== false) {
$ligne = 0;
 
while (($donnees = fgetcsv($handle, 1000, ',')) !== false) {
if($ligne != 0 && trim($donnees[0]) != '') {
$infos[$donnees[0]] = $donnees;
}
$ligne++;
434,9 → 399,7
}
fclose($handle);
}
 
return $infos;
}
 
/**
445,15 → 408,11
* @return array un tableau contenant les identifiants des zones
*/
private function chargerZonesParCsv($nom_csv) {
 
$fichier_csv = $nom_csv.'.csv';
$zones_id = array();
 
if (($handle = fopen($fichier_csv, 'r')) !== false) {
$ligne = 0;
 
while (($donnees = fgetcsv($handle, 1000, ',')) !== false) {
if($ligne != 0 && trim($donnees[0]) != '') {
$zones_id[] = "'".$donnees[0]."'";
}
461,8 → 420,6
}
fclose($handle);
}
 
return $zones_id;
}
}
?>
}
Property changes:
Added: svnkit:entry:sha1-checksum
+be06e5e37b1d0280628ea8db298296154bfefe64
\ No newline at end of property