Subversion Repositories eFlore/Applications.eflore-consultation

Compare Revisions

Ignore whitespace Rev 1476 → Rev 1477

/trunk/configurations/config_wordpress.ini
1,18 → 1,11
; +------------------------------------------------------------------------------------------------------+
; Paramètrage de la session
; Devons nous démarrer une session : oui (true) ou non (false)
session_demarrage = "php:false"
; Encodage de sortie de l'application dans le contexte de Papyrus
; sortie_encodage = "ISO-8859-1"
; URL de base de l'application, si elle est laissée vide, l'application fonctionnera en Stand-alone
; url_base = "php:$GLOBALS['_GEN_commun']['url']->getUrl()"
#url_base = "https://beta.tela-botanica.org/test/eflore"
url_base = "https://beta.tela-botanica.org/test
; ------- Configuration d'eFlore pour intégration dans Wordpress ---------------
 
; URL de base de l'application avec l'indication du fichier de départ
url_base = "http://localhost/test/eflore"
url_base_index = "{ref:url_base}"
; URL de base où se situe le .htaccess réalisant la réécriture d'URL pour les permaliens de l'application
url_base_permalien = "https://beta.tela-botanica.org/"
#base_url_application = "{ref:url_base}/"
base_url_application = "https://beta.tela-botanica.org/test/eflore"
base_url_application_index = "{ref:url_base}/"
fichier_index = "eflore"
 
; Sert à fabriquer les chemins des images, notamment
; => défini à l'exécution d'après la config ACF "Applis externes"
;base_url_application = ""
/trunk/configurations/config_wordpress.defaut.ini
New file
0,0 → 1,11
; ------- Configuration d'eFlore pour intégration dans Wordpress ---------------
 
; URL de base de l'application avec l'indication du fichier de départ
url_base = "http://localhost/test/eflore"
url_base_index = "{ref:url_base}"
base_url_application_index = "{ref:url_base}/"
fichier_index = "eflore"
 
; Sert à fabriquer les chemins des images, notamment
; => défini à l'exécution d'après la config ACF "Applis externes"
;base_url_application = ""
/trunk/modules/fiche/squelettes/fiche_accueil_niveau2.tpl.html
20,7 → 20,7
</h2>
<div class="categories">
 
<? $url = htmlentities(Registre::get('eFlore.index') . '?referentiel='.Registre::get('parametres.referentiel').'&niveau='.Registre::get('parametres.niveau').'&module=fiche&action=fiche&num_nom='.$num_nom.'&type_nom='.$type_nom.'&nom='.$nom.'&onglet=');?>
<? $url = htmlentities(Registre::get('eFlore.urlBase')->getUrl() . Registre::get('eFlore.index') . '?referentiel='.Registre::get('parametres.referentiel').'&niveau='.Registre::get('parametres.niveau').'&module=fiche&action=fiche&num_nom='.$num_nom.'&type_nom='.$type_nom.'&nom='.$nom.'&onglet=');?>
<ul class="categories-items">
<li class="categories-item <?= ($onglet == 'synthese') ? 'est-active' : '' ;?>" title="<?=$i18n['onglet-descr-synth']?>" id="onglet_synthese">
<h3 class="categories-item-titre"><a class="categories-item-lien" rel="synthese" href="<?=$url;?>synthese">
/trunk/modules/fiche/Fiche.php
100,8 → 100,8
",botanique,plante,description,ecologie,reconnaitre,fiche espece");
 
$nom_sci_html = $this->nom_retenu->get('nom_sci_html');
// la recherche avancée à partir du clic sur le nom ne fonctionne pas sur les hybrides
$nom_sci_html = strpos($nom_sci_html, 'class="hyb"') === false ?
// la recherche avancée à partir du clic sur le nom ne fonctionne pas sur les hybrides
$nom_sci_html = strpos($nom_sci_html, 'class="hyb"') === false ?
$this->formaterLiensNomsHtml($nom_sci_html) : $nom_sci_html;
// titre de la fiche
125,7 → 125,7
 
