# Refonte Tutorat - Cahier des charges
## Refonte du site [ScratchOverflow](https://scratchoverflow.fr/)
Ce projet à pour but de reprendre le site du tutorat existant afin de le porter sur [Symfony](https://symfony.com/) et d'y ajouter des fonctionnalitées.
## Fonctionnalitées
> ### **Fonctionnalitées globales**
>[color=#AFF99A]
- Connexion
- Création de compte
>*Specs utilisateurs*
>- Nom
>- Prenom
>- Mail
>- Mot de passe
>- Classe
>- Image de profil
>[color=orange]
- Création de cours
>*Specs cours*
>- Intitule
>- Heure
>- Date
>- Matiere
>[color=orange]
- Création de proposition
>*Specs proposition*
>- Matiere(s)
>- Niveau(x)
>[color=orange]
- Ajout de matières (Après validation par un administrateur)
>*Specs matiere*
>- Intitule
>[color=orange]
- Liste des cours persos à venir pour les tuteurs
- Possibilité de **modification**
- Possibilité d'**annulation**
- Possibilité de **clore** un de ses cours
>*Specs fin de cours*
>- Nombre participants
>- Nombre d'heure
>- Commentaires
>[color=orange]
- Possibilité d'être tuteur d'un cours proposé par sois même
- Possibilité de s'ajouter des "tags" de matières avec différents niveaux
>*Specs tags*
>- A besoin d'aide
>- A l'aise
>- Expert
>[color=orange]
- Possibilité de créer un sujet dans le forum
>*Specs forum*
>- Question
>- Message
>- Matière
>[color=orange]
- Possibilité de poster un message dans le forum
- Possibilité de modifier un de ses message dans le forum
- Possibilité de trier les personnes par tags de compétences, et avoir accès a leur mail
- Avoir un système de notification
Exemple : `Si je possède le tag "A besoin d'aide en PHP, je reçois une notification par mail de la création d'un cours de PHP."`
- Possibilité de "voter" pour une proposition
- Possibilité d'enlever son vote pour une proposition
- Possibilité de s'inscrire a un cours
- Possibilité de se désinscrire d'un cours
- Possibilité de voir et modifier ses informations persos ( :warning: RGPD )
---
> ### **Fonctionnalitées admins**
>[color=#AFF99A]
- Possibilité de suppression de propositions
- Pannel admin
- Liste des personnes enregistrées
- Possibilité de **suppression**
- Possibilité de **modification**
- Liste des matières
- Possibilité de **suppression**
- Possibilité de **modification**
- Liste des cours
- Possibilité de **suppression**
- Possibilité de **modification**
- Possibilité d'**annulation**
- Possibilité de **clore** un cours
- Visualisation de stats
- Pour chaque promo
>- Participants - Inscrits par cours
>- Matières en pourcentage de participations
>- Heures par matières
>[color=violet]
- Global
>- Récap des tuteurs, leurs heures, matières
>- Graphs récap des stats des années passées fonction de l'année présente
>[color=violet]
- Export de ces stats en PDF
- Administration du forum
- Cloture de sujet
- Suppression de sujet
- Suppression de message
## Base de données