# Gift Ideas 237 — Laravel 12 / PHP 8.2

Boutique e-commerce pour bijoux et accessoires femme, homme et enfant. Front-office client + back-office admin + panier + commande WhatsApp.

## Prérequis
- PHP 8.2+
- Composer 2.x
- MySQL 5.7+ / MariaDB compatible
- Extension PHP: PDO/MySQL, Mbstring, OpenSSL, Ctype, JSON, Fileinfo, Tokenizer

Laravel 12 supporte PHP 8.2 à 8.5. Ce projet fixe Composer sur `laravel/framework:^12.0` et `php:^8.2`.

## Installation

```bash
composer install
cp .env.example .env
php artisan key:generate
```

Sous Windows PowerShell:

```powershell
Copy-Item .env.example .env
php artisan key:generate
```

Créez la base MySQL `giftideas237`, puis configurez `DB_*` dans `.env`.

```bash
php artisan migrate --seed
php artisan storage:link
php artisan serve
```

Le site sera disponible sur `http://localhost:8000`.

## Administration

URL: `/admin/connexion`

Par défaut:
- Email: `admin@giftideas237.com`
- Mot de passe: `ChangeMe123!`

Changez immédiatement ces valeurs dans `.env` en production.

## WhatsApp

Dans `.env`:

```env
WHATSAPP_NUMBER=237XXXXXXXXX
```

Le checkout crée une commande en base puis génère une URL `wa.me` avec le détail de la commande. Le client clique ensuite sur « Envoyer sur WhatsApp ».

## Produits

Le back-office permet de gérer:
- catégories
- nom / SKU
- prix normal
- prix promotionnel
- stock
- description
- chemin de l'image
- statut actif
- mise en avant

Pour les images, placez les fichiers dans `public/images/` et renseignez par exemple `images/bracelet.jpg` dans le produit.

## Identité visuelle

Palette issue du logo fourni:
- Rose: `#D62048`
- Vert: `#94C51E`
- Violet: `#732885`
- Blanc: `#FFFFFF`

Logo: `public/images/logo.jpeg`

## Images produits

Chaque produit peut avoir plusieurs images. Depuis le formulaire d'administration, sélectionnez plusieurs fichiers dans le champ **Images du produit**. Les fichiers acceptés sont JPG, JPEG, PNG et WebP, jusqu'à 5 Mo par image et 12 images par envoi.

Les images sont stockées dans `storage/app/public/products` et affichées via le lien `public/storage`. Après installation, exécutez `php artisan storage:link`.

Pour ajouter d'autres images à un produit existant, ouvrez **Admin > Produits > Modifier** et sélectionnez de nouveaux fichiers. Les images existantes restent conservées. Chaque image peut être supprimée individuellement.