// onglet
$donnees['onglet'] = $this->onglet;
$donnees['niveau'] = $niveau;
$donnees['niveau'] = $niveau;
$donnees['base_url_onglets'] = Config::get('base_url_application_onglets');
$taxons = new Taxons();
142,12 → 142,12
}
public function executerTemplateAjax() {
$classe = ucfirst($this->onglet);
$classe = ucfirst($this->onglet);
$onglet = new $classe($this->conteneur);
$action = 'obtenir'.ucfirst($_GET['sous_action']);
$html_ajax = $onglet->$action();
header('Content-type : text/html');
echo $html_ajax;
echo $html_ajax;
exit;
}
156,8 → 156,8
$params = array();
$classes_recherche = array("fam" => "fam", "gen" => "gen", "sp" => "sp", "infra-sp" => "ssp");
$doc = new DOMDocument();
$doc->loadHTML($nom_sci_html);
$doc = new DOMDocument();
$doc->loadHTML($nom_sci_html);
$spans = $doc->getElementsByTagName('span');
$abbrs = $doc->getElementsByTagName('abbr');
165,15 → 165,15
$i18n = I18n::get('Fiche');
//TODO: c'est un peu moche, la fonction est surement factorisable
if ($spans->length > 0) {
//TODO: c'est un peu moche, la fonction est surement factorisable
if ($spans->length > 0) {
foreach($spans as $span) {
$classe = $span->getAttribute('class');
if(in_array($classe, array_keys($classes_recherche))) {
$params[$classes_recherche[$classe]] = $span->nodeValue;
if($classe == "sp") {
$params_subsp = $params;
if($classe == "sp") {
$params_subsp = $params;
}
$lien_tpl = html_entity_decode($this->url->obtenirUrlRechercheAvancee($params));
$texte_lien = $span->nodeValue;
182,10 → 182,10
$text = $doc->createElement('a', $texte_lien);
$text->setAttribute('href', $lien_tpl);
$text->setAttribute('title', $i18n["lien-recherche-hier-".$classe]);
$text->setAttribute('class', 'lien_recherche_hier');
$text->setAttribute('class', 'lien_recherche_hier');
$span->appendChild($text);
}
}
}
}
if ($abbrs->length > 0) {
192,14 → 192,14
foreach($abbrs as $abbr) {
$classe = $abbr->getAttribute('class');
$params_subsp["type"] = $abbr->nodeValue;
$lien_tpl = html_entity_decode($this->url->obtenirUrlRechercheAvancee($params_subsp));
$texte_lien = $abbr->nodeValue;
$abbr->nodeValue = "";
$text = $doc->createElement('a', $texte_lien);
$text->setAttribute('href', $lien_tpl);
$text->setAttribute('title', $i18n["lien-recherche-hier-ssp"]);
$text->setAttribute('class', 'lien_recherche_hier');
$lien_tpl = html_entity_decode($this->url->obtenirUrlRechercheAvancee($params_subsp));
$texte_lien = $abbr->nodeValue;
$abbr->nodeValue = "";
$text = $doc->createElement('a', $texte_lien);
$text->setAttribute('href', $lien_tpl);
$text->setAttribute('title', $i18n["lien-recherche-hier-ssp"]);
$text->setAttribute('class', 'lien_recherche_hier');
$abbr->appendChild($text);
}
}
233,6 → 233,7
'wiki' => $description->getLienWikini(),
'nom_retenu' => $this->nom_retenu->get('nom_sci'),
'mobile' => $urlMobile,
'baseUrlIco' => Registre::get('eFlore.urlBaseDossier')->getUrl() . '/',
'qr_code_png' => $this->obtenirUrlQrCode($urlMobile)
);
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_pied_page', $donnees), true);
/trunk/modules/fiche/formateurs/Statut.php
69,8 → 69,10
if ($projet != "") {
$nnr = $this->nomCourant->getNnr();
$reponse = $this->statuts->getStatutsZoneGeo($projet, $nnr);
foreach ($reponse as $statut) {
$statuts[$statut['type_protection']][] = $statut['zone_application'];
if (! empty($reponse)) {
foreach ($reponse as $statut) {
$statuts[$statut['type_protection']][] = $statut['zone_application'];
}
}
$this->meta->setProjet($projet);
$meta = $this->meta->getMetaDonnees();
/trunk/modules/fiche/formateurs/Description.php
185,7 → 185,9
$this->textes->setProjet('coste');
$this->textes->setId('bdtfx.nt:'.$this->nomCourant->getNt());
$texte = $this->textes->getTexte();
$texte = array_pop($texte['resultats']);
if (! empty($texte['resultats'])) {
$texte = array_pop($texte['resultats']);
}
if ($texte) {
$coste['titre'] = $texte['titre'];
$coste['description'] = self::mettreEnFormeCoste($texte['texte']);
/trunk/eflore_wordpress.php
1,9 → 1,6
<?php
// declare(encoding='UTF-8');
/** Inclusion du fichier principal de l'application*/
 
function __autoload($nom_classe) {
// Tableau des chemins à inclure pour trouver une classe relatif à ce fichier
$chemins = array(
'..'.DS.'bibliotheque'.DS.'dao',
'..'.DS.'bibliotheque'.DS.'utilitaires',
22,89 → 19,55
unset($_GET['langue']);
}
 
// Le fichier Framework.php du Framework de Tela Botanica doit être appelé avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
// L'emplacement du Framework peut varier en fonction de l'environnement (test, prod...). Afin de faciliter la configuration
// de l'emplacement du Framework, un fichier framework.defaut.php doit être renommé en framework.php et configuré pour chaque installation de
// l'application.
// Chemin du fichier chargeant le framework requis
$framework = dirname(__FILE__).'/framework.php';
if (!file_exists($framework)) {
$e = "Veuillez paramêtrer l'emplacement et la version du Framework dans le fichier $framework";
trigger_error($e, E_USER_ERROR);
} else {
// Inclusion du Framework
require_once $framework;
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));// Optionnel
// Inclusion du Framework
$framework = __DIR__ . '/framework.php';
require_once $framework;
 
// Vous pouvez ci-dessous commencer le développement de votre application
if (Config::get('debogage')) {
Debug::tailleMemoireScript('Taille mémoire du script :');
}
if (Config::get('benchmark_chrono')) {
Chronometre::chrono("Lancement d'eFlore");
}
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));// Optionnel
 
Config::charger("../eflore-test/consultation/configurations/config_wordpress.ini");
//var_dump(Config::get('url_base'));
//exit;
// Annuler les fausses bonnes idées du JPFramework
restore_exception_handler();
restore_error_handler();
//error_reporting(E_ALL ^ E_NOTICE);
 
// Initialisation du controleur principal de l'application
try {
AppControleur::initialiser();
} catch (Exception $e) {
$message = $e->getMessage()."\nLigne : ".$e->getLine()."\nFichier : ".$e->getFile();
Debug::printr($message);
}
// Configuration spécifique à Wordpress (URL racine, fichier d'index)
Config::charger(__DIR__ . "/configurations/config_wordpress.ini");
 
if (Config::get('benchmark_chrono')) {
Chronometre::chrono("Arrêt d'eFlore");
}
}
// Configuration issue de la page ACF "Applis externes"
Config::set('base_url_application', $chemin_eflore_http);
 
