Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3828 → Rev 3829

/trunk/widget/modules/photo/config.defaut.ini
10,7 → 10,11
; Afficher/Cacher l'affichage en grand de la dernière image ajoutée
extraActif = true
; url service widget image
celUrlImages = "https://api.tela-botanica.org/service:cel:CelWidgetImage/"
celUrlImages = "https://api.tela-botanica.org/service:cel:CelWidgetImage/*"
; url profil utilisateur
tbProfilUrlTpl = "https://www.tela-botanica.org/profil-par-id/%s"
; afficher le champ de recherche
champRecherche = true
 
[photo.cache]
; Active/Désactive le cache
/trunk/widget/modules/photo/squelettes/popup.tpl.html
169,15 → 169,15
<ul id="contenu-telechargement">
<li id="titre-original" class="row">
<div class="col-5 label">Titre original</div>
<div class="col-5 contenu"></div>
<div class="col-7 contenu"></div>
</li>
<li id="date-photo" class="row">
<div class="col-5 label">Date de la photo</div>
<div class="col-5 contenu"></div>
<div class="col-7 contenu"></div>
</li>
<li id="Licence-bis" class="row">
<div class="col-5 label">Licence</div>
<div class="col-5 contenu">
<div class="col-7 contenu">
<a target="_blank" href="http://creativecommons.org/licenses/by-sa/2.0/fr/">CC-BY-SA 2.0 FR</a>
</div>
</li>
264,7 → 264,7
</div>
<div id="info-img-galerie" class="carousel col-lg-8 col-12" data-ride="carousel" data-interval="false">
<div class="carousel-inner h-100 w-100">
<?php for($index = 0; $index < $max_photo; $index++) :?>
<?php for($index = $start; $index < ($start + $max_photo); $index++) :?>
<div id="img-cadre-<?php echo $index; ?>" class="carousel-item">
<img id="illustration-<?php echo $index;?>" class="d-block align-middle" src="<?php echo $urls[$index];?>" alt="" data-width="<?php echo $infos_images[$urls[$index]]['width'];?>" data-height="<?php echo $infos_images[$urls[$index]]['height'];?>">
</div>
297,7 → 297,7
'urlWidget' : "<?php echo $url_widget; ?>",
'urls' : [<?php echo '"'.implode($urls, '","').'"'; ?>],
'infos_images' : <?php echo json_encode($infos_images); ?>,
'indexImage' : 0,
'indexImage' : <?php echo $start ;?>,
'urlImage' : "<?php echo $url_image; ?>",
'tailleMax' : 580,
'popupUrl' : "<?php echo $popup_url; ?>",
/trunk/widget/modules/photo/squelettes/css/popup.css
214,6 → 214,7
#volets-fct {
padding: 0 1rem;
width: calc(100% - 1rem);
overflow-wrap: break-word;
}
 
#volets-fct h2 {
407,4 → 408,3
font-size: 0.8rem;
}
}
 
/trunk/widget/modules/photo/squelettes/css/photoCommun.css
6,6 → 6,10
outline:none !important;
}
 
html {
font-size: 100%;
}
 
body {
font-family: Muli,sans-serif;
font-size: 0.8rem;
94,6 → 98,12
border : none;
}
 
.todo {
/*.todo {
display: none !important;
}
}*/
 
@media screen and ( max-width: 340px ) {
html {
font-size: 80%;
}
}
/trunk/widget/modules/photo/squelettes/css/photo.css
109,13 → 109,17
}
 
.form-recherche .bloc-recherche .bouton-rechercher,
.form-recherche .bloc-recherche .bouton-plus-filtres {
.form-recherche .bloc-recherche .bouton-plus-filtres,
#bouton-photos-suivantes,
#bouton-photos-suivantes:hover {
border: 0 none;
}
 
.form-recherche .bloc-recherche .bouton-rechercher,
.form-recherche .bloc-recherche .bouton-rechercher:hover,
.form-recherche .bloc-recherche .bouton-plus-filtres:hover {
.form-recherche .bloc-recherche .bouton-plus-filtres:hover,
#bouton-photos-suivantes,
#bouton-photos-suivantes:hover {
color: #fff;
}
 
