Module Weather pour ZwiiCMS
Affiche la météo et les prévisions pour une ville donnée via [WeatherAPI](https://www.weatherapi.com/).
Permet également de configurer les unités, le nombre de jours de prévisions, la langue, la qualité de l’air et les alertes météo.
Fonctionnalités
- Météo courante : température, humidité, vent, UV, pression, visibilité, précipitations.
- Tendances heure par heure.
- Prévisions sur plusieurs jours (configurable, par défaut 3 jours, jusqu'à 14 jours maximum).
- Affichage de la qualité de l’air (PM2.5, PM10, O3, NO2, SO2, CO) si activé.
- Alertes météo via WeatherAPI.
- Gestion du cache simple pour réduire les appels à l’API (10 minutes par défaut).
- Configuration facile via l’interface admin.
Installation
1. Copier le module dans le répertoire `modules/weather` de votre ZwiiCMS.
2. Assurez-vous que le dossier `site/data/weather/` est accessible en écriture (pour le cache et la configuration).
3. Créer un compte gratuit sur [WeatherAPI](https://www.weatherapi.com/) et récupérer une clé API.
4. Configurer le module via l’interface admin :
- Ville par défaut (ou latitude/longitude)
- Clé API
- Unités : métrique ou impérial
- Langue
- Nombre de jours de prévisions
- Activation ou non des alertes et de la qualité de l’air
- Formats date/heure
Configuration
Exemple des options disponibles dans le formulaire admin :
| Option | Description |
|---------------------|---------------------------------------------------------------------------------------------|
| **city** | Ville pour laquelle récupérer la météo |
| | Ou indiquez la latitude et la longitude du lieu. Pour Paris : 48.86, 2.35 |
| **units** | Unités : `metric` (°C, km/h) ou `imperial` (°F, mph) |
| **apiKey** | Clé API WeatherAPI |
| **lang** | Langue des données (`fr`, `en`, `de`, `es`, `it`, `pt`, `el`, `tr`) |
| **days** | Nombre de jours pour les prévisions (1 à 14) |
| **aqi** | Activer la qualité de l’air |
| **alerts** | Activer les alertes météo |
| **dateFormat** | Format de la date (ex: `%A %d %B %Y`) |
| **timeFormat** | Format de l’heure (ex: `%H:%M`) |
Utilisation
- Page publique : `/weather/index`
Affiche la météo courante et les prévisions.
- Page de configuration : `/weather/config`
Accessible aux utilisateurs avec droit d’édition.
Notes techniques
- Module écrit en PHP orienté objet (classe `weather`).
- Utilise WeatherAPI pour récupérer les données météo.
- Cache simple stocké dans `site/data/weather/weather.json`.
- Compatibilité avec PHP >= 7.4 recommandée.
- Gestion automatique des formats de date et heure selon la locale.
Auteurs et contributeurs
- **Fred Tempez** – auteur principal
- **Michel Tuboeuf** – contributeur (mises à jour et améliorations)
Licence
Ce module est sous **CC Attribution-NonCommercial-NoDerivatives 4.0 International**.
Pour plus d’informations, voir [https://creativecommons.org/licenses/by-nc-nd/4.0/](https://creativecommons.org/licenses/by-nc-nd/4.0/)
Remerciements
Données météo fournies par [WeatherAPI](https://www.weatherapi.com/).