Comus Party 1.0.0
Application web de mini-jeux en ligne
Chargement...
Recherche...
Aucune correspondance
ControllerSuggestion.class.php
Aller à la documentation de ce fichier.
1<?php
9
10namespace ComusParty\Controllers;
11
12use ComusParty\App\MessageHandler;
13use ComusParty\Models\Suggestion;
14use ComusParty\Models\SuggestionDAO;
15use ComusParty\Models\SuggestObject;
16use Exception;
17use Twig\Environment;
18use Twig\Loader\FilesystemLoader;
19
25{
31 public function __construct(FilesystemLoader $loader, Environment $twig)
32 {
33 parent::__construct($loader, $twig);
34 }
35
42 public function sendSuggestion(?string $object, string $content): void
43 {
44 $objectTyped = match ($object) {
45 'bug' => SuggestObject::BUG,
46 'game' => SuggestObject::GAME,
47 'ui' => SuggestObject::UI,
48 'other' => SuggestObject::OTHER,
49 default => null
50 };
51 if ($objectTyped === null) {
52 MessageHandler::sendJsonCustomException(400, 'Type de suggestion invalide');
53 }
54 $suggestionObject = new Suggestion(null, $objectTyped, $content, $_SESSION['uuid'], $_SESSION['username']);
55 $managerSuggestion = new SuggestionDAO($this->getPdo());
56 if ($managerSuggestion->create($suggestionObject)) {
57 echo MessageHandler::sendJsonMessage('Suggestion envoyée avec succès');
58 exit;
59 } else {
60 MessageHandler::sendJsonCustomException(500, 'Erreur lors de l\'envoi de la suggestion');
61 }
62 }
63}
__construct(FilesystemLoader $loader, Environment $twig)
Constructeur de la classe ControllerShop.
sendSuggestion(?string $object, string $content)
Permet d'envoyer une suggestion et de l'insérer en base de données.
getPdo()
Retourne l'attribut PDO, correspondant à la connexion à la base de données.
@ OTHER
Langage / propos incorrect.