/trunk/widget/modules/photo/squelettes/photo.tpl.html
100,7 → 100,7
<?php include "analytics.html"; ?>
<?php endif; ?>
</head>
<body>
<body style="margin: 0">
<!-- WIDGET:CEL:PHOTO - DEBUT -->
<div id="cel-photo-contenu<?php echo $id; ?>" class="cel-photo-contenu">
<?php if (isset($erreurs) || isset($informations)) : ?>
132,97 → 132,99
</a>
<?php endif; ?>
</h1>
<form id="form-recherche<?php echo $id; ?>" class="form-recherche container" action="">
<div id="bloc-recherche<?php echo $id; ?>" class="bloc-recherche form-inline d-flex justify-content-center w-100">
<input type="text" id="champ-recherche<?php echo $id; ?>" name="champ-recherche<?php echo $id; ?>" class="recherche form-control mr-1" placeholder="Votre recherche">
<input type="hidden" id="filtres<?php echo $id; ?>" name="filtres<?php echo $id; ?>">
<a id="bouton-rechercher<?php echo $id; ?>" class="btn btn-success bouton-rechercher mr-1"><i class="fas fa-search"></i>&nbsp;Rechercher</a>
<a id="bouton-plus-filtres<?php echo $id; ?>" class="btn btn-outline-secondary bouton-plus-filtres">
<span class="plus">
<i class="fas fa-chevron-down"></i>&nbsp;Plus&nbsp;de&nbsp;filtres
</span>
<span class="moins hidden">
<i class="fas fa-chevron-up"></i>&nbsp;Fermer&nbsp;les&nbsp;filtres
</span>
</a>
</div>
<div id="autres-filtres<?php echo $id; ?>" class="autres-filtres row hidden">
<a id="bouton-fermer-filtres<?php echo $id; ?>" class="btn bouton-fermer-filtres"><i class="fas fa-times"></i></a>
<div id="bloc-filtres-gauche" class="bloc-filtres bloc-filtres-gauche col-lg-6">
<div class="row bloc-taxon bloc-filtre">
<label for="taxon">Taxon</label>
<input type="text" id="taxon" name="taxon" class="form-control">
</div>
<div class="row bloc-referentiel bloc-filtre">
<label for="referentiel">Référentiel</label>
<select name="referentiel" id="referentiel" class="custom-select form-control referentiel">
<option value="bdtfxr" selected="selected" title="Trachéophytes de France métropolitaine">Métropole (index réduit)</option>
<option value="bdtfx" title="Trachéophytes de France métropolitaine">Métropole (BDTFX)</option>
<option value="bdtxa" title="Trachéophytes des Antilles">Antilles françaises (BDTXA)</option>
<option value="bdtre" title="Trachéophytes de La Réunion">Réunion (BDTRE)</option>
<option value="aublet" title="Guyane">Guyane (AUBLET2)</option>
<option value="florical" title="Nouvelle-Calédonie">Nouvelle-Calédonie (FLORICAL)</option>
<option value="isfan" title="Afrique du Nord">Afrique du Nord (ISFAN)</option>
<option value="apd" title="Afrique de l'Ouest et du Centre">Afrique de l'Ouest et du Centre (APD)</option>
<option value="lbf" title="Liban">Liban (LBF)</option>
<option value="autre" title="Autre/Inconnu">Autre/Inconnu</option>
</select>
</div>
<div class="bloc-periode bloc-filtre">
<label for="periode" class="d-block">Date (début-fin)</label>
<div class="form-row">
<div class="form-group mb-lg-0 mb-1 col">
<input type="date" id="periode-debut" name="periode-debut" class="form-control">
<?php if (!empty($champ_recherche)) : ?>
<form id="form-recherche<?php echo $id; ?>" class="form-recherche container" action="">
<div id="bloc-recherche<?php echo $id; ?>" class="bloc-recherche form-inline d-flex justify-content-center w-100">
<input type="text" id="champ-recherche<?php echo $id; ?>" name="champ-recherche<?php echo $id; ?>" class="recherche form-control mr-1" placeholder="Votre recherche">
<input type="hidden" id="filtres<?php echo $id; ?>" name="filtres<?php echo $id; ?>">
<a id="bouton-rechercher<?php echo $id; ?>" class="btn btn-success bouton-rechercher mr-1"><i class="fas fa-search"></i>&nbsp;Rechercher</a>
<a id="bouton-plus-filtres<?php echo $id; ?>" class="btn btn-outline-secondary bouton-plus-filtres">
<span class="plus">
<i class="fas fa-chevron-down"></i>&nbsp;Plus&nbsp;de&nbsp;filtres
</span>
<span class="moins hidden">
<i class="fas fa-chevron-up"></i>&nbsp;Fermer&nbsp;les&nbsp;filtres
</span>
</a>
</div>
<div id="autres-filtres<?php echo $id; ?>" class="autres-filtres row hidden">
<a id="bouton-fermer-filtres<?php echo $id; ?>" class="btn bouton-fermer-filtres"><i class="fas fa-times"></i></a>
<div id="bloc-filtres-gauche" class="bloc-filtres bloc-filtres-gauche col-lg-6">
<div class="row bloc-taxon bloc-filtre">
<label for="taxon">Taxon</label>
<input type="text" id="taxon" name="taxon" class="form-control">
</div>
<div class="row bloc-referentiel bloc-filtre">
<label for="referentiel">Référentiel</label>
<select name="referentiel" id="referentiel" class="custom-select form-control referentiel">
<option value="bdtfxr" selected="selected" title="Trachéophytes de France métropolitaine">Métropole (index réduit)</option>
<option value="bdtfx" title="Trachéophytes de France métropolitaine">Métropole (BDTFX)</option>
<option value="bdtxa" title="Trachéophytes des Antilles">Antilles françaises (BDTXA)</option>
<option value="bdtre" title="Trachéophytes de La Réunion">Réunion (BDTRE)</option>
<option value="aublet" title="Guyane">Guyane (AUBLET2)</option>
<option value="florical" title="Nouvelle-Calédonie">Nouvelle-Calédonie (FLORICAL)</option>
<option value="isfan" title="Afrique du Nord">Afrique du Nord (ISFAN)</option>
<option value="apd" title="Afrique de l'Ouest et du Centre">Afrique de l'Ouest et du Centre (APD)</option>
<option value="lbf" title="Liban">Liban (LBF)</option>
<option value="autre" title="Autre/Inconnu">Autre/Inconnu</option>
</select>
</div>
<div class="bloc-periode bloc-filtre">
<label for="periode" class="d-block">Date (début-fin)</label>
<div class="form-row">
<div class="form-group mb-lg-0 mb-1 col">
<input type="date" id="periode-debut" name="periode-debut" class="form-control">
</div>
<div class="form-group mb-0 col">
<input type="date" id="periode-fin" name="periode-fin" class="form-control">
</div>
</div>
<div class="form-group mb-0 col">
<input type="date" id="periode-fin" name="periode-fin" class="form-control">
</div>
<input type="hidden" id="periode" name="periode">
</div>
<input type="hidden" id="periode" name="periode">
<div class="row bloc-localite bloc-filtre">
<label for="localite">Localité</label>
<input type="text" id="localite" name="localite" class="form-control">
</div>
<div class="row bloc- bloc-filtre">
<label for="departement">Département</label>
<input type="text" id="departement" name="departement" class="form-control" placeholder="Numéros (séparés par des virgules)">
</div>
<div class="row bloc- bloc-filtre">
<label for="pays">Pays</label>
<input type="text" id="pays" name="pays" class="form-control">
</div>
</div>
<div class="row bloc-localite bloc-filtre">
<label for="localite">Localité</label>
<input type="text" id="localite" name="localite" class="form-control">
</div>
<div class="row bloc- bloc-filtre">
<label for="departement">Département</label>
<input type="text" id="departement" name="departement" class="form-control" placeholder="Numéros (séparés par des virgules)">
</div>
<div class="row bloc- bloc-filtre">
<label for="pays">Pays</label>
<input type="text" id="pays" name="pays" class="form-control">
</div>
</div>
<div id="bloc-filtres-droite" class="bloc-filtres bloc-filtres-droite col-lg-6">
<div class="row bloc- bloc-filtre">
<label for="auteur">Auteur</label>
<input type="text" id="auteur" name="auteur" class="form-control" placeholder="Nom, email">
</div>
<div class="row bloc- bloc-filtre">
<label for="programme">Programme</label>
<input type="text" id="programme" name="programme" class="form-control">
</div>
<div class="row bloc- bloc-filtre">
<label for="tags">Tags (tous)</label>
<input type="text" id="tags" name="tags" class="form-control">
</div>
<div class="list bloc-photos-affichees bloc-filtre mt-3">
<div class="form-check mt-3">
<input type="checkbox" id="non-standards" name="photos-affichees" class="non-standards form-check-input" value="non-standards">
<label for="non-standards" class="non-standards form-check-label">Afficher les photos des observations non "standards"</label>
<div id="bloc-filtres-droite" class="bloc-filtres bloc-filtres-droite col-lg-6">
<div class="row bloc- bloc-filtre">
<label for="auteur">Auteur</label>
<input type="text" id="auteur" name="auteur" class="form-control" placeholder="Nom, email">
</div>
<div class="form-check mt-3">
<input type="checkbox" id="indesirables" name="photos-affichees" class="indesirables form-check-input" value="indesirables">
<label for="indesirables" class="indesirables form-check-label">Afficher les photos signalées comme indésirables</label>
<div class="row bloc- bloc-filtre">
<label for="programme">Programme</label>
<input type="text" id="programme" name="programme" class="form-control">
</div>
<div class="form-check mt-3">
<input type="checkbox" id="smartphone-anonyme" name="photos-affichees" class="smartphone-anonyme form-check-input" value="smartphone-anonyme">
<label for="smartphone-anonyme" class="smartphone-anonyme form-check-label">Afficher les photos des observations smartphone anonyme</label>
<div class="row bloc- bloc-filtre">
<label for="tags">Tags (tous)</label>
<input type="text" id="tags" name="tags" class="form-control">
</div>
<div class="list bloc-photos-affichees bloc-filtre mt-3">
<div class="form-check mt-3">
<input type="checkbox" id="non-standards" name="photos-affichees" class="non-standards form-check-input" value="non-standards">
<label for="non-standards" class="non-standards form-check-label">Afficher les photos des observations non "standards"</label>
</div>
<div class="form-check mt-3">
<input type="checkbox" id="indesirables" name="photos-affichees" class="indesirables form-check-input" value="indesirables">
<label for="indesirables" class="indesirables form-check-label">Afficher les photos signalées comme indésirables</label>
</div>
<div class="form-check mt-3">
<input type="checkbox" id="smartphone-anonyme" name="photos-affichees" class="smartphone-anonyme form-check-input" value="smartphone-anonyme">
<label for="smartphone-anonyme" class="smartphone-anonyme form-check-label">Afficher les photos des observations smartphone anonyme</label>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</form>
<?php endif ; ?>
<div id="cel-galerie-photo<?php echo $id; ?>" class="cel-galerie-photo">
<div class="grid-sizer"></div>
<?php foreach ($items as $i => $item) : ?>
261,7 → 263,11
</div>
</div>
<?php endforeach; ?>
 
