src/Controller/Security/SecurityController.php line 29

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller\Security;
  4. use App\Form\Security\LoginFormType;
  5. use KnpU\OAuth2ClientBundle\Client\ClientRegistry;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. use Symfony\Component\Security\Http\Authentication\AuthenticationUtils;
  11. class SecurityController extends AbstractController
  12. {
  13.     /**
  14.      * @Route("/login", name="security_login")
  15.      */
  16.     public function login(AuthenticationUtils $authenticationUtils): Response
  17.     {
  18.         $form $this->createForm(LoginFormType::class, [
  19.             'username' => $authenticationUtils->getLastUsername(),
  20.         ]);
  21.         return $this->render('Security/login.html.twig', [
  22.             'form' => $form->createView(),
  23.             'last_username' => $authenticationUtils->getLastUsername(),
  24.             'error' => $authenticationUtils->getLastAuthenticationError(),
  25.         ]);
  26.     }
  27.     /**
  28.      * @Route("/connect/social", name="security_social_login")
  29.      */
  30.     public function connect(ClientRegistry $clientRegistryRequest $request)
  31.     {
  32.         $client $clientRegistry->getClient($request->query->get('client'));
  33.         if ('facebook' === $request->query->get('client')) {
  34.             return $client->redirect(['public_profile''email'], []);
  35.         }
  36.         return $client->redirect(['email'], []);
  37.     }
  38.     /**
  39.      * @Route("/logout", name="security_logout")
  40.      */
  41.     public function logout(): void
  42.     {
  43.     }
  44. }