// Initialisation du controleur principal de l'application
AppControleur::initialiser();
 
// Hook d'ajout des scripts
add_action('wp_enqueue_scripts', 'eflore_scripts_et_styles');
 
// ajout des scripts - utiliser dans le hook ci-dessus uniquement
function eflore_scripts_et_styles() {
global $chemin_eflore_http;
// Styles
wp_enqueue_style('eFlore-wordpress', $chemin_eflore_http . '/presentations/styles/eflore_wordpress.css');
wp_enqueue_style('jquery-ui', 'https://resources.tela-botanica.org/jquery/jquery-ui/1.10.2/css/smoothness/jquery-ui-1.10.2.custom.css');
wp_enqueue_style('jquery-fancybox', 'https://resources.tela-botanica.org/jquery/fancybox/1.3.4/jquery.fancybox-1.3.4.css');
 
// Scripts
// @TODO remplacer ce patch cracra par une mise à jour du code JS d'eFlore
wp_enqueue_script('jquery-noconflict-compat', 'https://resources.tela-botanica.org/jquery/jquery-noconflict-compat.js');
//wp_enqueue_script('jquery', 'https://resources.tela-botanica.org/jquery/1.9.1/jquery.min.js');
wp_enqueue_script('jquery-cookie', 'https://resources.tela-botanica.org/jquery/cookie/1.0/jquery.cookie.min.js');
wp_enqueue_script('jquery-ui', 'https://resources.tela-botanica.org/jquery/jquery-ui/1.10.2/js/jquery-ui-1.10.2.custom.min.js');
wp_enqueue_script('jquery-fancybox', 'https://resources.tela-botanica.org/jquery/fancybox/1.3.4/jquery.fancybox-1.3.4.pack.js');
 
//wp_enqueue_script('eFlore-commun', $chemin_eflore_http . '/presentations/scripts/commun.js');
wp_enqueue_script('eFlore-eFlore', $chemin_eflore_http . '/presentations/scripts/eflore.js');
wp_enqueue_script('eFlore-recherche', $chemin_eflore_http . '/presentations/scripts/recherche.js');
wp_enqueue_script('eFlore-fiche-synthese', $chemin_eflore_http . '/presentations/scripts/fiche-synthese.js');
wp_enqueue_script('eFlore-fiche-synthese', $chemin_eflore_http . '/presentations/scripts/fiche-synthese.js');
}
 
 
//require_once 'eflore.php';?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<!-- moteur de recherche dans le navigateur chemin xml -->
<link rel="search" type="application/opensearchdescription+xml" title="eFlore <?php echo strtoupper($referentiel); ?> : noms scientifiques" href="configurations/RechercheOpenSearch/OpenSearch<?php echo ucfirst($referentiel); ?>.xml" />
<!-- Favicones -->
<link rel="icon" type="image/png" href="http://resources.tela-botanica.org/tb/img/16x16/favicon.png" />
<link rel="shortcut icon" type="image/x-icon" href="http://resources.tela-botanica.org/tb/img/16x16/favicon.ico" />
 