<?php if ($total > ($start + $limit)): ?>
<a id="bouton-photos-suivantes" href="<?php echo $url_widget_photos_suivantes;?>" class="btn btn-success"><i class="fas fa-forward"></i>&nbsp;Photos suivantes</a>
<?php else :?>
<div class="alert alert-secondary mt-0 ml-1" role="alert" style="display: inline-block;">Toutes les photos disponibles, correspondant à vos critères, ont été affichées</div>
<?php endif;?>
</div>
<p class="cel-photo-pieds discretion nettoyage">
<span class="cel-photo-source">
/trunk/widget/modules/photo/squelettes/js/WidgetPhoto.js
14,6 → 14,7
gutter: 10,
percentPosition: true
});
 
};
 
WidgetPhoto.prototype.initEvts = function() {
/trunk/widget/modules/photo/squelettes/js/WidgetPhotoPopup.js
501,7 → 501,6
 
case 'date_obs':
contenu = lthis.formaterDate( contenu );
console.log(contenu);
break;
 
case 'tags_obs':
517,7 → 516,7
$contenuPlusMeta.append(
'<li id="' + idAttr + '-meta-plus" class="row">'+
'<div class="col-5 label">' + label.charAt( 0 ).toUpperCase() + label.slice( 1 ) + '</div>'+
'<div class="col-5 contenu">' + contenu + '</div>'+
'<div class="col-7 contenu">' + contenu + '</div>'+
'</li>'
);
}
635,8 → 634,11
 
