X-Git-Url: https://git.rapsys.eu/airbundle/blobdiff_plain/10f7eb47b94df348b8bc18fe51ad1302b6664054..b15c9995f718bb2b82a7d0487d6922ddb4cf2e2b:/Controller/CalendarController.php

diff --git a/Controller/CalendarController.php b/Controller/CalendarController.php
index 40da028..3e6f65d 100644
--- a/Controller/CalendarController.php
+++ b/Controller/CalendarController.php
@@ -25,20 +25,20 @@ class CalendarController extends DefaultController {
 	 * @return Response The rendered view
 	 */
 	public function index(Request $request): Response {
-		//Prevent non-admin to access here
-		$this->denyAccessUnlessGranted('ROLE_ADMIN', null, $this->translator->trans('Unable to access this page without role %role%!', ['%role%' => $this->translator->trans('Admin')]));
-
-		//Fetch doctrine
-		#$doctrine = $this->getDoctrine();
-
-		//Set section
-		$section = $this->translator->trans('Calendar oauth form');
+		//Without admin role
+		if (!$this->checker->isGranted('ROLE_ADMIN')) {
+			//Throw 403
+			throw $this->createAccessDeniedException($this->translator->trans('Unable to access this page without role %role%!', ['%role%' => $this->translator->trans('Admin')]));
+		}
 
 		//Set description
 		$this->context['description'] = $this->translator->trans('Initiate calendar oauth process');
 
 		//Set title
-		$title = $this->translator->trans($this->config['site']['title']).' - '.$section;
+		$this->context['title']['page'] = $this->translator->trans('Oauth form');
+
+		//Set section
+		$this->context['title']['section'] = $this->translator->trans('Calendar');
 
 		//Create the form according to the FormType created previously.
 		//And give the proper parameters
@@ -129,13 +129,16 @@ class CalendarController extends DefaultController {
 		}
 
 		//Render template
-		return $this->render('@RapsysAir/calendar/index.html.twig', ['title' => $title, 'section' => $section, 'form' => $form->createView()]+$this->context);
+		return $this->render('@RapsysAir/calendar/index.html.twig', ['form' => $form->createView()]+$this->context);
 	}
 
 	/**
 	 * List all sessions for the organizer
 	 *
-	 * @desc Display all sessions for the user with an application or login form
+	 * Display all sessions for the user with an application or login form
+	 *
+	 * @todo Fetch all google calendar and let user select one
+	 * @todo Then save the calendar fucking id in database ??? with token infos !!!
 	 *
 	 * @param Request $request The request instance
 	 *
@@ -149,7 +152,10 @@ class CalendarController extends DefaultController {
 		$this->context['description'] = $this->translator->trans('Finish calendar oauth process');
 
 		//Set title
-		$title = $this->translator->trans($this->config['site']['title']).' - '.$section;
+		$this->context['title']['page'] = $this->translator->trans('Oauth callback');
+
+		//Set section
+		$this->context['title']['section'] = $this->translator->trans('Calendar');
 
 		//With code
 		if (!empty($code = $request->get('code'))) {
@@ -199,7 +205,7 @@ class CalendarController extends DefaultController {
 				//With valid token
 				} else {
 					//Retrieve cache object
-					$cache = new FilesystemAdapter($this->config['cache']['namespace'], $this->config['cache']['lifetime'], $this->config['cache']['directory']);
+					$cache = new FilesystemAdapter($this->config['cache']['namespace'], $this->config['cache']['lifetime'], $this->config['path']['cache']);
 
 					//Retrieve calendars
 					$cacheCalendars = $cache->getItem('calendars');
@@ -254,6 +260,6 @@ class CalendarController extends DefaultController {
 		}
 
 		//Render template
-		return $this->render('@RapsysAir/calendar/callback.html.twig', ['title' => $title, 'section' => $section]+$this->context);
+		return $this->render('@RapsysAir/calendar/callback.html.twig', $this->context);
 	}
 }