瀏覽代碼

Suite commentaires

SPAETER NATHAN 4 年之前
父節點
當前提交
8fce3440f9
共有 3 個文件被更改,包括 15 次插入3 次删除
  1. 1 1
      src/Controller/DisconnectController.php
  2. 4 2
      src/Controller/HashtagController.php
  3. 10 0
      src/Controller/HomeController.php

+ 1 - 1
src/Controller/DisconnectController.php

@@ -11,8 +11,8 @@ class DisconnectController extends AbstractController
     #[Route('/disconnect', name: 'disconnect')]
     public function index(): Response
     {
-        // Suppression de la session.
         $session = $this->get('session');
+        // Suppression de la session.
         $session->clear();
         return $this->render('disconnect/index.html.twig', []);
     }

+ 4 - 2
src/Controller/HashtagController.php

@@ -9,7 +9,7 @@ use Symfony\Component\Routing\Annotation\Route;
 
 class HashtagController extends AbstractController
 {
-    // Fonction de tri.
+    // Fonction de tri des messages
     private function cmp_array($a, $b): int {
         if ($a == $b) {
             return 0;
@@ -21,15 +21,17 @@ class HashtagController extends AbstractController
     public function index($name): Response
     {
         $session = $this->get('session');
-
+        // Si l'utilisateur n'est pas connecté, rediriger sur le login
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
+        // Récupération des posts contenant le hashtag
         $em = $this->getDoctrine()->getManager();
         $repository_hashtag = $em->getRepository(Hashtag::class);
         $hashtag = $repository_hashtag->findOneBy(array("name" => $name));
         if ($hashtag) {
             $messages = $hashtag->getMessage()->getValues();
+            // Tri des postes
             usort($messages, array($this, "cmp_array"));
             return $this->render('hashtag/index.html.twig', [
                 'messages' => $messages,

+ 10 - 0
src/Controller/HomeController.php

@@ -17,6 +17,7 @@ use Symfony\Component\Validator\Constraints\Date;
 
 class HomeController extends AbstractController
 {
+    // Fonction de tri des messages
     private function cmp_array($a, $b): int
     {
         if ($a->getDate() == $b->getDate()) {
@@ -30,20 +31,25 @@ class HomeController extends AbstractController
     {
         $session = $this->get('session');
 
+        // Redirection vers la route login si l'utilisateur n'est pas connecté.
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
 
+        // Instanciation du formulaire dans Form/MessageType
         $options = array("action" => $this->generateUrl('home'));
         $form = $this->createForm(MessageType::class, null, $options);
 
+        // Code éxecuté lors de l'envoi du formulaire
         if ($request->getMethod() == 'POST') {
             $form->handleRequest($request);
             if ($form->isValid()) {
                 $session = $this->get('session');
+                // Obtention du profil de l'utilisateur connecté
                 $em = $this->getDoctrine()->getManager();
                 $repository_profile = $em->getRepository(User::class);
                 $profile = $repository_profile->findOneBy(array('username' => $session->get('user')));
+                // Création du nouveau message dans la BDD avec ses valeurs
                 $message = new Message();
                 $text = $form->get('text')->getData();
                 $mentions = array();
@@ -51,11 +57,15 @@ class HomeController extends AbstractController
                 $dp = array();
                 $dh = array();
                 $urls = array();
+                
+                // Recherche de motifs spéciaux (@, #, ...)
                 preg_match_all("~@([a-zA-Z0-9_]*)~", $text, $mentions);
                 preg_match_all("~#([a-zA-Z0-9_]*)~", $text, $hashtags);
                 preg_match_all("!DP %(.+)(?:\s|$)!U", $text, $dp);
                 preg_match_all("!DH %(.+)(?:\s|$)!U", $text, $dh);
                 preg_match_all("~[a-z]+://\S+~", $text, $urls);
+
+                // Recherche des URL dans le message et formatage en HTML
                 for($i = 0; $i < sizeof($urls[0]); $i++) {
                     $url = $urls[0][$i];
                     $urls[1][$i] = "<a href='$url'>$url</a>";