- protected function render(string $view, array $parameters = [], Response $response = null): Response {
- //Create application form for role_guest
- if ($this->isGranted('ROLE_GUEST')) {
- //Without application form
- if (empty($parameters['forms']['application'])) {
- //Fetch doctrine
- $doctrine = $this->getDoctrine();
-
- //Create ApplicationType form
- $application = $this->createForm('Rapsys\AirBundle\Form\ApplicationType', null, [
- //Set the action
- 'action' => $this->generateUrl('rapsys_air_application_add'),
- //Set the form attribute
- 'attr' => [ 'class' => 'col' ],
- //Set admin
- 'admin' => $this->isGranted('ROLE_ADMIN'),
- //Set default user to current
- 'user' => $this->getUser()->getId(),
- //Set default slot to evening
- //XXX: default to Evening (3)
- 'slot' => $doctrine->getRepository(Slot::class)->findOneById(3)
- ]);
-
- //Add form to context
- $parameters['forms']['application'] = $application->createView();
- }
- //Create login form for anonymous
- } elseif (!$this->isGranted('IS_AUTHENTICATED_REMEMBERED')) {
- //Create ApplicationType form
- $login = $this->createForm('Rapsys\UserBundle\Form\LoginType', null, [
- //Set the action
- 'action' => $this->generateUrl('rapsys_user_login'),
- //Set the form attribute
- 'attr' => [ 'class' => 'col' ]
- ]);
-
- //Add form to context
- $parameters['forms']['login'] = $login->createView();
- }
-
- //Call parent method
- return $this->_render($view, $parameters, $response);
- }