/** * When redirecting to the backend dashboard (while logged in), * if the user does not have access change the redirect to the homepage. * * @param \Symfony\Component\HttpFoundation\RedirectResponse $response */ protected function handleNoBackendAccess(RedirectResponse $response) { $authCookie = $this->session->get('authentication'); if (!$this->authentication->isValidSession((string) $authCookie)) { return; } $dashboardPath = $this->urlGenerator->generate('dashboard'); $dashboardAccess = $this->users->isAllowed('dashboard'); if ($response->getTargetUrl() === $dashboardPath && !$dashboardAccess) { $this->session->getFlashBag()->clear(); $response->setTargetUrl($this->urlGenerator->generate('homepage')); } }
/** * Constructor. * * @param Application $app */ public function __construct(Application $app) { $repoAuth = $app['storage']->getRepository('Bolt\\Storage\\Entity\\Authtoken'); $repoUsers = $app['storage']->getRepository('Bolt\\Storage\\Entity\\Users'); parent::__construct($repoAuth, $repoUsers, $app['session'], $app['logger.flash'], $app['logger.system'], $app['permissions'], $app['randomgenerator'], $app['access_control.cookie.options']); $this->app = $app; }
/** * Constructor. * * @param Application $app */ public function __construct(Application $app) { /** @var \Bolt\Storage\Repository\AuthtokenRepository $repoAuth */ $repoAuth = $app['storage']->getRepository('Bolt\\Storage\\Entity\\Authtoken'); /** @var \Bolt\Storage\Repository\UsersRepository $repoUsers */ $repoUsers = $app['storage']->getRepository('Bolt\\Storage\\Entity\\Users'); parent::__construct($app['storage.lazy'], $app['request_stack'], $app['session'], $app['dispatcher'], $app['logger.flash'], $app['logger.system'], $app['permissions'], $app['randomgenerator'], $app['access_control.cookie.options']); $this->app = $app; }
/** * Constructor. * * @param Application $app */ public function __construct(Application $app) { parent::__construct($app['storage.lazy'], $app['request_stack'], $app['session'], $app['dispatcher'], $app['logger.flash'], $app['logger.system'], $app['permissions'], $app['randomgenerator'], $app['access_control.cookie.options']); $this->passwordFactory = $app['password_factory']; $this->authTokenName = $app['token.authentication.name']; }