Paaxio 1.0
Plateforme de streaming musical - SAE IUT Bayonne
Chargement...
Recherche...
Aucune correspondance
Référence de la classe ControllerUtilisateur

Contrôleur dédié à la gestion des utilisateurs. Plus de détails...

Graphe d'héritage de ControllerUtilisateur:
Graphe de collaboration de ControllerUtilisateur:

Fonctions membres publiques

 __construct (\Twig\Environment $twig, \Twig\Loader\FilesystemLoader $loader)
 Constructeur du contrôleur utilisateur.
 
 signin ()
 Gère la connexion (authentification) d'un utilisateur.
 
 signup ()
 Gère l'inscription d'un nouvel utilisateur.
 
 inscription ()
 Gère la création d'un nouvel utilisateur par l'administrateur.
 
 logout ()
 Déconnecte l'utilisateur et détruit la session.
 
 afficherMesLikes ()
 Affiche la page des chansons aimées (likées) par l'utilisateur connecté.
 
 afficherProfilArtiste ()
 Affiche le profil public d'un artiste.
 
 suivreArtiste ()
 Gère l'abonnement/désabonnement à un artiste via une requête AJAX.
 
 afficherMotDePasseOublie ()
 Affiche le formulaire de mot de passe oublié.
 
 demanderReinitialisation ()
 Traite la demande de réinitialisation de mot de passe.
 
 resetPassword ()
 Affiche le formulaire de réinitialisation de mot de passe.
 
 traiterReinitialisation ()
 Traite la réinitialisation du mot de passe.
 
- Fonctions membres publiques hérités de Controller
 __construct (\Twig\Loader\FilesystemLoader $loader, \Twig\Environment $twig)
 Constructeur du contrôleur.
 
 call (string $method)
 Appelle une méthode du contrôleur de façon dynamique.
 
 getPDO ()
 Récupère la connexion PDO.
 
 setPDO (?PDO $pdo)
 Définit la connexion PDO.
 
 getLoader ()
 Récupère le chargeur de templates Twig.
 
 setLoader (?\Twig\Loader\FilesystemLoader $loader)
 Définit le chargeur de templates Twig.
 
 getTwig ()
 Récupère l'environnement Twig.
 
 setTwig (?\Twig\Environment $twig)
 Définit l'environnement Twig.
 
 getGet ()
 Récupère les données GET.
 
 setGet (?array $get)
 Définit les données GET.
 
 getPost ()
 Récupère les données POST.
 
 setPost (?array $post)
 Définit les données POST.
 

Fonctions membres privées

 afficherErreurToken (string $message)
 Affiche une page d'erreur pour les tokens invalides.
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Controller
 requireAuth (string $controller='', string $method='', array $params=[])
 Exige que l'utilisateur soit authentifié.
 
 requireRole ($requiredRole)
 Exige que l'utilisateur ait un rôle spécifique.
 
 redirectTo (string $controller, string $method, array $params=[])
 Redirige vers un contrôleur et une méthode donnés.
 
 show405 ()
 Affiche une erreur 405 Méthode non autorisée.
 
 requireAnyRole (array $allowedRoles)
 Exige que l'utilisateur ait un des rôles spécifiés.
 

Description détaillée

Contrôleur dédié à la gestion des utilisateurs.

Cette classe gère les opérations sur les utilisateurs :

  • Connexion (signin)
  • Inscription (signup)
  • Déconnexion (logout)
  • Création d'utilisateurs par l'admin
  • Affichage des chansons likées
  • Affichage du profil artiste

Définition à la ligne 26 du fichier controller_utilisateur.class.php.

Documentation des constructeurs et destructeur

◆ __construct()

ControllerUtilisateur::__construct ( \Twig\Environment  $twig,
\Twig\Loader\FilesystemLoader  $loader 
)

Constructeur du contrôleur utilisateur.

Paramètres
\Twig\Environment$twigEnvironnement Twig pour le rendu des templates.
\Twig\Loader\FilesystemLoader$loaderChargeur de fichiers Twig.

Définition à la ligne 34 du fichier controller_utilisateur.class.php.

Références Controller\$loader, et Controller\$twig.

Documentation des fonctions membres

◆ afficherErreurToken()

ControllerUtilisateur::afficherErreurToken ( string  $message)
private

Affiche une page d'erreur pour les tokens invalides.

Méthode utilitaire pour afficher un message d'erreur lorsque le token de réinitialisation est invalide ou expiré.

Paramètres
string$messageLe message d'erreur à afficher.
Renvoie
void

Définition à la ligne 928 du fichier controller_utilisateur.class.php.

Références Controller\getTwig().

Référencé par resetPassword().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ afficherMesLikes()

ControllerUtilisateur::afficherMesLikes ( )

Affiche la page des chansons aimées (likées) par l'utilisateur connecté.

Récupère toutes les chansons que l'utilisateur a likées et les affiche dans un format similaire à un album virtuel. Nécessite que l'utilisateur soit authentifié.

Renvoie
void

Définition à la ligne 495 du fichier controller_utilisateur.class.php.

Références Controller\getTwig(), et Controller\requireAuth().

Voici le graphe d'appel pour cette fonction :

◆ afficherMotDePasseOublie()

ControllerUtilisateur::afficherMotDePasseOublie ( )

Affiche le formulaire de mot de passe oublié.

Affiche une page permettant à l'utilisateur de saisir son adresse email pour recevoir un lien de réinitialisation de mot de passe.

Renvoie
void

Définition à la ligne 648 du fichier controller_utilisateur.class.php.

Références Controller\getTwig().

Voici le graphe d'appel pour cette fonction :

◆ afficherProfilArtiste()

ControllerUtilisateur::afficherProfilArtiste ( )

Affiche le profil public d'un artiste.

