Subversion Repositories eFlore/Projets.eflore-projets

Compare Revisions

Ignore whitespace Rev 1134 → Rev 1135

/trunk/services/modules/0.1/moissonnage/Cartes.php
231,7 → 231,8
 
/**
* Va chercher la carte dans le cache si elle existe et n'a pas dépassé la durée
* de vie $this->dureeCache; sinon, crée la carte et la met en cache
* de vie $this->dureeCache; sinon, crée la carte et la met en cache.
* Avec le paramètre "recalculer=1", on force le vidage du cache et on recrée la carte
*/
protected function obtenirCarte() {
$carte = null;
239,6 → 240,11
$cheminCache = Config::get('cache_stockageChemin');
$cheminCarteEnCache = $cheminCache . $this->referentiel . "-nn-" . $this->taxon['num_nom'] . ".svg";
 
// a-t-on demandé à régénérer la carte de force ?
$recalculer = false;
if (isset($this->parametres['recalculer'])) {
$recalculer = ($this->parametres['recalculer'] === '1');
}
// le cache est-il actif ?
if ($cacheActif) {
// le fichier existe-t-il en cache ?
247,13 → 253,13
$limiteDuree = Config::get('cache_dureeDeVie'); // pour ne pas trop faire pipi
$dateFichier = filectime($cheminCarteEnCache);
$age = time() - $dateFichier;
// est-il suffisamment récent ?
if ($age < $limiteDuree) {
// si le cache est trop vieux ou qu'on a demandé à recalculer
if (($age > $limiteDuree) || $recalculer) {
// détruire le fichier obsolète
unlink($cheminCarteEnCache);
} else {
// récupérer le fichier en cache
$carte = file_get_contents($cheminCarteEnCache);
} else {
// détruire le fichier obsolète
unlink($cheminCarteEnCache);
}
}
}