Subversion Repositories eFlore/Applications.eflore-consultation

Compare Revisions

Ignore whitespace Rev 1104 → Rev 1105

/trunk/modules/mobile/Mobile.php
30,7 → 30,7
$this->nom_retenu = $this->conteneur->getNomCourant()->getNomRetenu();
spl_autoload_register(array($this, 'chargerClassesSources'));
}
 
private function chargerClassesSources($classe) {
$base = dirname(__FILE__).DS;
$cheminSources = $base.'sources'.DS;
45,36 → 45,26
}
 
private function capturerParametres() {
if (isset($_GET['num_nom'])) {
$this->parametres['num_nom'] = $_GET['num_nom'];
}
if (isset($_GET['nom'])) {
$this->parametres['nom'] = $_GET['nom'];
}
if (isset($_GET['type_nom'])) {
$this->parametres['type_nom'] = $_GET['type_nom'];
}
if (isset($_GET['referentiel'])) {
$this->parametres['referentiel'] = $_GET['referentiel'];
Registre::set('parametres.referentiel', $_GET['referentiel']);
}
if (isset($_GET['niveau'])) {
Registre::set('parametres.niveau', $_GET['niveau']);
}
if (isset($_GET['theme'])) {
$this->theme = $_GET['theme'];
}
$this->parametres['num_nom'] = isset($_GET['num_nom']) ? $_GET['num_nom'] : '';
$this->parametres['nom'] = isset($_GET['nom']) ? $_GET['nom'] : '';
$this->parametres['type_nom'] = isset($_GET['type_nom']) ? $_GET['type_nom'] : 'nom_scientifique';
$this->theme = isset($_GET['theme']) ? $_GET['theme'] : $this->theme;
 
$referentiel = isset($_GET['referentiel']) ? $_GET['referentiel'] : '';
Registre::set('parametres.referentiel', $referentiel);
 
$niveau = isset($_GET['niveau']) ? $_GET['niveau'] : '1';
Registre::set('parametres.niveau', $niveau);
}
 
public function executerActionParDefaut() {
$this->executerFiche();
}
 
public function executerFiche(){
$niveau = isset($_GET['niveau']) ? $_GET['niveau'] : '1';
$squelette = 'theme_'.$this->theme.'_niveau'.$niveau;
$niveau = Registre::get('parametres.niveau');
$squelette = "theme_{$this->theme}_niveau{$niveau}";
 
$donnees = $this->parametres;
$donnees['nom_retenu'] = $this->nom_retenu->get('nom_sci_html').' '.$this->nom_retenu->get('auteur');
$donnees['famille'] = $this->nom_retenu->getTaxonSupRang('180');
82,19 → 72,19
$donnees['css'] = $this->obtenirLienCss();
$donnees['url_absolue'] = "http://".$_SERVER['SERVER_NAME'].'/'.$_SERVER['REQUEST_URI'];
$donnees['contenu_onglet'] = $this->getVue($squelette, $donnees);
$donnees['lien'] = $this->url->obtenirUrlMobile($this->parametres['num_nom'], $this->parametres['type_nom'], $this->parametres['nom']);
$donnees['lien'] = $this->url->obtenirUrlMobile($this->parametres['num_nom']);
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche', $donnees), true);
//print_r($donnees);
}
 
public function obtenirDonnees() {
$donnees = array();
$num_nom = $this->nomCourant->getNns();
$referentiel = $this->conteneur->getParametre('referentiel');
 
$taxons = new Taxons($this->conteneur);
$donnees['permalien_num_nom'] = $taxons->getUrlPermalienNumNom($referentiel, 1, $num_nom);
 
$sources = array('illustrations', 'repartition', 'texte', 'floraison', 'nomsCommuns');
foreach ($sources as $source) {
$nom_classe = ucfirst($source);
104,14 → 94,13
 
return $donnees;
}
 
private function obtenirLienCss() {
$lien = 'modules/mobile/presentations/css/';
$theme = $this->theme;
if (strcmp($this->theme, 'pyracantha') >= 0) {
$lien .= 'pyracantha_blanc.css';
} else {
$lien .= 'gentiana.css';
$theme = 'pyracantha_blanc';
}
$lien = "modules/mobile/presentations/css/$theme.css";
return $lien;
}
}
/trunk/modules/fiche/Fiche.php
70,21 → 70,21
}
 