let url = lthis.urlServiceRegenererMiniature + lthis.idImage;
 
$.get( url ).fail( function() {
console.log( 'a foiré :(' );
$.get( url, function( data ) {
console.log( data );
}
).fail( function() {
console.log( 'La régénérétion d´image ne s´est pas faite' );
});
});
};
/trunk/widget/modules/photo/Photo.php
42,8 → 42,12
'X3L' => '1600px',
'O' => 'Format original (Taille inconnue)'
];
const START_DEFAUT = 0;
const LIMIT_DEFAUT = 100;
private $url_widget = null;
private $eflore_url_tpl = null;
private $service_images_url = null;
private $flux_rss_url = null;
private $eflore_url_tpl = null;
 
// Suffixe de template pour la langue (vide par défaut, correspond à "fr" au français)
private $suffixeLangue = '';
60,7 → 64,7
if (!isset($mode)) {
$mode = self::SERVICE_DEFAUT;
}
 
$this->url_widget = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'photo');
$this->eflore_url_tpl = $this->config['photo']['efloreUrlTpl'];
$this->service_images_url = $this->config['photo']['celUrlImages'];
$this->flux_rss_url = $this->config['photo']['fluxRssUrl'];
107,7 → 111,7
}
}
if (isset($_GET['callback'])) {
$this->envoyerJsonp(array('contenu' => $contenu));
$this->envoyerJsonp(['contenu' => $contenu]);
 
} else {
$this->envoyer($contenu);
115,11 → 119,19
}
}
 