<!-- CSS -->
<link href="../../eflore/consultation/presentations/styles/eflore_wordpress.css" rel="stylesheet" type="text/css" />
<!-- <link href="https://www.tela-botanica.org/sites/botanique/generique/styles/botanique.css" rel="stylesheet" type="text/css" />-->
<link href="https://www.tela-botanica.org/commun/jquery/jquery-ui/1.10.2/css/ui-lightness/jquery-ui-1.10.2.custom.css" rel="stylesheet" type="text/css" />
<link href="https://www.tela-botanica.org/commun/jquery/fancybox/1.3.4/jquery.fancybox-1.3.4.css" rel="stylesheet" type="text/css" />
 
 
<!-- JavaScript -->
<script type="text/javascript" src="https://www.tela-botanica.org/commun/jquery/1.7.1/jquery-1.7.1.js"></script>
<script type="text/Javascript" src="https://www.tela-botanica.org/commun/jquery/cookie/1.0/jquery.cookie.min.js"></script>
<script type="text/javascript" src="https://www.tela-botanica.org/commun/jquery/jquery-ui/1.10.2/js/jquery-ui-1.10.2.custom.min.js"></script>
<script type="text/Javascript" src="https://www.tela-botanica.org/commun/jquery/fancybox/1.3.4/jquery.fancybox-1.3.4.pack.js"></script>
 
<script type="text/Javascript" src="https://www.tela-botanica.org/sites/commun/generique/scripts/commun.js"></script>
 
<script type="text/Javascript" src="../../eflore-test/consultation/presentations/scripts/eflore.js"></script>
<script type="text/Javascript" src="../../eflore-test/consultation/presentations/scripts/recherche.js"></script>
<script type="text/Javascript" src="../../eflore-test/consultation/presentations/scripts/fiche-synthese.js"></script>
 
<!-- JavaScript et CSS spécifiques au module -->
<?php echo AppControleur::getEntete(); ?>
</head>
<?php
echo AppControleur::getContenuCorps();
 
 
?>
// Affichage du contenu de l'application
function eflore_get_contenu() {
return AppControleur::getContenuCorps();
}