Subversion Repositories eFlore/Applications.eflore-consultation

Rev

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

Rev 931 Rev 1004
Line 110... Line 110...
110
		$chaine = str_replace($codeReferentiel, '', $chaine);
110
		$chaine = str_replace($codeReferentiel, '', $chaine);
111
		return $chaine;
111
		return $chaine;
112
	}
112
	}
Line 113... Line 113...
113
	
113
	
-
 
114
	private function chargerRepartition() {
114
	private function chargerRepartition() {
115
		$numsNomsASynonymes = $this->extraireNumerosNomSynonymes();
115
		if (Config::get(Registre::get('parametres.referentiel').'.baseRepartition') != "") {
116
		if (Config::get(Registre::get('parametres.referentiel').'.baseRepartition') != "") {
116
			$this->apiCartes->setProjet(Config::get(Registre::get('parametres.referentiel').'.baseRepartition'));
117
			$this->apiCartes->setProjet(Config::get(Registre::get('parametres.referentiel').'.baseRepartition'));
117
			$this->apiCartes->setLargeur('108x101');
118
			$this->apiCartes->setLargeur('108x101');
118
			$urls = array();
119
			$urls = array();
119
			foreach ($this->noms as $nom) {
120
			foreach ($this->noms as $nom) {
120
				if (array_key_exists('nom_retenu.code', $nom)) {
121
				if (array_key_exists('nom_retenu.code', $nom)) {
121
					$id = $nom['nom_retenu.code'];
122
					$id = $nom['nom_retenu.code'];
-
 
123
					$id = $this->supprimerCodeReferentielAvecNn($id);
122
					$id = $this->supprimerCodeReferentielAvecNn($id);
124
					$idsNoms = $numsNomsASynonymes[$id];
123
					$this->apiCartes->setId("nn:$id");
125
					$this->apiCartes->setId("nn:".implode(',',$idsNoms)."");
124
					if (array_key_exists($id, $urls) == false) {
126
					if (array_key_exists($id, $urls) == false) {
125
						$urls[$id] = $this->apiCartes->getUrlPng();
127
						$urls[$id] = $this->apiCartes->getUrlPng();
126
					}
128
					}
127
				}
129
				}
128
			}
130
			}
129
			$this->infosPourTpl['repartition']['urls'] = $urls;
131
			$this->infosPourTpl['repartition']['urls'] = $urls;
130
		}
132
		}
Line -... Line 133...
-
 
133
	}
-
 
134
	
-
 
135
	private function extraireNumerosNomSynonymes() {
-
 
136
		$numNomsASynonyme = array();
-
 
137
		//TODO: pourrait surement être bien plus efficace 
-
 
138
		// et ne faire qu'une seule boucle
-
 
139
		foreach ($this->noms as $id => $nom) {
-
 
140
			$num_nom_retenu = $this->supprimerCodeReferentielAvecNn($nom['nom_retenu.code']);
-
 
141
			if(!isset($numNomsASynonyme[$num_nom_retenu])) {
-
 
142
				$numNomsASynonyme[$num_nom_retenu] = array();
-
 
143
			}
-
 
144
			$numNomsASynonyme[$num_nom_retenu][] = $id;
-
 
145
			if(!in_array($num_nom_retenu,$numNomsASynonyme[$num_nom_retenu])) {
-
 
146
				$numNomsASynonyme[$num_nom_retenu][] = $num_nom_retenu;
-
 
147
			}
-
 
148
		}
-
 
149
		foreach($this->noms as $id => $nom) {
-
 
150
			$num_nom_retenu = $this->supprimerCodeReferentielAvecNn($nom['nom_retenu.code']);
-
 
151
			if($id != $num_nom_retenu) {
-
 
152
				$numNomsASynonyme[$id] = $numNomsASynonyme[$num_nom_retenu];
-
 
153
			}
-
 
154
		}
-
 
155
		return $numNomsASynonyme;
131
	}
156
	}
132
	
157
	
133
	function supprimerAccents($chaine){
158
	function supprimerAccents($chaine){
134
		return strtr($chaine,array('à' => 'a','á' => 'a','â' => 'a','ã' => 'a','ä' => 'a',
159
		return strtr($chaine,array('à' => 'a','á' => 'a','â' => 'a','ã' => 'a','ä' => 'a',
135
										'ç' => 'c',
160
										'ç' => 'c',