Récupère l'artiste par son pseudo passé en paramètre GET et affiche son profil avec ses albums.

Renvoie
void

Définition à la ligne 549 du fichier controller_utilisateur.class.php.

Références Controller\getPDO(), Controller\getTwig(), et Controller\redirectTo().

Voici le graphe d'appel pour cette fonction :

◆ demanderReinitialisation()

ControllerUtilisateur::demanderReinitialisation ( )

Traite la demande de réinitialisation de mot de passe.

Cette méthode effectue les opérations suivantes :

  1. Valide l'adresse email fournie.
  2. Vérifie l'existence de l'utilisateur en base de données.
  3. Génère un token de réinitialisation valide pendant 1 heure.
  4. Envoie un email contenant le lien de réinitialisation.

Pour des raisons de sécurité, le message de succès est identique que l'email existe ou non dans la base de données.

Renvoie
void Retourne une réponse JSON.

Définition à la ligne 675 du fichier controller_utilisateur.class.php.

Références Controller\$post, Controller\getPDO(), Controller\getPost(), Controller\getTwig(), et Controller\show405().

Voici le graphe d'appel pour cette fonction :

◆ inscription()

ControllerUtilisateur::inscription ( )

Gère la création d'un nouvel utilisateur par l'administrateur.

Cette méthode effectue les opérations suivantes :

  1. Vérifie si l'utilisateur connecté a les droits d'administrateur.
  2. Traite la requête POST pour récupérer les données (pseudo, email, mot de passe, rôle).
  3. Vérifie l'unicité de l'email et du pseudo via le DAO.
  4. Initialise une nouvelle entité Utilisateur avec les données fournies et des valeurs par défaut (hachage du mot de passe, date de naissance par défaut, statut actif, etc.).
  5. Persiste le nouvel utilisateur dans la base de données.
  6. Redirige vers la liste des utilisateurs en cas de succès ou affiche le formulaire avec les erreurs.
Renvoie
void
Exceptions
ExceptionEn cas d'erreur lors de la récupération du rôle ou de l'insertion en base de données.

Définition à la ligne 384 du fichier controller_utilisateur.class.php.

Références Controller\$pdo, Controller\getPDO(), Controller\getTwig(), Inactif, Controller\redirectTo(), et Controller\requireRole().

Voici le graphe d'appel pour cette fonction :

◆ logout()

ControllerUtilisateur::logout ( )

Déconnecte l'utilisateur et détruit la session.

Supprime toutes les données de session et le cookie de session, puis redirige vers la page d'accueil.

Renvoie
void

Définition à la ligne 465 du fichier controller_utilisateur.class.php.

Références Controller\redirectTo().

Voici le graphe d'appel pour cette fonction :

◆ resetPassword()

ControllerUtilisateur::resetPassword ( )

Affiche le formulaire de réinitialisation de mot de passe.

Vérifie la validité du token fourni dans l'URL avant d'afficher le formulaire permettant de définir un nouveau mot de passe. Redirige vers une page d'erreur si le token est invalide ou expiré.

Renvoie
void

Définition à la ligne 775 du fichier controller_utilisateur.class.php.

Références Controller\$get, afficherErreurToken(), Controller\getGet(), Controller\getPDO(), et Controller\getTwig().

Voici le graphe d'appel pour cette fonction :

◆ signin()

ControllerUtilisateur::signin ( )

Gère la connexion (authentification) d'un utilisateur.

Reçoit une requête POST contenant l'email et le mot de passe. Valide les données, vérifie les identifiants et initialise la session. Retourne une réponse JSON indiquant le succès ou l'échec de la connexion.

Renvoie
void Retourne une réponse JSON et termine le script.

Définition à la ligne 48 du fichier controller_utilisateur.class.php.

Références Controller\$post, Controller\getPDO(), Controller\getPost(), et Controller\show405().

Voici le graphe d'appel pour cette fonction :

◆ signup()

ControllerUtilisateur::signup ( )

Gère l'inscription d'un nouvel utilisateur.

Permet l'inscription d'un artiste, auditeur ou producteur. Valide les données, vérifie l'unicité de l'email et du pseudo, crée le compte et envoie l'e-mail de bienvenue.

Retourne une réponse JSON indiquant le succès ou l'échec de la création.

Renvoie
void Retourne une réponse JSON et termine le script.

Définition à la ligne 155 du fichier controller_utilisateur.class.php.

Références Controller\$pdo, Controller\$post, Controller\getPDO(), Controller\getPost(), Controller\getTwig(), Inactif, et Controller\show405().

Voici le graphe d'appel pour cette fonction :

◆ suivreArtiste()

ControllerUtilisateur::suivreArtiste ( )

Gère l'abonnement/désabonnement à un artiste via une requête AJAX.

Reçoit une requête POST avec l'email de l'artiste. Retourne une réponse JSON indiquant le succès et l'état de l'abonnement.

Renvoie
void

Définition à la ligne 596 du fichier controller_utilisateur.class.php.

Références Controller\getPDO().

Voici le graphe d'appel pour cette fonction :

◆ traiterReinitialisation()

ControllerUtilisateur::traiterReinitialisation ( )

Traite la réinitialisation du mot de passe.

Cette méthode effectue les opérations suivantes :

  1. Valide le token de réinitialisation.
  2. Valide le nouveau mot de passe (force, confirmation).
  3. Met à jour le mot de passe de l'utilisateur.
  4. Invalide le token utilisé.
Renvoie
void Retourne une réponse JSON.

Définition à la ligne 826 du fichier controller_utilisateur.class.php.

Références Controller\$post, Controller\getPDO(), Controller\getPost(), et Controller\show405().

Voici le graphe d'appel pour cette fonction :

La documentation de cette classe a été générée à partir du fichier suivant :