Changeset 76812 in spip-zone


Ignore:
Timestamp:
Oct 1, 2013, 9:43:13 AM (6 years ago)
Author:
esj@…
Message:

Rainette: extension du 3e argument du modèle de prévision. Si celui-ci est non pas un entier positif mais une date (i.e. interprétable par strtotime), on calcule le nombre de jours séparant cette date de la date du jour. Si ce nombre est positif et inférieur au maximum, on le prend comme valeur de 3e argument, sinon on retourne un message que la prévision demandée est indisponible.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/rainette/branches/v1.4.3/inc/rainette_filtres.php

    r59161 r76812  
    8282/**
    8383 * Charger le fichier des infos meteos jour par jour
    84  * et rendre l'affichage pour les N premiers jours
     84 * et rendre l'affichage pour les $nb_jours_affiche premiers jours
     85 * $nb_jours_affiche peut aussi etre de la forme Y/m/D ou Y-m-D
     86 * auquel cas on prend le nb de jours separant cette date de la courante.
     87 * Si negatif ou superieur au max, on retourne "indisponible".
    8588 *
    8689 * @param string $code_meteo
    87  * @param int $nb_jours_affiche
     90 * @param int|string $nb_jours_affiche
    8891 * @return string
    8992 * @author Cedric Morin
     
    9194function rainette_croaaaaa_previsions($code_meteo, $type='x_jours', $jour=0, $modele='previsions_24h'){
    9295        include_spip('inc/rainette_utils');
    93 
    9496        if ($type == '1_jour') {
    95                 $jour = min($jour, _RAINETTE_JOURS_PREVISION-1);
     97                if (($d = intval(strtotime(strval($jour)))) <= 0)
     98                        $jour = min($jour, _RAINETTE_JOURS_PREVISION-1);
     99                else {
     100                        $d = intval(ceil(($d-time())/(24*3600)));
     101                        if (($d < 0) OR ($d >= _RAINETTE_JOURS_PREVISION))
     102                                return  _T('rainette:meteo') . '&nbsp;: ' .
     103                                        _T('rainette:meteo_previsions') . ' ' .
     104                                         $jour . '&nbsp;: ' .
     105                                        _T('rainette:meteo_na');
     106                        $jour = $d;
     107                }
    96108               
    97109                $nom_fichier = charger_meteo($code_meteo, 'previsions');
Note: See TracChangeset for help on using the changeset viewer.