feat: export ICS

This commit is contained in:
ElPoyo
2025-12-20 15:56:57 +01:00
parent df9e24d3b3
commit fa1d6a4295
8 changed files with 466 additions and 8 deletions

View File

@@ -0,0 +1,70 @@
# Export vers Google Calendar
## Fonctionnalité
L'application permet d'exporter un événement au format ICS (iCalendar), compatible avec Google Calendar, Apple Calendar, Outlook et la plupart des applications de calendrier.
## Utilisation
1. Ouvrir les détails d'un événement
2. Cliquer sur l'icône de calendrier 📅 dans l'en-tête
3. Le fichier `.ics` sera automatiquement téléchargé
4. Ouvrir le fichier pour l'importer dans votre application de calendrier
## Informations exportées
Le fichier ICS contient :
### Informations principales
- **Titre** : Nom de l'événement
- **Date de début** : Date et heure de début
- **Date de fin** : Date et heure de fin
- **Lieu** : Adresse de l'événement
- **Statut** : Confirmé / Annulé / En attente
### Description détaillée
- Type d'événement
- Description complète
- Jauge (nombre de personnes)
- Email de contact
- Téléphone de contact
- Temps d'installation et démontage
- Liste de la main d'œuvre
- Options sélectionnées (avec quantités)
- Prix de base
## Format du fichier
Le fichier généré suit le standard **RFC 5545** (iCalendar) et est nommé selon le format :
```
event_[nom_evenement]_[date].ics
```
Exemple : `event_Concert_Mairie_20251225.ics`
## Compatibilité
✅ Google Calendar
✅ Apple Calendar (macOS, iOS)
✅ Microsoft Outlook
✅ Thunderbird
✅ Autres applications supportant le format ICS
## Import dans Google Calendar
1. Télécharger le fichier `.ics`
2. Ouvrir Google Calendar
3. Cliquer sur l'icône ⚙️ (Paramètres)
4. Sélectionner "Importation et exportation"
5. Cliquer sur "Sélectionner un fichier sur votre ordinateur"
6. Choisir le fichier `.ics` téléchargé
7. Sélectionner le calendrier de destination
8. Cliquer sur "Importer"
## Notes techniques
- Les dates sont converties en UTC pour assurer la compatibilité internationale
- Les caractères spéciaux sont correctement échappés selon le standard ICS
- Un UID unique est généré pour chaque événement (`em2rp-[eventId]@em2rp.app`)
- Le fichier est encodé en UTF-8