# PIA School — Espace Parents
## Guide de déploiement sur o2switch

---

### 1. Structure à déposer sur o2switch

```
public_html/piaschool/
├── index.html          ← Application (SPA)
├── .htaccess           ← Sécurité + HTTPS
├── photos/             ← Photos des élèves (depuis votre app mobile)
└── api/
    ├── config.php      ← ⚠️ À CONFIGURER EN PREMIER
    ├── auth.php
    ├── dashboard.php
    ├── notes.php
    ├── presences.php
    ├── scolarite.php
    └── notifications.php
```

---

### 2. Configurer api/config.php

Ouvrez `api/config.php` et renseignez :

```php
define('DB_PASS', 'votre_mot_de_passe_mysql'); // ← votre vrai mot de passe
define('JWT_SECRET', 'une_chaine_aleatoire_longue_et_unique'); // ← changez !
```

Le nom de la base (`pevo0181_piaschool1_4_`) et l'utilisateur (`pevo0181`) 
sont déjà renseignés selon votre dump SQL.

---

### 3. Tester la connexion

Ouvrez dans votre navigateur :
```
https://votre-domaine.com/piaschool/
```

Pour tester : utilisez un numéro de téléphone et le matricule d'un élève 
présent dans votre base. Exemple avec les données du dump :
- Téléphone : +237674572587
- Matricule  : PIA20260001

---

### 4. Authentification

La connexion fonctionne avec :
- **Numéro de téléphone** du parent (telephone_parent OU telephone_parent2)
- **Matricule** de l'enfant (ex: PIA20260001)

Le système génère un token JWT valable 24h, stocké dans localStorage.

---

### 5. Photos des élèves

Les photos sont stockées dans la table `eleves` sous forme de nom de fichier
(ex: `eleve_1_xxx.png`). Copiez vos photos dans :
```
public_html/piaschool/photos/
```

---

### 6. Endpoints API disponibles

| Endpoint | Méthode | Description |
|---|---|---|
| `api/auth.php` | POST | Connexion parent |
| `api/dashboard.php` | GET | Tableau de bord |
| `api/notes.php` | GET | Notes par session |
| `api/presences.php` | GET | Présences/absences |
| `api/scolarite.php` | GET | Infos + paiements |
| `api/notifications.php` | GET/POST | Notifications |

---

### 7. Sécurité

- Tous les endpoints (sauf auth.php) exigent un token JWT valide
- Le token expire après 24h (configurable dans JWT_EXPIRY)
- config.php est bloqué en accès direct via .htaccess
- HTTPS est forcé via .htaccess

---

### Support
Développé sur la base de données `pevo0181_piaschool1_4_` (o2switch)
Tables utilisées : eleves, inscriptions, classes, niveaux, annees_scolaires,
notes, matieres, sessions_evaluation, presences, arrivee_ecole_eleve,
pension_paiements, pension_tranches, pension_config, mobile_notifications
