瀏覽代碼

Quelques commentaires et formulaire générique pour l'envoi de messages

SPAETER NATHAN 4 年之前
父節點
當前提交
29e3bfc4f2

+ 1 - 0
src/Controller/DisconnectController.php

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

+ 1 - 0
src/Controller/HashtagController.php

@@ -9,6 +9,7 @@ use Symfony\Component\Routing\Annotation\Route;
 
 class HashtagController extends AbstractController
 {
+    // Fonction de tri.
     private function cmp_array($a, $b): int {
         if ($a == $b) {
             return 0;

+ 7 - 7
src/Controller/HomeController.php

@@ -6,6 +6,7 @@ use App\Entity\Hashtag;
 use App\Entity\Message;
 use App\Entity\Retweets;
 use App\Entity\User;
+use App\Form\MessageType;
 use Doctrine\DBAL\Types\TextType;
 use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
 use Symfony\Component\HttpFoundation\Request;
@@ -33,10 +34,8 @@ class HomeController extends AbstractController
             return  $this->redirectToRoute('home');
         }
 
-        $formBuilder = $this->createFormBuilder();
-        $formBuilder->add('text', \Symfony\Component\Form\Extension\Core\Type\TextType::class,['label' => 'Envoyer un message'])
-            ->setAction($this->generateUrl('home'));
-        $form = $formBuilder->getForm();
+        $options = array("action" => $this->generateUrl('home'));
+        $form = $this->createForm(MessageType::class, null, $options);
 
         if ($request->getMethod() == 'POST') {
             $form->handleRequest($request);
@@ -51,7 +50,7 @@ class HomeController extends AbstractController
                 $hashtags = array();
                 preg_match_all("~@([a-zA-Z0-9_]*)~", $text, $mentions);
                 preg_match_all("~#([a-zA-Z0-9_]*)~", $text, $hashtags);
-                for($i=0; $i < sizeof($mentions[0]); $i++) {
+                for ($i = 0; $i < sizeof($mentions[0]); $i++) {
                     $user = $repository_profile->findOneBy(array('username' => $mentions[1][$i]));
                     if ($user) {
                         $message->addMention($user);
@@ -63,7 +62,7 @@ class HomeController extends AbstractController
                     }
                 }
                 $repository_hashtag = $em->getRepository(Hashtag::class);
-                for($i=0; $i < sizeof($hashtags[0]); $i++) {
+                for ($i = 0; $i < sizeof($hashtags[0]); $i++) {
                     $hashtag = $repository_hashtag->findOneBy(array('name' => $hashtags[1][$i]));
                     if (!$hashtag) {
                         $hashtag = new Hashtag();
@@ -125,7 +124,8 @@ class HomeController extends AbstractController
     }
 
     #[Route('/rt/{msgId}', name: 'rt_message')]
-    public function retweet($msgId) {
+    public function retweet($msgId)
+    {
         $session = $this->get('session');
 
         if (null === $session->get('user')) {

+ 0 - 3
src/Controller/ResearchController.php

@@ -16,9 +16,6 @@ class ResearchController extends AbstractController
         $em = $this->getDoctrine()->getManager();
         $repository_message = $em->getRepository(Message::class);
         $messages = $repository_message->findMessageContainString($request->query->get('s'));
-        // foreach ($messages as $message) {
-        //     array_push($sub_msg, $msg);
-        // }
         return $this->render('research/index.html.twig', [
             'username' => $this->get('session')->get('user'),
             'messages' => $messages,

+ 24 - 0
src/Form/MessageType.php

@@ -0,0 +1,24 @@
+<?php
+
+namespace App\Form;
+
+use Symfony\Component\Form\AbstractType;
+use Symfony\Component\Form\FormBuilderInterface;
+use Symfony\Component\OptionsResolver\OptionsResolver;
+use Symfony\Component\Form\Extension\Core\Type\TextType;
+
+class MessageType extends AbstractType
+{
+    public function buildForm(FormBuilderInterface $builder, array $options)
+    {
+        $builder
+            ->add('text', TextType::class, ['label' => 'Envoyer un message']);
+    }
+
+    public function configureOptions(OptionsResolver $resolver)
+    {
+        $resolver->setDefaults([
+            // Configure your form options here
+        ]);
+    }
+}

+ 2 - 1
templates/hashtag/index.html.twig

@@ -1,6 +1,7 @@
 {% extends 'base.html.twig' %}
 
-{% block title %}Hello HashtagController!
+{% block title %}
+	Hashtag
 {% endblock %}
 
 {% block body %}