public function executerFiche(){
 
$squelette = 'fiche_'.$this->onglet;
 
//Gestion du niveau
$niveau = isset($_GET['niveau']) ? $_GET['niveau'] : 2;
if ($this->onglet == 'synthese' && $niveau != null) {
$squelette .= '_niveau'.$niveau;
}
 
// Récupération parametres et données
$donnees = $this->parametres;
$donnees = array_merge($this->obtenirDonnees(), $donnees);
$donnees['i18n'] = I18n::get('Fiche');
$verna = (isset($donnees['ethnobotanique']['nomsVerna'])) ? $donnees['ethnobotanique']['nomsVerna'][0]['nom_vernaculaire'] : "";
 
// titre, description et tag de la page
$this->setSortie('titre', $this->nom_retenu->get('nom_sci'));
$this->setSortie('description', "Fiche descriptive de ".$this->nom_retenu->get('nom_sci')." ".
91,16 → 91,16
$verna." ".$donnees['description']['titre']." ".implode(" ", $donnees['description']['description']));
$this->setSortie('tags', $this->nom_retenu->get('nom_sci').",".$verna.
",botanique,plante,description,ecologie,reconnaitre,fiche espece");
 
// titre de la fiche
$donnees['nom_retenu_html'] = $this->nom_retenu->get('nom_sci_html').' '.$this->nom_retenu->get('auteur');
$donnees['nom_retenu'] = $this->nom_retenu->get('nom_sci');
$donnees['famille'] = $this->nom_retenu->getTaxonSupRang('180');
$donnees['nom_vernaculaire'] = $verna;
 
// moteur de recherche
$this->executerAction('Recherche', 'executerAccueil', $this->parametres);
 
// page synthese
$blocs_niveaux = $this->conteneur->getParametreTableau('blocs_fiche_defaut');
$donnees['blocs'] = '"'.str_replace('|', '","', $blocs_niveaux[Registre::get('parametres.niveau')]).'"';
109,7 → 109,7
$donnees['onglet'] = $this->onglet;
$donnees['contenu_onglet'] = $this->getVue($squelette, $donnees);
$donnees['base_url_onglets'] = Config::get('base_url_application_onglets');
 
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_accueil_niveau'.$niveau, $donnees), true);
$this->ajouterPiedDePage();
}
119,12 → 119,12
$export = $this->getVue('fiche_pdf_lien', $donnees);
return $export;
}
 
public function ajouterPiedDePage() {
$description = new Description($this->conteneur);
$taxons = new Taxons($this->conteneur);
$referentiel = $this->conteneur->getParametre('referentiel');
$urlMobile = $this->url->obtenirUrlMobile($this->parametres['num_nom'], $this->parametres['type_nom'], $this->parametres['nom']);
$urlMobile = $this->url->obtenirUrlMobile($this->parametres['num_nom']);
$donnees = array('wikipedia' => $description->getUrlWikipedia(),
'export_pdf' => $this->ajouterLienModuleExport(),
'permalien_num_nom' => $taxons->getUrlPermalienNumNom($referentiel, 1, $this->conteneur->getNomCourant()->getNns()),
138,7 → 138,7
);
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_pied_page', $donnees), true);
}
 
private function obtenirUrlQrCode($urlMobile) {
$qr = $this->conteneur->getQrCode();
$qr->setUrl(htmlspecialchars_decode($urlMobile));
146,7 → 146,7
$urlQrCode = $qr->dessiner($idQrCode);
return $urlQrCode;
}
 
public function executerOnglet(){
$this->viderSorties();
$donnees = $this->obtenirDonnees();