Browse Source

Merge branch 'nathan' into 'master'

Fin des commentaires

See merge request clement.krebs/twyrael!17
SPAETER NATHAN 4 years ago
parent
commit
cb2eb26b34

+ 1 - 0
src/Controller/IndexController.php

@@ -13,6 +13,7 @@ class IndexController extends AbstractController
      */
     public function index(): Response
     {
+        // Affichage de la vue d'origine.
         return $this->render('index/index.html.twig', [
             'username' => $this->get('session')->get('user'),
         ]);

+ 6 - 1
src/Controller/LoginController.php

@@ -21,12 +21,13 @@ class LoginController extends AbstractController
     {
         $session = $this->get('session');
 
+        // Redirection sur le flux si l'utilisateur est connecté
         if (null !== $session->get('user')) {
             $session->save();
             return $this->redirectToRoute('home');
         }
 
-        // Instanciation du fromBuilder
+        // Instanciation du FormBuilder
         $formBuilder = $this->createFormBuilder();
 
         // Ajout des champs
@@ -38,20 +39,24 @@ class LoginController extends AbstractController
         // Génération du formulaire
         $form = $formBuilder->getForm();
 
+        // Lors de l'envoi d'un message
         if ($request->getMethod() == 'POST') {
             $form->handleRequest($request);
             if ($form->isValid()) {
+                // Si le formulaire est valide on récupère les données en POST
                 $id = $form->get("identifiant")->getData();
                 $passwd = $form->get('mot_de_passe')->getData();
                 $em = $this->getDoctrine()->getManager();
                 $repository_profile = $em->getRepository(User::class);
                 $profile = $repository_profile->findOneBy(array('username' => $id));
                 if ($profile) {
+                    // Après vérification si l'utilisateur existe ont le redirige sur le flux et on enregistre le fait qu'il est connecté.
                     if ($encoder->isPasswordValid($profile, $passwd)) {
                         $session->set('user', $id);
                         return $this->redirectToRoute('home');
                     }
                 }
+                // Affichage de la vue correspondante.
                 return $this->render('login/index.html.twig', [
                     'message' => "Utilisateur ou mot de passe incorrect",
                     'form' => $form->createView()

+ 5 - 0
src/Controller/PrivateDiscussionController.php

@@ -17,20 +17,24 @@ class PrivateDiscussionController extends AbstractController
     {
         $session = $this->get('session');
 
+        // Redirection sur le login si l'utilisateur n'est pas connecté
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
 
+        // Création du formulaire pour envoyer un message à l'utilisateur
         $formBuilder = $this->createFormBuilder();
         $formBuilder->add('text', \Symfony\Component\Form\Extension\Core\Type\TextType::class,['label' => 'Envoyer un message'])
             ->setAction($this->generateUrl('private_discussion', ['id' => $id]));
         $form = $formBuilder->getForm();
 
+        // Obtention de la liste des messages privées correspondant à un utilisateur
         $em = $this->getDoctrine()->getManager();
         $repo_pd = $em->getRepository(PrivateDiscussion::class);
         $pd = $repo_pd->find($id);
         $messages = $pd->getPrivateMessages();
 
+        // Envoi des messages à $user
         if ($request->getMethod() == 'POST') {
             $form->handleRequest($request);
             if($form->isValid()) {
@@ -44,6 +48,7 @@ class PrivateDiscussionController extends AbstractController
             }
         }
 
+        // Affichage de la vue
         return $this->render('private_discussion/index.html.twig', [
             'controller_name' => 'PrivateDiscussionController',
             'messages' => $messages,

+ 10 - 2
src/Controller/PrivateDiscussionsController.php

@@ -15,23 +15,26 @@ class PrivateDiscussionsController extends AbstractController
     #[Route('/private/discussions', name: 'private_discussions')]
     public function index(Request $request): Response
     {
-        $error = "";
         $session = $this->get('session');
 
+        // Si l'utilisateur n'est pas connecté, il est redirigé sur login
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
+
+        // Création du formulaire pour initialiser une discussion
         $formBuilder = $this->createFormBuilder();
         $formBuilder->add('text', \Symfony\Component\Form\Extension\Core\Type\TextType::class, ['label' => 'Envoyer un message'])
             ->add('username', \Symfony\Component\Form\Extension\Core\Type\TextType::class, ['label' => 'Utilisateur'])
             ->setAction($this->generateUrl('private_discussions'));
         $form = $formBuilder->getForm();
 
+        // Recherche de l'objet correspondant à l'utilisateur connecté
         $em = $this->getDoctrine()->getManager();
         $repo_user = $em->getRepository(User::class);
         $user = $repo_user->findOneBy(array('username' => $session->get("user")));
 
-        $user = $repo_user->findOneBy(array('username' => $session->get("user")));
+        // Recherche de toutes les discussions de l'utilisateur et récupération du nom du destinataire
         $private_discussions = array();
         foreach ($user->getPrivateDiscussions() as $pd) {
             $participants = $pd->getParticipants();
@@ -43,10 +46,12 @@ class PrivateDiscussionsController extends AbstractController
             array_push($private_discussions, array($pd->getId() => $participant->getUsername()));
         }
 
+        // Création d'une nouvelle discussion
         if ($request->getMethod() == 'POST') {
             $form->handleRequest($request);
             if ($form->isValid()) {
                 $recept = $repo_user->findOneBy(array('username' => $form->get('username')->getData()));
+                // Vérification si le profil existe
                 if (!$recept) {
                     return $this->render('private_discussions/index.html.twig', [
                         'controller_name' => 'PrivateDiscussionsController',
@@ -56,6 +61,7 @@ class PrivateDiscussionsController extends AbstractController
                         'error' => "Profil non existant.",
                     ]);
                 }
+                // Vérifie si la discussion existe
                 $disc_found = false;
                 foreach ($user->getPrivateDiscussions() as $disc) {
                     if (in_array($recept, $disc->getParticipants()->getValues())) {
@@ -63,6 +69,7 @@ class PrivateDiscussionsController extends AbstractController
                         break;
                     }
                 }
+                // Si c'est le cas on affiche l'erreur "Discussion existante."
                 if ($disc_found) {
                     return $this->render('private_discussions/index.html.twig', [
                         'controller_name' => 'PrivateDiscussionsController',
@@ -72,6 +79,7 @@ class PrivateDiscussionsController extends AbstractController
                         'error' => "Discussion existante.",
                     ]);
                 }
+                // Sinon on crée la nouvelle discussion
                 $discussion = new PrivateDiscussion();
                 $discussion->addParticipant($user);
                 $discussion->addParticipant($recept);

+ 2 - 0
src/Controller/ProfileController.php

@@ -11,6 +11,7 @@ use Symfony\Component\Routing\Annotation\Route;
 
 class ProfileController extends AbstractController
 {
+    // Fonction de tri des messages
     private function cmp_array($a, $b): int
     {
         if ($a->getDate() == $b->getDate()) {
@@ -72,6 +73,7 @@ class ProfileController extends AbstractController
         foreach ($profile->getMessages() as $msg_u) {
             array_push($sub_msg, $msg_u);
         }
+        // Tri des messages
         usort($sub_msg, array($this, "cmp_array"));
 
         return $this->render('profile/index.html.twig', [

+ 8 - 0
src/Controller/ProfileManagerController.php

@@ -13,13 +13,17 @@ class ProfileManagerController extends AbstractController
     public function follow($username): Response
     {
         $session = $this->get('session');
+        // Pour éviter le crash, on redirige l'utilisateur s'il n'est pas connecté
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
+        // Obtention de l'objet de l'utilisateur connecté et de l'utilisateur à s'abonner
         $em = $this->getDoctrine()->getManager();
         $repository_profile = $em->getRepository(User::class);
         $profile = $repository_profile->findOneBy(array('username' => $session->get('user')));
         $followuser = $repository_profile->findOneBy(array('username' => $username));
+
+        // Ajout de l'abonnement dans la BDD
         $profile->addSubscription($followuser);
         $followuser->addFollower($profile);
         $em->persist($profile);
@@ -32,13 +36,17 @@ class ProfileManagerController extends AbstractController
     public function unfollow($username): Response
     {
         $session = $this->get('session');
+        // Pour éviter le crash, on redirige l'utilisateur s'il n'est pas connecté
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
+        // Obtention de l'objet de l'utilisateur connecté et de l'utilisateur à se désabonner
         $em = $this->getDoctrine()->getManager();
         $repository_profile = $em->getRepository(User::class);
         $profile = $repository_profile->findOneBy(array('username' => $session->get('user')));
         $followuser = $repository_profile->findOneBy(array('username' => $username));
+        
+        // Supression de l'abonnement de la BDD
         $profile->removeSubscription($followuser);
         $followuser->removeFollower($profile);
         $em->persist($profile);

+ 5 - 0
src/Controller/RegisterController.php

@@ -23,6 +23,7 @@ class RegisterController extends AbstractController
     {
         $session = $this->get('session');
 
+        // Redirection si l'utilisateur est connecté
         if (null !== $session->get('user')) {
             $session->save();
             return $this->redirectToRoute('home');
@@ -48,20 +49,24 @@ class RegisterController extends AbstractController
         // Génération du formulaire
         $form = $formBuilder->getForm();
 
+        // Si le formulaire est rempli et valide
         if ($request->getMethod() == 'POST') {
 
             $form->handleRequest($request);
             if ($form->isValid()) {
                 $chosen_username = $form->get("identifiant")->getData();
                 $em = $this->getDoctrine()->getManager();
+                // Vérification du nouveau compte
                 $repository_profile = $em->getRepository(User::class);
                 $profile = $repository_profile->findOneBy(array('username' => $chosen_username));
+                // Si l'utilisateur existe, redirection et affichage d'une erreur
                 if ($profile) {
                     return $this->render('register/index.html.twig', [
                         'message' => "Nom d'utilisateur déjà existant",
                         'form' => $form->createView()
                     ]);
                 }
+                // Création de l'utilisateur dans la BDD
                 $user->setUsername($form->get("identifiant")->getData());
                 $encoded_passwd = $encoder->encodePassword($user, $form->get('mot_de_passe')->getData());
                 $user->setPassword($encoded_passwd);

+ 4 - 0
src/Controller/ResearchController.php

@@ -14,9 +14,13 @@ class ResearchController extends AbstractController
     public function index(Request $request): Response
     {
         $session = $this->get('session');
+
+        // Redirection si non connecté
         if (null === $session->get('user')) {
             return  $this->redirectToRoute('login');
         }
+
+        // Recherche par rapport à la chaine présente dans l'URL
         $em = $this->getDoctrine()->getManager();
         $repository_message = $em->getRepository(Message::class);
         $messages = $repository_message->findMessageContainString($request->query->get('s'));

+ 1 - 0
templates/base.html.twig

@@ -24,6 +24,7 @@
 					<span class="navbar-toggler-icon"></span>
 				</button>
 				<div class="collapse navbar-collapse" id="navbarSupportedContent">
+					{# Affichage des routes privées si l'utilisateur est connecté #}
 					{% if username is defined and username is not null %}
 						<ul class="navbar-nav me-auto mb-2 mb-lg-0">
 							<li class="nav-item">

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

@@ -6,6 +6,7 @@
 
 {% block body %}
 	<div class="d-flex flex-column align-items-center">
+		{# Affichage de tous les messages #}
 		{% for msg in messages %}
 			<div class="card" style="width: 75rem;">
 				<div class="card-body">

+ 2 - 0
templates/home/index.html.twig

@@ -6,6 +6,7 @@
 {% block body %}
 
 	<div class="d-flex flex-column align-items-center">
+		{# Affichage du formulaire #}
 		<div class="card" style="width: 75rem;">
 			{{ form_start(form) }}
 			{{ form_errors(form) }}
@@ -13,6 +14,7 @@
 			<button type="submit" class="btn btn-primary">Envoyer</button>
 			{{ form_end(form) }}
 		</div>
+		{# On affiche tous les messages #}
 		{% for msg in messages %}
 			<div class="card" style="width: 75rem;">
 				<div class="card-body">

+ 2 - 0
templates/message/index.html.twig

@@ -6,6 +6,7 @@
 
 {% block body %}
 	<div class="d-flex flex-column align-items-center">
+		{# Si un message parent existe, afficher le bouton #}
 		{% if parent %}
 			<div class="card" style="width: 75rem;">
 				<h5 class="card-title">
@@ -31,6 +32,7 @@
 			<button type="submit" class="btn btn-primary">Envoyer</button>
 			{{ form_end(form) }}
 		</div>
+		{# On affiche toutes les réponses correspondants à la route #}
 		{% for msg in replies %}
 			<div class="card" style="width: 50rem;">
 				<div class="card-body">

+ 2 - 0
templates/parameters/index.html.twig

@@ -7,10 +7,12 @@
 	<div class="d-flex flex-column align-items-center">
 		<div class="card" style="width: 75rem;">
 			<div class="card-body">
+				{# Affichage du formulaire pour les paramètres #}
 				{{ form_start(form) }}
 				{{ form_errors(form) }}
 				{{ form_widget(form) }}
 				<button type="submit" class="btn btn-primary">Envoyer</button>
+				{# Affichage de si le profil a bien été modifié #}
 				{% if message %}
 					<div>{{ message }}</div>
 				{% endif %}

+ 2 - 0
templates/private_discussion/index.html.twig

@@ -7,6 +7,7 @@
 {% block body %}
 	<div class="d-flex flex-column align-items-center">
 		<div class="card" style="width: 75rem;">
+			{# Affichage des messages de la discussion privée #}
 			{% for msg in messages %}
 				<div class="card" style="width: 75rem;">
 					<div class="card-body">
@@ -16,6 +17,7 @@
 				</div>
 			{% endfor %}
 			<div class="card" style="width: 75rem;">
+				{# Formulaire d'envoi de message dans la discussion #}
 				{{ form_start(form) }}
 				{{ form_errors(form) }}
 				{{ form_widget(form) }}

+ 3 - 0
templates/private_discussions/index.html.twig

@@ -7,6 +7,7 @@
 {% block body %}
 	<ul></ul>
 	<div class="d-flex flex-column align-items-center">
+		{# Affichage pour messages d'erreurs #}
 		{% if error %}
 			<div class="card" style="width: 75rem;">
 				<div class="card-body">
@@ -16,6 +17,7 @@
 		{% endif %}
 		<div class="card" style="width: 75rem;">
 			<div class="card-body">
+				{# Formulaire pour initialiser discussion #}
 				{{ form_start(form) }}
 				{{ form_errors(form) }}
 				{{ form_widget(form) }}
@@ -25,6 +27,7 @@
 		</div>
 		<div class="card" style="width: 75rem;">
 			<div class="card-body">
+				{# Affichage de toutes les discussions déjà commencées #}
 				{% for pd in private_discussions %}
 					{% for key, value in pd %}
 						<p class="card-text">

+ 7 - 2
templates/profile/index.html.twig

@@ -10,11 +10,13 @@
 			<div class="card-body">
 				<h5 class="card-title">{{ profileusername }}</h5>
 				<p class="card-text">{{ description }}</p>
+				{# Affichage du status du profil #}
 				{% if isPrivate %}
 					<p class="card-text">Ce profil est privé.</p>
 				{% else %}
 					<p class="card-text">Ce profil est public.</p>
 				{% endif %}
+				{# Si ce n'est pas son profil, affichage du status d'abonnement #}
 				{% if not me %}
 					{% if not follow %}
 						<p class="card-text">
@@ -26,8 +28,9 @@
 						</p>
 					{% endif %}
 				{% endif %}
-				<h5 class="card-title">Abonnements</h5>
+				<h5 class="card-title">Abonnés</h5>
 				<div class="card-group">
+					{# Affichage des abonnés #}
 					{% for follow in followersList %}
 						<div class="card">
 							<div class="card-body">
@@ -36,8 +39,9 @@
 						</div>
 					{% endfor %}
 				</div>
-				<h5 class="card-title">Abonnés</h5>
+				<h5 class="card-title">Abonnements</h5>
 				<div class="card-group">
+					{# Affichage des abonnements #}
 					{% for sub in subscriptionsList %}
 						<div class="card">
 							<div class="card-body">
@@ -48,6 +52,7 @@
 				</div>
 			</div>
 		</div>
+		{# Si le profil est public il peut voir les messages sinon il faut qu'il soit abonné #}
 		{% if not privateNotAllowed %}
 			<h2>Messages</h2>
 			<div>

+ 1 - 0
templates/register/index.html.twig

@@ -6,6 +6,7 @@
     {% if message %}
         <div>{{ message }}</div>
     {% endif %}
+{# Formulaire d'inscription #}
 {{ form_start(form) }}
     {{ form_errors(form) }}
     {{ form_widget(form) }}

+ 1 - 0
templates/research/index.html.twig

@@ -6,6 +6,7 @@
 
 {% block body %}
 	<div class="d-flex flex-column align-items-center">
+		{# Affichage de tous les résultats de la recherche #}
 		{% for msg in messages %}
 			<div class="card" style="width: 75rem;">
 				<div class="card-body">