# Installation — Coaster World v1.88.0

Base attendue : **v1.87.0**.

## 1. Installer les fichiers

Extraire :

```text
coaster-world_patch_v1.88.0_community-v4.zip
```

à la racine de :

```text
C:\laragon\www\coaster-world
```

et accepter le remplacement des fichiers existants.

## 2. Base de données — obligatoire

### Méthode A — Laravel / Laragon recommandée

Dans le terminal Laragon :

```bat
cd C:\laragon\www\coaster-world
php artisan migrate
php artisan optimize:clear
```

La nouvelle migration attendue est :

```text
2026_08_15_002100_create_community_photo_interactions
```

Elle crée :

```text
community_photo_comments
community_photo_reactions
```

### Méthode B — phpMyAdmin

À la place de `php artisan migrate`, importer uniquement :

```text
database\migrations\sql\coaster_world_v1.88.0_community_photo_v2.sql
```

Puis exécuter :

```bat
cd C:\laragon\www\coaster-world
php artisan optimize:clear
```

**Utiliser une seule méthode. Ne pas exécuter la migration Laravel et le SQL manuel tous les deux.**

**Ne jamais utiliser `php artisan migrate:fresh`.**

## 3. Recharger le navigateur

Faire :

```text
Ctrl + F5
```

## 4. Vérification rapide

1. Ouvrir `/community/photos`.
2. Vérifier les filtres Parcs / Attractions / Coasters.
3. Ouvrir une photo déjà approuvée.
4. Avec un autre compte, tester `Utile` puis commenter la photo.
5. Vérifier que l'auteur reçoit la notification du commentaire.
6. Vérifier qu'un auteur ne peut pas voter utile sur sa propre photo.
7. Signaler une photo ou un commentaire avec un compte différent.
8. Ouvrir `Administration → Modération` et vérifier les nouveaux types de contenu.
9. Envoyer une nouvelle photo, puis dans `Administration → Photos communauté`, l'approuver / refuser et vérifier la notification reçue par l'auteur.
10. Sur une fiche parc / attraction / coaster avec des photos communautaires, vérifier le bouton `Voir toutes les photos communauté`.
11. Tester sur smartphone et en thèmes clair / sombre.

## 5. Garde-fou en cas de migration oubliée

Si les nouvelles tables ne sont pas encore créées, la v1.88 évite volontairement de faire tomber les pages principales en erreur 500. La galerie reste consultable mais les commentaires / votes utiles restent désactivés jusqu'à la migration.

Pour vérifier :

```bat
php artisan migrate:status | findstr 002100
```

Si elle apparaît `Pending`, exécuter simplement :

```bat
php artisan migrate
php artisan optimize:clear
```