// maintenir la retrocompatibilité avec l'ancien mode ajax
private function executerAjax() {
$widget = $this->executerPhoto();
unset($this->parametres['mode']);
 
$widget['squelette'] = 'photo_ajax';
$chaineRequete = http_build_query($this->parametres);
$chaineRequete = $chaineRequete ? '?'.$chaineRequete : '';
$widget['donnees']['url_widget'] = $this->url_widget.$chaineRequete;
 
$id = '-'.(isset($this->parametres['id']) ? $this->parametres['id'] : '1');
$widget['donnees']['id'] = $id;
 
$widget['squelette'] = 'photo_retrocompatibilite_ajax';
 
return $widget;
}
 
131,10 → 143,11
$widget['donnees']['url_image'] = $_GET['url_image'];
$widget['donnees']['infos_images'] = $_SESSION[$galerie_id]['infos_images'];
$widget['donnees']['urls'] = $_SESSION[$galerie_id]['urls'];
$widget['donnees']['url_widget'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'photo');
$widget['donnees']['url_widget'] = $this->url_widget;
$widget['donnees']['url_css'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/photo/squelettes/css/');
$widget['donnees']['url_js'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/photo/squelettes/js/');
$widget['donnees']['max_photo'] = $_SESSION[$galerie_id]['max_photo'];
$widget['donnees']['start'] = $_SESSION[$galerie_id]['start'];
$widget['donnees']['url_ws_regenerer_img'] = sprintf($this->config['chemins']['baseURLServicesCelTpl'], self::WS_IMG_LIST) . '/regenerer-miniatures?ids-img=';
$widget['donnees']['popup_url'] = isset( $_GET['popup_url'] ) ? $_GET['popup_url'] : null;
$widget['donnees']['url_base_telechargement'] = sprintf($this->config['chemins']['baseURLServicesCelTpl'], 'CelImageFormat/');
148,7 → 161,7
private function executerContact() {
session_start();
 
$widget['donnees']['url_widget'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'photo');
$widget['donnees']['url_widget'] = $this->url_widget;
$widget['donnees']['id_image'] = $_GET['id_image'];
$widget['donnees']['nom_sci'] = $_GET['nom_sci'];
$widget['donnees']['nn'] = $_GET['nn'];
179,6 → 192,9
 
$widget = null;
 
$this->parametres['start'] = $this->parametres['start'] ?? self::START_DEFAUT;
$this->parametres['limit'] = $this->parametres['limit'] ?? self::LIMIT_DEFAUT;
 
extract($this->parametres);
 
$hasTriedValueInConfig = false;
194,9 → 210,19
 
list($colonne, $ligne) = explode(',', $vignette);
$extra = (isset($extra) && $extra == 0) ? false : (!$this->config['photo']['extraActif'] ? false : ($colonne == 1 || $ligne == 1 ? false : true));
 
$champ_recherche = $champ_recherche ? $this->obtenirBooleen($champ_recherche) : ($this->config['photo']['champRecherche'] ? $this->obtenirBooleen($this->config['photo']['champRecherche']) : false) ;
$max_photo = $colonne * $ligne;
if ( $extra && 2 == $colonne ) {
$max_photo = $max_photo - 1;
} elseif ( $extra && 2 < $colonne ) {
$max_photo = $max_photo - 3;
}
$limit = $limit < $max_photo ? $limit : $max_photo;
$this->parametres['limit'] = $limit;
$parametresTraites = $this->traiterParametres();
$this->flux_rss_url .= $parametresTraites;
$url = $this->service_images_url.(!empty($parametresTraites) ? $parametresTraites : '*');
$url = $this->service_images_url.(!empty($parametresTraites) ? $parametresTraites.'&' : '?');
$json = $this->getDao()->consulter($url);
 
 
210,25 → 236,28
if (empty($tableau['total']) || empty($tableau['images'])) {
$this->messages[] = 'Aucune photo ne correspond à vos critères';
} else {
 
$parametresPhotoSuivante = $this->parametres;
$parametresPhotoSuivante['start'] = $start + $limit;
 
$widget['donnees']['total'] = $tableau['total'];
$widget['donnees']['id'] = $id;
$widget['donnees']['titre'] = $titre;
// $widget['donnees']['service_images_url'] = $this->service_images_url;
$widget['donnees']['flux_rss_url'] = $this->flux_rss_url;
$widget['donnees']['url_widget'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'photo');
$widget['donnees']['url_widget'] = $this->url_widget;
$widget['donnees']['url_widget_photos_suivantes'] = $this->url_widget.'?'.http_build_query($parametresPhotoSuivante);
$widget['donnees']['url_css'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/photo/squelettes/css/');
$widget['donnees']['url_js'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/photo/squelettes/js/');
$widget['donnees']['colonne'] = $colonne;
$widget['donnees']['ligne'] = $ligne;
$widget['donnees']['extra_actif'] = $extra;
$widget['donnees']['icone_rss'] = $icone_rss;
$widget['donnees']['champ_recherche'] = $champ_recherche;
$widget['donnees']['start'] = $start;
$widget['donnees'] ['limit'] = $limit;
$widget['donnees']['utilise_fancybox'] = $utilise_fancybox;
$widget['donnees']['prod'] = ($this->config['parametres']['modeServeur'] === 'prod');
 
$max_photo = $colonne * $ligne;
if ( $extra && 2 == $colonne ) {
$max_photo = $max_photo - 1;
} elseif ( $extra && 2 < $colonne ) {
$max_photo = $max_photo - 3;
}
$num = 0;
$galerie_id = md5(http_build_query($_GET));
$widget['donnees']['galerie_id'] = $galerie_id;
261,6 → 290,7
$item['height'] = $image_size[1];
$_SESSION[$galerie_id]['urls'][] = $url_galerie_popup;
$_SESSION[$galerie_id]['max_photo'] = $max_photo;
$_SESSION[$galerie_id]['start'] = $start;
$_SESSION[$galerie_id]['infos_images'][$url_galerie_popup] = $item;
}
 
273,7 → 303,29
 
private function traiterParametres() {
$parametres_flux = '?';
$criteres = array('utilisateur', 'commune', 'dept', 'taxon', 'commentaire', 'date', 'tag', 'motcle', 'projet', 'num_taxon', 'num_nom', 'referentiel', 'groupe_zones_geo');
$criteres = [
'taxon',
'referentiel',
'date_deb',
'date_fin',
'commune',
'dept',
'pays',
'auteur',
'programme',
'tag',
'non_standard',
'indesirable',
'pn_smartphone_anonyme',
'recherche',
'date',
'motcle',
'projet',
'num_taxon',
'num_nom',
'start',
'limit'
];
 
foreach($this->parametres as $nom_critere => $valeur_critere) {
if (in_array($nom_critere, $criteres)) {
292,5 → 344,17
 
return $parametres_flux;
}
 
private function obtenirBooleen($var) {
switch ($var) {
case 'false' :
case 'null' :
case 'non' :
case 'no' :
return false;
default:
return boolval($var);
}
}
}
?>