/** * Charger le fichier des previsions meteos * et retourne une feuille de styles, * un style ayant pour selecteur #D$annee-$mois-$jour sur 8 chiffres * et pour propriete un background-url sur l'icone de la prevision. * Si le 2e argument est fourni a True, renvoie les dates Unix * de la derniere prevision et de la suivante, separees par --. * * @param string $code_meteo * @param boolean $intervalle * @return string */ function rainette_croaaaaa_previsions_css($code_meteo, $intervalle = false) { include_spip('inc/rainette_utils'); $texte = $vus = array(); $maj = ''; lire_fichier(charger_meteo($code_meteo, 'previsions'), $previsions); foreach (unserialize($previsions) as $j => $prevision) { if (empty($prevision['date'])) { $maj = @$prevision['derniere_maj']; if ($intervalle and $maj) { break; } else { continue; } } if ($intervalle) { continue; } $icone = code2icone($prevision["code_icone_jour"]); list($src, , ) = rainette_icone($icone, '', '', 'petit', false); if ($src) { $src = "{ background: url({$src}) }"; $sel = "#D" . $prevision['date']; // Si deja vu, partager pour reduire la feuille $k = array_search($src, $vus); if ($k === false) { $vus[$j] = $src; $texte[$j] = "{$sel}\n {$src}"; } else { $texte[$k] = "{$sel}, " . $texte[$k]; } } } if (!$intervalle) { return join("\n", $texte); } if (!$maj) { return ''; } $maj = strtotime($maj); $j = $maj + _RAINETTE_RELOAD_TIME_PREVISIONS; return "{$maj} -- {$j}"; }
function charger_infos($code_meteo = '', $type_infos = '') { if (!$code_meteo) { return ''; } $nom_fichier = charger_meteo($code_meteo, 'infos'); lire_fichier($nom_fichier, $tableau); if (!$type_infos) { return $tableau; } else { $tableau = unserialize($tableau); $info = $tableau[strtolower($type_infos)]; if (!$info) { $info = ucfirst($type_infos) . "(" . $code_meteo . ")"; } return $info; } }