Subversion Repositories eFlore/Applications.eflore-consultation

Rev

Rev 43 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
33 jpm 1
<?php
2
class RechercheSimple extends aControleur {
3
 
4
	//+----------------------------------------------------------------------------------------------------------------+
5
	// Méthodes
6
	/**
7
	 * Fonction d'affichage par défaut
8
	 */
53 delphine 9
 
10
 
33 jpm 11
	public function executerActionParDefaut() {
53 delphine 12
		if (isset($_GET['referentiel'])) {
13
			Registre::set('parametres.referentiel', $_GET['referentiel']);
14
		}
33 jpm 15
		$this->executerAccueil();
16
	}
17
 
18
	public function executerAccueil() {
19
		$donnees = array();
20
		$donnees['i18n'] = I18n::get('Recherche-accueil');
21
 
22
		$donnees['referentiel_titre'] = I18n::get('Referentiels-titres.'.Config::get('referentiel'));
23
 
24
		$donnees['form_nom'] = $this->executerFormulaireNom();
25
 
26
		$this->setSortie(self::RENDU_CORPS, $this->getVue('recherche_accueil', $donnees));
27
	}
28
 
29
	public function executerFormulaireNom() {
43 delphine 30
		$donnees['eflore_type_nom'] = 'nom_vernaculaire';
33 jpm 31
		$donnees['i18n'] = I18n::get('Recherche-form-nom');
32
		$donnees['url_js'] = Config::get('url_js');
33
 
34
		return $this->getVue('form_nom', $donnees);
35
	}
36
 
43 delphine 37
	public function executerRechercheNom() {
38
		if ($_GET['eflore_nom'] == '') {
39
			$donnees['information'] = 'Veuillez saisir un radical contenant au moins 3 caractères alphabétiques !';
40
		} elseif ($_GET['eflore_type_nom'] == 'nom_vernaculaire') {
53 delphine 41
			$noms = new NomsVernaculaires(Config::get('referentielVerna'));
42
			$donnees['nom_approche'] = $this->rechercherNom($noms);
43 delphine 43
		} else {
53 delphine 44
			$noms = new Noms(Registre::get('parametres.referentiel'));
45
			$donnees['nom_approche'] = $this->rechercherNom($noms);
43 delphine 46
		}
47
		if (isset($donnees)) {
48
			$donnees['eflore_type_nom'] = $_GET['eflore_type_nom'];
49
			$donnees['i18n'] = I18n::get('Recherche-accueil');
50
			$donnees['referentiel_titre'] = I18n::get('Referentiels-titres.'.Config::get('referentiel'));
51
 
52
			$donnees['i18n'] = I18n::get('Recherche-form-nom');
53
			$donnees['url_js'] = Config::get('url_js');
54
 
55
			$donnees['form_nom'] = $this->getVue('form_nom', $donnees);
56
			$this->setSortie(self::RENDU_CORPS, $this->getVue('recherche_accueil', $donnees));
57
		} else {
58
			// envoyerResultat;
59
		}
33 jpm 60
	}
53 delphine 61
 
62
	public function rechercherNom($noms) {
63
		$noms_approches = '';
64
		$res = $noms->getRechercheEtendue($_GET['eflore_nom']); //print_r($res);
65
		if ($res == false || $res->entete->total == 0) {
66
			$res = $noms->getRechercheFloue($_GET['eflore_nom']);
67
			if (!($res == false || $res->entete->total == 0)) {
68
				$res = (array) $res->resultat;
69
				$noms_appr = array_shift($res); //print_r($noms_appr);
70
				/*foreach ($res->resultat as $id=>$nom) {
71
					$noms_approches[$id]['nom'] = ($_GET['eflore_type_nom'] == 'nom_vernaculaire') ? $nom->nom : $nom->nom_sci;
72
					$noms_approches[$id]['url'] = $nom->href;
73
				}*/
74
			}
75
		}
76
		return $noms_approches;
77
	}
33 jpm 78
}
79
?>