Changeset 64703 in spip-zone


Ignore:
Timestamp:
Aug 11, 2012, 12:16:35 PM (7 years ago)
Author:
eric@…
Message:

Creation des fonction de construction du cache et de l'url

Location:
_plugins_/rainette/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/rainette/trunk/inc/rainette_utils.php

    r64702 r64703  
    4040function charger_meteo($lieu, $mode='previsions', $service='weather') {
    4141
     42        // Traitement des cas ou les arguments sont vides
     43        if (!$mode) $mode = 'previsions';
     44        if (!$service) $service = 'weather';
     45
    4246        // En fonction du service, on inclut le fichier des fonctions
    4347        // Le principe est que chaque service propose la même liste de fonctions d'interface dans un fichier unique
    4448        include_spip("services/${service}_utils");
    4549
    46         $lieu = strtoupper($lieu);
    4750        $f = service2cache($lieu, $mode);
    4851
     
    7477
    7578function charger_infos($lieu='', $type_infos='', $service='weather') {
     79
     80        // Traitement des cas ou les arguments sont vides
    7681        if (!$lieu) return '';
     82        if (!$service) $service = 'weather';
     83
    7784        $nom_fichier = charger_meteo($lieu, 'infos', $service);
    7885        lire_fichier($nom_fichier,$tableau);
  • _plugins_/rainette/trunk/public/rainette_balises.php

    r64702 r64703  
    66        $type_info = interprete_argument_balise(2,$p);
    77        $type_info = isset($type_info) ? str_replace('\'', '"', $type_info) : '""';
    8         $service = interprete_argument_balise(2,$p);
     8        $service = interprete_argument_balise(3,$p);
    99        $service = isset($service) ? str_replace('\'', '"', $service) : '"weather"';
    1010
  • _plugins_/rainette/trunk/rainette_options.php

    r48557 r64703  
    88define ('_RAINETTE_RELOAD_TIME_PREVISIONS',2*3600); // pas la peine de recharger un flux de moins de 2h
    99define ('_RAINETTE_RELOAD_TIME_CONDITIONS',1800); // pas la peine de recharger un flux de moins de 30mn
    10 define ('_RAINETTE_JOURS_PREVISION', 10);
    11 define ('_RAINETTE_SYSTEME_MESURE','m');
    1210// Valeur utilisee pour definir une donnee non determinee dans les fichiers (NE PAS MODIFIER)
    1311define ('_RAINETTE_VALEUR_INDETERMINEE','N/D');
  • _plugins_/rainette/trunk/services/weather_utils.php

    r64700 r64703  
    11<?php
     2define('_RAINETTE_WEATHER_URL_BASE', 'http://xml.weather.com/weather/local/');
     3define('_RAINETTE_WEATHER_JOURS_PREVISION', 10);
     4define('_RAINETTE_WEATHER_SYSTEME_MESURE','m');
    25
    36function service2cache($lieu, $mode) {
     
    58        $dir = sous_repertoire(_DIR_CACHE, 'rainette');
    69        $dir = sous_repertoire($dir, 'weather');
    7         $f = $dir . $lieu . "_" . $mode . ".txt";
     10        $f = $dir . strtoupper($lieu) . "_" . $mode . ".txt";
    811
    912        return $f;
     
    1215function service2url($lieu, $mode) {
    1316
    14         $url = 'http://xml.weather.com/weather/local/' . $lieu . '?unit=' . _RAINETTE_SYSTEME_MESURE;
     17        $url = _RAINETTE_WEATHER_URL_BASE . strtoupper($lieu) . '?unit=' . _RAINETTE_WEATHER_SYSTEME_MESURE;
    1518        if ($mode != 'infos') {
    16                 $url .= ($mode == 'previsions') ? '&dayf=' . _RAINETTE_JOURS_PREVISION : '&cc=*';
     19                $url .= ($mode == 'previsions') ? '&dayf=' . _RAINETTE_WEATHER_JOURS_PREVISION : '&cc=*';
    1720        }
    1821
  • _plugins_/rainette/trunk/services/wwo_utils.php

    r64700 r64703  
    22// free.worldweatheronline.com/feed/weather.ashx?key=30e3b46523060112120708&q=Paris,France&cc=no&fx=yes&format=xml&num_of_days=5&extra=localObsTime&includeLocation=yes
    33define('_RAINETTE_WWO_URL_BASE', 'http://free.worldweatheronline.com/feed/weather.ashx');
     4define('_RAINETTE_WWO_JOURS_PREVISIONS', 5);
    45
    56function service2cache($lieu, $mode) {
    67
    78        $dir = sous_repertoire(_DIR_CACHE, 'rainette');
    8         $dir = sous_repertoire($dir, 'weather');
    9         $dir = sous_repertoire($dir, substr(md5($lieu), 0, 1));
    10         $f = $dir . $lieu . "_" . $mode . ".txt";
     9        $dir = sous_repertoire($dir, 'wwo');
     10        $f = $dir . str_replace(array(',', '+'), '-', $lieu) . "_" . $mode . ".txt";
    1111
    1212        return $f;
     
    1515function service2url($lieu, $mode) {
    1616
    17         $url = 'http://xml.weather.com/weather/local/' . $lieu . '?unit=' . _RAINETTE_SYSTEME_MESURE;
    18         if ($mode != 'infos') {
    19                 $url .= ($mode == 'previsions') ? '&dayf=' . _RAINETTE_JOURS_PREVISION : '&cc=*';
     17        $url = _RAINETTE_WWO_URL_BASE
     18                .  '&format=xml&extra=localObsTime'
     19                .  'q=' . str_replace(' ', '', trim($lieu))
     20                .  '?key=' . '30e3b46523060112120708';
     21        if ($mode == 'infos') {
     22                $url .= '&includeLocation=yes';
     23        }
     24        else {
     25                $url .= ($mode == 'previsions') ? '&cc=no&fx=yes&num_of_days=' . _RAINETTE_WWO_JOURS_PREVISIONS : '&cc=yes&fx=no';
    2026        }
    2127
Note: See TracChangeset for help on using the changeset viewer.