# KaRu Cible

Application Laravel privee pour rechercher des organisateurs de spectacles par esthetique, format, periode, territoire et type d'organisateur, puis suivre les relances commerciales.

## Choix technique

La V1 utilise Laravel, PHP et MySQL/MariaDB.

Ce choix est adapte a un hebergement OVH classique :

- PHP est le socle le plus courant sur hebergement web mutualise ;
- MySQL/MariaDB est disponible sur les offres web OVH ;
- le sous-domaine doit pointer vers le dossier `public` ;
- Laravel apporte authentification, sessions, protection CSRF, validation et structure de code propre.

## Installation

Prerequis :

- PHP 8.2 ou plus recent ;
- Composer ;
- une base MySQL/MariaDB.

Commandes :

```bash
composer install --no-dev --optimize-autoloader
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan app:create-admin email@example.com "mot-de-passe-solide"
php artisan config:cache
php artisan route:cache
php artisan view:cache
```

## Configuration OVH

1. Creer un sous-domaine, par exemple `cible.karuprod.eu`.
2. Faire pointer le sous-domaine vers le dossier `public` du projet Laravel.
3. Creer une base MySQL/MariaDB depuis l'espace client OVH.
4. Renseigner les variables `DB_*` dans `.env`.
5. Verifier que `APP_DEBUG=false`.
6. Verifier que `APP_URL` contient l'URL HTTPS du sous-domaine.
7. Proteger le fichier `.env` : il ne doit jamais etre accessible publiquement.

Un fichier `.ovhconfig` est fourni pour demander PHP 8.2 en production.

## Import du fichier

L'application importe le fichier `.ods` depuis l'ecran `Import`.

L'import conserve les donnees sources et cree des champs normalises :

- esthetiques ;
- formats ;
- periodes ;
- types d'organisateurs ;
- territoires ;
- tags libres.

## Securite V1

- Acces par connexion email / mot de passe.
- Protection CSRF sur les formulaires.
- Sessions chiffrees.
- Cookies `httpOnly`, `secure`, `same_site=lax`.
- En-tetes de securite basiques.
- Validation serveur des formulaires.
- Pas d'envoi massif d'emails depuis l'application.

## Limites actuelles

Cette version est un premier socle. Elle ne contient pas encore :

- export Excel/CSV ;
- verification automatique des sites web ;
- recherche par region et departement deduite du code postal ;
- gestion fine des doublons ;
- tests automatises complets.
