getSession() public method

Gets the Session.
public getSession ( ) : Symfony\Component\HttpFoundation\Session\SessionInterface | null
return Symfony\Component\HttpFoundation\Session\SessionInterface | null The session
 /**
  * @Route("/taches/edition/{slug}")
  * @Template()
  */
 public function editAction($slug, Request $request)
 {
     if (!empty($slug)) {
         $session = $request->getSession();
         //0 valeur par defaut si vide
         $id_user = $session->get('user', 0);
         if ($id_user == 0) {
             $request->getSession()->getFlashBag()->add('error', 'OULAH ! Il s\'est passé un truc pas net O.o. Tu t\'es déco ?');
             return $this->redirect($this->generateUrl('corvee_taches_homepage', array()));
         }
         $em = $this->getDoctrine()->getManager();
         $tache = $em->getRepository('Corvees\\TachesBundle\\Entity\\Tache')->findOneBySlug($slug);
         if (!empty($tache)) {
             $user = $em->getRepository('Corvees\\TachesBundle\\Entity\\User')->find($id_user);
             $tache->setFkIntervenant($user);
             $tache->setDateEffectue(new \Datetime());
             $form = $this->get('form.factory')->create(new TacheEditType(), $tache);
             if ($form->handleRequest($request)->isValid()) {
                 $difference = $tache->getDateCreation()->diff($tache->getDateEffectue());
                 $difference = $difference->format("%Y-%m-%d %H:%i:%s");
                 $difference = new \DateTime($difference);
                 $tache->setTemps($difference);
                 $em = $this->getDoctrine()->getManager();
                 $em->persist($tache);
                 $em->flush();
                 $request->getSession()->getFlashBag()->add('notice', 'Tache bien enregistrée.');
                 return $this->redirect($this->generateUrl('corvee_taches_homepage', array()));
             }
             return array('form' => $form->createView(), 'tache' => $tache, 'route' => 'formulaire_tache_edit');
         }
     }
 }
 /**
  * @param Request $request
  * @return null|RedirectResponse
  */
 public function onLogoutSuccess(Request $request)
 {
     // Chamilo logout
     $request->getSession()->remove('_locale');
     $request->getSession()->remove('_locale_user');
     if (api_is_global_chat_enabled()) {
         $chat = new \Chat();
         $chat->setUserStatus(0);
     }
     $userId = $this->storage->getToken()->getUser()->getId();
     $tbl_track_login = Database::get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN);
     $sql = "SELECT login_id, login_date\n                FROM {$tbl_track_login}\n                WHERE login_user_id = {$userId}\n                ORDER BY login_date DESC\n                LIMIT 0,1";
     $row = Database::query($sql);
     $loginId = null;
     if (Database::num_rows($row) > 0) {
         $loginId = Database::result($row, 0, "login_id");
     }
     $loginAs = $this->checker->isGranted('ROLE_PREVIOUS_ADMIN');
     if (!$loginAs) {
         $current_date = api_get_utc_datetime();
         $sql = "UPDATE {$tbl_track_login}\n                    SET logout_date='" . $current_date . "'\n        \t\t    WHERE login_id='{$loginId}'";
         Database::query($sql);
     }
     $online_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ONLINE);
     $query = "DELETE FROM " . $online_table . " WHERE login_user_id = {$userId}";
     Database::query($query);
     require_once api_get_path(SYS_PATH) . 'main/chat/chat_functions.lib.php';
     exit_of_chat($userId);
     $login = $this->router->generate('home');
     $response = new RedirectResponse($login);
     return $response;
 }
 /**
  * filesAction
  *
  * @param Request $request
  * @param int     $pageId
  *
  * @return Response
  */
 public function filesAction(Request $request, $pageId)
 {
     $uploadDir = trim($this->container->getParameter('kr_solutions_krcms.upload_dir'));
     $_SESSION['KCFINDER'] = array();
     $_SESSION['KCFINDER']['disabled'] = false;
     $_SESSION['KCFINDER']['uploadURL'] = '/' . trim($this->container->getParameter('kr_solutions_krcms.upload_dir'), '/');
     $_SESSION['KCFINDER']['uploadDir'] = $this->container->getParameter('kernel.root_dir') . '/../web/' . trim($this->container->getParameter('kr_solutions_krcms.upload_dir'), '/');
     $page = $this->getPageRepository()->getPageById($pageId);
     if (null === $page) {
         $request->getSession()->getFlashBag()->add('alert-danger', $this->getTranslator()->trans('file.page_not_exist', array('%page_id%' => $pageId), 'KRSolutionsKRCMSBundle'));
         return $this->redirect($this->generateUrl('kr_solutions_krcms_dashboard'));
     }
     if (false == $page->getPageType()->getHasFiles()) {
         $request->getSession()->getFlashBag()->add('alert-danger', $this->getTranslator()->trans('file.page_cannot_contain_files', array(), 'KRSolutionsKRCMSBundle'));
         return $this->redirect($this->generateUrl('kr_solutions_krcms_pages_index', array('siteId' => $page->getSite()->getId())));
     }
     $newFile = new File();
     $fileForm = $this->createForm('krcms_file', $newFile);
     $fileForm->handleRequest($request);
     if ($fileForm->isValid()) {
         $em = $this->getDoctrine()->getManager();
         $uriOrig = trim($newFile->getUri());
         $newFile->setUri(ltrim(ltrim($uriOrig, '/'), ltrim($uploadDir, '/')));
         $newFile->setPage($page);
         $em->persist($newFile);
         $em->flush();
         $request->getSession()->getFlashBag()->add('alert-success', $this->getTranslator()->trans('file.file_added', array(), 'KRSolutionsKRCMSBundle'));
         return $this->redirect($this->generateUrl('kr_solutions_krcms_files', array('pageId' => $pageId)));
     }
     return $this->render('KRSolutionsKRCMSBundle:File:index.html.twig', array('page' => $page, 'uploadDir' => $uploadDir, 'fileForm' => $fileForm->createView()));
 }
 /**
  * {@inheritdoc}
  */
 public function collect(Request $request, Response $response, \Exception $exception = null)
 {
     $responseHeaders = $response->headers->all();
     $cookies = array();
     foreach ($response->headers->getCookies() as $cookie) {
         $cookies[] = $this->getCookieHeader($cookie->getName(), $cookie->getValue(), $cookie->getExpiresTime(), $cookie->getPath(), $cookie->getDomain(), $cookie->isSecure(), $cookie->isHttpOnly());
     }
     if (count($cookies) > 0) {
         $responseHeaders['Set-Cookie'] = $cookies;
     }
     $attributes = array();
     foreach ($request->attributes->all() as $key => $value) {
         if (is_object($value)) {
             $attributes[$key] = sprintf('Object(%s)', get_class($value));
             if (is_callable(array($value, '__toString'))) {
                 $attributes[$key] .= sprintf(' = %s', (string) $value);
             }
         } else {
             $attributes[$key] = $value;
         }
     }
     $content = null;
     try {
         $content = $request->getContent();
     } catch (\LogicException $e) {
         // the user already got the request content as a resource
         $content = false;
     }
     $this->data = array('format' => $request->getRequestFormat(), 'content' => $content, 'content_type' => $response->headers->get('Content-Type') ? $response->headers->get('Content-Type') : 'text/html', 'status_code' => $response->getStatusCode(), 'request_query' => $request->query->all(), 'request_request' => $request->request->all(), 'request_headers' => $request->headers->all(), 'request_server' => $request->server->all(), 'request_cookies' => $request->cookies->all(), 'request_attributes' => $attributes, 'response_headers' => $responseHeaders, 'session_attributes' => $request->hasSession() ? $request->getSession()->all() : array(), 'flashes' => $request->hasSession() ? $request->getSession()->getFlashBag()->peekAll() : array(), 'path_info' => $request->getPathInfo());
 }
 public function indexAction(Request $request, $year, $month)
 {
     $em = $this->getDoctrine()->getManager();
     if ($year < 1970) {
         $year = date('Y');
     }
     if ($month < 1) {
         $month = date('m');
     }
     if ($request->getMethod() == 'POST') {
         $request->getSession()->set('filterCalendar', $request->get('id_user'));
     }
     if ($request->getSession()->get('filterCalendar')) {
         $selected_user = $request->getSession()->get('filterCalendar');
     } else {
         $selected_user = 0;
     }
     $weekStart = new \DateTime($year . '-' . $month . '-01');
     $weekStart = $weekStart->format('W');
     $calendar = $this->drawWeekCalendar($weekStart, $year, $selected_user);
     for ($i = $weekStart + 1; $i <= $weekStart + 6; $i++) {
         $calendar .= $this->drawWeekCalendar($i, $year, $selected_user);
     }
     $users = $em->getRepository('PointWebUserBundle:User')->findBy(array('enabled' => 1));
     return $this->render('PointWebCalendarBundle:Default:index.html.twig', array('calendar' => $calendar, 'year' => $year, 'nextYear' => $month == 12 ? $year + 1 : $year, 'lastYear' => $month == 1 ? $year - 1 : $year, 'month' => $month, 'nextMonth' => $month == 12 ? 1 : $month + 1, 'lastMonth' => $month == 1 ? 12 : $month - 1, 'users' => $users, 'selected_user' => $selected_user));
 }
 /**
  * @Route("/familles/edition/{slug}")
  * @Template()
  */
 public function editAction($slug, Request $request)
 {
     if (!empty($slug)) {
         $session = $request->getSession();
         //0 valeur par defaut si vide
         $id_user = $session->get('user', 0);
         if ($id_user == 0) {
             $request->getSession()->getFlashBag()->add('error', 'OULAH ! Il s\'est passé un truc pas net O.o. Tu t\'es déco ?');
             return $this->redirect($this->generateUrl('corvee_taches_homepage', array()));
         }
         $em = $this->getDoctrine()->getManager();
         $famille = $em->getRepository('Corvees\\TachesBundle\\Entity\\Famille')->findOneBySlug($slug);
         if (!empty($famille)) {
             $form = $this->get('form.factory')->create(new FamilleEditType(), $famille);
             if ($form->handleRequest($request)->isValid()) {
                 $em = $this->getDoctrine()->getManager();
                 $em->persist($famille);
                 $em->flush();
                 $request->getSession()->getFlashBag()->add('notice', 'Famille bien enregistrée.');
                 return $this->redirect($this->generateUrl('familles', array()));
             }
             return array('form' => $form->createView(), 'famille' => $famille, 'route' => 'formulaire_famille_edit');
         }
     }
 }
 public function listAction(Request $request)
 {
     $cronjobs = $this->get('agentsib_crontab.manager')->getDatabaseCronjobs();
     if ($request->query->has('action') && $request->query->has('rand')) {
         $rand = $request->query->get('rand');
         $cronjob = $this->get('agentsib_crontab.manager')->getCronjobById($request->query->get('id'));
         if ($cronjob && !empty($rand) && $rand == $request->getSession()->get('agentsib_crontab_rand', '')) {
             switch ($request->query->get('action')) {
                 case 'enable':
                     $this->get('agentsib_crontab.manager')->enableCronjob($cronjob);
                     break;
                 case 'disable':
                     $this->get('agentsib_crontab.manager')->disableCronjob($cronjob);
                     break;
                 case 'immediately':
                     $this->get('agentsib_crontab.manager')->executeImmediatelyCronjob($cronjob);
                     break;
             }
         }
         return $this->redirect($this->generateUrl('agentsib_cronjob_tasks'));
     }
     $rand = mt_rand(10000000, 90000000);
     $request->getSession()->set('agentsib_crontab_rand', $rand);
     return $this->render('AgentSIBCrontabBundle::list.html.twig', array('cronjobs' => $cronjobs, 'rand' => $rand));
 }
Example #8
0
 /**
  * Index of the app
  *
  * @param Request $request
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function indexAction(Request $request)
 {
     $locale = $request->get('_locale');
     $request->setLocale($locale);
     $request->getSession()->set('_locale', $locale);
     $session = $request->getSession();
     $securityContext = $this->container->get('security.context');
     if ($securityContext->isGranted('ROLE_ADMIN')) {
         return $this->redirectToRoute('admin_homepage');
     } elseif ($securityContext->isGranted('ROLE_USER')) {
         return $this->redirectToRoute('user_homepage');
     } else {
         $authErrorKey = Security::AUTHENTICATION_ERROR;
         $lastUsernameKey = Security::LAST_USERNAME;
         // get the error if any (works with forward and redirect -- see below)
         if ($request->attributes->has($authErrorKey)) {
             $error = $request->attributes->get($authErrorKey);
         } elseif (null !== $session && $session->has($authErrorKey)) {
             $error = $session->get($authErrorKey);
             $session->remove($authErrorKey);
         } else {
             $error = null;
         }
         if (!$error instanceof AuthenticationException) {
             $error = null;
             // The value does not come from the security component.
         }
         // last username entered by the user
         $lastUsername = null === $session ? '' : $session->get($lastUsernameKey);
         $csrfToken = $this->get('security.csrf.token_manager')->getToken('authenticate')->getValue();
         return $this->render('BaseBundle:Default:index.html.twig', array('last_username' => $lastUsername, 'error' => $error, 'csrf_token' => $csrfToken));
     }
 }
Example #9
0
 /**
  * @Route("/helinorm-test/{number}" ,name="helinorm_test", options={"expose" = true})
  * @Template("VidalMainBundle:Helinorm:test.html.twig")
  */
 public function testAction(Request $request, $number)
 {
     $test = array(0 => array('question' => '<b>ВОПРОС №1 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Были/есть ли у Ваших родственников серьезные случаи заболевания желудка (рак, язвенная болезнь)?', 'answers' => array(0 => 'Нет', 1 => 'Были/есть, но не такие серьезные', 2 => 'Были/есть')), 1 => array('question' => '<b>ВОПРОС №2 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Как часто у Вас бывает изжога?', 'answers' => array(0 => 'Редко или никогда', 1 => 'Случается периодически как реакция на прием тяжелой или острой пищи', 2 => 'Мучаюсь каждый день')), 2 => array('question' => '<b>ВОПРОС №3 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Часто ли у Вас бывает отрыжка после приема пищи?', 'answers' => array(0 => 'Не помню такого', 1 => 'Бывает, в зависимости от блюда, которое съел', 2 => 'Каждый раз после еды')), 3 => array('question' => '<b>ВОПРОС №4 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Испытываете ли Вы боли и дискомфорт в желудке, которые проходят или, напротив, усиливаются после приема пищи?', 'answers' => array(0 => 'Никогда такого не было', 1 => 'Очень редко, но есть пища, на которую мой желудок так реагирует', 2 => 'Практически после каждого приема пищи')), 4 => array('question' => '<b>ВОПРОС №5 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Не замечали ли Вы повышенного газоотделения (вздутия живота) после приема пищи?', 'answers' => array(0 => 'Только если выпью много газированной воды', 1 => 'Изредка, после приема острой или жирной пищи, после употребления алкоголя', 2 => 'Мучаюсь с этой проблемой постоянно')), 5 => array('question' => '<b>ВОПРОС №6 Из 6:</b>&nbsp;&nbsp;&nbsp;&nbsp;Как часто Вы принимаете обезболивающие средства (например, аспирин, диклофенак, ибупрофен)?', 'answers' => array(0 => 'Никогда', 1 => 'Иногда', 2 => 'Часто')));
     $testResult = array(0 => array('title' => 'Результат: вам не о чем беспокоиться, но забывать о профилактике не стоит!', 'text' => 'Скорее всего, у Вас не наблюдается каких-либо видимых проблем с желудочно-кишечным трактом. <a href="http://ad.adriver.ru/cgi-bin/click.cgi?sid=1&bt=2&ad=511031&pid=1919501&bid=3782870&bn=3782870&rnd=509224482" target="_blank">Правильный режим питания</a> и здоровый образ жизни, плановые профилактические визиты к врачу – залог здоровья в будущем.'), 1 => array('title' => 'Результат: состояние Вашего желудочно-кишечного тракта не идеально', 'text' => 'Проявите повышенную заботу о своем желудке. Возможно, Вам следует пересмотреть образ жизни и привычки питания. Желательно обратиться к врачу-гастроэнтерологу и пройти <a href="http://ad.adriver.ru/cgi-bin/click.cgi?sid=1&bt=2&ad=511031&pid=1919501&bid=3782871&bn=3782871&rnd=168803413" target="_blank">профилактическое обследование</a>.'), 2 => array('title' => 'Результат: Вам необходимо срочно обратиться к врачу.', 'text' => 'Срочно займитесь своим здоровьем. Обязательно посетите врача-гастроэнтеролога и пройдите обследование желудочно-кишечного тракта, сдайте тест на наличие <a href="http://ad.adriver.ru/cgi-bin/click.cgi?sid=1&bt=2&ad=511031&pid=1919501&bid=3782872&bn=3782872&rnd=1778476428" target="_blank">Хеликобактер пилори</a> и готовьтесь к тому, что образ жизни и режим питания придется менять.'));
     if ($request->getMethod() == 'POST') {
         $session = $request->getSession();
         $result = $session->get('heliresult');
         if ($result == null) {
             $result = 0;
         }
         $result += $request->request->get('answerNum');
         $session->set('heliresult', $result);
     } else {
         $session = $request->getSession();
         $result = $session->set('heliresult', null);
     }
     if ($number > 5) {
         if ($result <= 4) {
             $variable = 0;
         } elseif ($result <= 9) {
             $variable = 1;
         } else {
             $variable = 2;
         }
         return array('result' => $testResult[$variable], 'number' => $number + 1);
     } else {
         return array('question' => $test[$number], 'number' => $number + 1);
     }
 }
 /**
  * Checks if session was initialized and saves if current request is master
  * Runs on 'core.response' in test environment
  *
  * @param EventInterface $event
  * @param Response $response
  *
  * @return Response
  */
 public function filter(EventInterface $event, Response $response)
 {
     if (isset($this->request) && $this->master && null !== $this->request->getSession()) {
         $this->request->getSession()->save();
     }
     return $response;
 }
Example #11
0
 public function loginAction(Request $request)
 {
     if (!$request->isMethod(Request::METHOD_POST)) {
         if ($this->getAuth()->hasAuthenticatedUser()) {
             return new RedirectResponse($request->getBasePath() . '/');
         }
         return new Response($this->getView()->render('Account::login/index'));
     }
     $loginParams = $request->request->all();
     $redirectUri = $request->server->get('HTTP_REFERER');
     $this->getAuth()->authenticate(Auth::METHOD_PASSWORD, ['identity' => $loginParams['identity'], 'credential' => $loginParams['credential']]);
     if (!$this->getAuth()->hasAuthenticatedUser()) {
         $request->getSession()->getFlashBag()->add('error', 'Username or Password doesn\'t match any user!');
         return new RedirectResponse($redirectUri);
     } else {
         $authenticatedUser = $this->getAuth()->getAuthenticatedUser();
         if (!$authenticatedUser->isActive()) {
             $this->getAuth()->deauthenticate();
             $request->getSession()->getFlashBag()->add('error', 'User account has not been verified!');
             return new RedirectResponse($redirectUri);
         }
         $continue = $request->query->get('continue');
         if (empty($continue)) {
             $admin = $this->getObjectManager()->getRepository('Jirro\\Bundle\\AccountBundle\\Domain\\Group')->findOneByCode('ADMIN');
             $continue = $request->getBasePath() . '/';
             if ($authenticatedUser->hasGroup($admin)) {
                 $continue .= 'admin';
             }
             return new RedirectResponse($continue);
         }
     }
 }
 /**
  * indexAction action.
  */
 public function indexAction(Request $request, $_format)
 {
     if (version_compare(Kernel::VERSION, '2.1.0-dev', '<')) {
         if (null !== ($session = $request->getSession())) {
             // keep current flashes for one more request
             $session->setFlashes($session->getFlashes());
         }
     } else {
         $session = $request->getSession();
         if (null !== $session && $session->getFlashBag() instanceof AutoExpireFlashBag) {
             // keep current flashes for one more request if using AutoExpireFlashBag
             $session->getFlashBag()->setAll($session->getFlashBag()->peekAll());
         }
     }
     $cache = new ConfigCache($this->cacheDir . '/fosJsRouting.json', $this->debug);
     if (!$cache->isFresh()) {
         $content = $this->serializer->serialize(new RoutesResponse($this->exposedRoutesExtractor->getBaseUrl(), $this->exposedRoutesExtractor->getRoutes()), 'json');
         $cache->write($content, $this->exposedRoutesExtractor->getResources());
     }
     $content = file_get_contents((string) $cache);
     if ($callback = $request->query->get('callback')) {
         $content = $callback . '(' . $content . ');';
     }
     return new Response($content, 200, array('Content-Type' => $request->getMimeType($_format)));
 }
Example #13
0
 /**
  * This is called when an interactive authentication attempt succeeds. This
  * is called by authentication listeners inheriting from
  * AbstractAuthenticationListener.
  *
  * @param Request        $request
  * @param TokenInterface $token
  *
  * @return Response never null
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     //TODO: setup facebookId
     if (method_exists($token, 'getResourceOwnerName') && $token->getResourceOwnerName() == 'facebook') {
         $facebookId = $token->getUserName();
         $user = $this->doctrine->getRepository('GameCoreBundle:User')->findOneByFacebookId($facebookId);
         if (!$user) {
             $request->getSession()->set('userAuthData', array('type' => 'facebook', 'id' => $facebookId));
             $request->getSession()->set('needRegister', true);
         } else {
             $token = new UsernamePasswordToken($user, null, 'main', $user->getRoles());
             $this->security->setToken($token);
         }
     } else {
         $needRegister = $request->getSession()->get('needRegister');
         if ($needRegister === true) {
             $login = $token->getUserName();
             $user = $this->doctrine->getRepository('GameCoreBundle:User')->findOneByUsername($login);
             $userAuthData = $request->getSession()->get('userAuthData');
             if ($userAuthData['type'] == 'facebook') {
                 $user->setFacebookId($userAuthData['id']);
                 $this->doctrine->flush();
             }
             $request->getSession()->set('needRegister', false);
         }
     }
     $url = $this->router->generate('_welcome');
     return new RedirectResponse($url);
 }
 /**
  * @Template()
  */
 public function loginAction(Request $request)
 {
     if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {
         $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR);
     } else {
         $error = $request->getSession()->get(SecurityContext::AUTHENTICATION_ERROR);
     }
     return array('last_username' => $request->getSession()->get(SecurityContext::LAST_USERNAME), 'error' => $error);
     /*
     //$request = $this->getRequest();
     $session = $request->getSession();
     
     // get the login error if there is one
     if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {
         $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR);
     } else {
         $error = $session->get(SecurityContext::AUTHENTICATION_ERROR);
         $session->remove(SecurityContext::AUTHENTICATION_ERROR);
     }
     
     return $this->render('CoreBundle:Default:login.html.twig', array(
             // last username entered by the user
             'last_username' => $session->get(SecurityContext::LAST_USERNAME),
             'error'         => $error,
         ));
     */
 }
Example #15
0
 /**
  * @Route("/password", name="jc_user_password")
  */
 public function passwordAction(Request $request)
 {
     // If user has submit form => send new password by mail...
     if ($request->getMethod() == 'POST') {
         $mailAddress = $request->request->get('mail');
         if (!ValidateUtil::checkMail($mailAddress)) {
             $request->getSession()->getFlashBag()->add('popup-message', 'Le mail indiqué n\'est pas valide');
             return $this->render('jcUserBundle:FO:password.html.twig');
         }
         $entityManager = $this->getDoctrine()->getManager();
         $userList = $entityManager->getRepository('jcUserBundle:User')->findBy(array('mail' => $mailAddress));
         if (count($userList) == 0) {
             $request->getSession()->getFlashBag()->add('popup-message', 'Le mail indiqué est introuvable');
             return $this->render('jcUserBundle:FO:password.html.twig');
         }
         // Update password for user found + send mail
         $user = $userList[0];
         $accountMailService = $this->get('jc_user.account_mail');
         if ($accountMailService->sendNewAccountInformation($user->getId(), false)) {
             $request->getSession()->getFlashBag()->add('popup-message', 'Un mail contenant votre nouveau mot de passe vous a été envoyé');
         } else {
             $request->getSession()->getFlashBag()->add('popup-message', 'Erreur lors de l\'envoi du mail');
         }
     }
     return $this->render('jcUserBundle:FO:password.html.twig');
 }
 /**
  * @Route("/entry-point/{mac}", defaults={"mac" = null})
  * @Method({"GET", "POST"})
  * @Template()
  */
 public function indexAction(Request $request, $mac)
 {
     // Attempting to do anything here as a logged in user will fail. Set the current user token to null to log user out.
     $this->get('security.token_storage')->setToken(null);
     if (!$mac) {
         if (!$request->getSession()->get('auth-data')) {
             // No MAC code, nothing in the session, so we can't help - return to front page.
             return $this->redirectToRoute('barbon_hostedapi_app_index_index');
         }
     } else {
         $cacheKey = sprintf('mac-%s', $mac);
         // If MAC isn't found in the cache, it's already been processed - redirect back to this route without the MAC, and try again.
         if (!$this->cache->contains($cacheKey)) {
             return $this->redirectToRoute('barbon_hostedapi_landlord_authentication_entrypoint_index');
         }
         // store data to session and empty the cache
         $authData = unserialize($this->cache->fetch($cacheKey));
         $request->getSession()->set('auth-data', $authData);
         $this->cache->delete($cacheKey);
     }
     // Decide which tab should start as visible, so that is a registration attempt is in progress it re-shows that tab.
     $selectedTab = $request->query->get('action') ?: 'register';
     if ($request->isMethod(Request::METHOD_POST)) {
         if ($request->request->has('direct_landlord')) {
             $selectedTab = 'register';
         }
     }
     return array('selectedTab' => $selectedTab);
 }
 /**
  * This method is called by the LogoutListener when a user has requested
  * to be logged out. Usually, you would unset session variables, or remove
  * cookies, etc.
  *
  * @param Request        $request
  * @param Response       $response
  * @param TokenInterface $token
  */
 public function logout(Request $request, Response $response, TokenInterface $token)
 {
     // Remove host override
     if ($request->hasPreviousSession() && $request->getSession()->has(DomainConfiguration::OVERRIDE_HOST)) {
         $request->getSession()->remove(DomainConfiguration::OVERRIDE_HOST);
     }
 }
 /**
  * Delete Cart Items
  * @Rest\Delete("/cart/{id}/items/{itemId}" )
  */
 function deleteItemAction($id, $itemId, Request $request)
 {
     $arrmixCartData = $request->getSession()->get('cart_' . $id);
     unset($arrmixCartData[$itemId]);
     $request->getSession()->set('cart_' . $id, $arrmixCartData);
     return array('cart_id' => $id, 'items' => $request->getSession()->get('cart_' . $id));
 }
 public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
 {
     $data = ['request-id' => $request->headers->get('X-Request-Id'), 'datetime' => date('Y-m-d H:i:s'), 'method' => $request->getMethod(), 'scheme' => $request->getScheme(), 'host' => $request->getHttpHost(), 'uri' => $request->getRequestUri(), 'route' => $request->get('_route')];
     /*
     if (isset($this['current_user'])) {
         $data['username'] = $this['current_user']->getName();
     }
     */
     $data['address'] = $request->getClientIp();
     if ($request->getSession()) {
         $data['session-id'] = $request->getSession()->getId();
     }
     if ($request->headers->has('User-Agent')) {
         $data['agent'] = $request->headers->get('User-Agent');
     }
     if ($request->headers->has('referer')) {
         $data['referer'] = $request->headers->get('referer');
     }
     $this->log($data);
     $response = $this->app->handle($request, $type, $catch);
     /*
     // response details
     $data['status'] = $response->getStatusCode();
     if ($response->headers->has('Content-Type')) {
         $data['content-type'] = $response->headers->get('content-type');
     }
     */
     return $response;
 }
 public function indexAction(Request $request)
 {
     $page = $request->query->get('page', 1);
     $maxResults = 10;
     $firstResult = $maxResults * ($page - 1);
     if ($request->isMethod(Request::METHOD_POST)) {
         switch (strtoupper($request->request->get('formAction'))) {
             case 'FILTER':
                 $request->getSession()->set(__METHOD__, $request->request);
                 break;
             default:
                 $request->getSession()->set(__METHOD__, new ParameterBag());
         }
     }
     $queryBuilder = $this->getObjectManager()->createQueryBuilder()->select('accountControls')->from('Jirro\\Bundle\\AccountBundle\\Domain\\AccountControl', 'accountControls')->leftJoin('accountControls.resource', 'resources')->leftJoin('accountControls.user', 'users')->leftJoin('accountControls.group', 'groups')->orderBy('resources.name', 'ASC')->addOrderBy('accountControls.action', 'ASC')->addOrderBy('users.username', 'ASC')->addOrderBy('groups.code', 'ASC')->setFirstResult($firstResult)->setMaxResults($maxResults);
     $filters = $request->getSession()->get(__METHOD__, new ParameterBag());
     if ($filters) {
         if ($filters->get('resource') !== null && $filters->get('resource') !== '') {
             $queryBuilder->andWhere('UPPER(resources.name) = :resource')->setParameter('resource', strtoupper($filters->get('resource')));
         }
         if ($filters->get('group') !== null && $filters->get('group') !== '') {
             $queryBuilder->andWhere('UPPER(groups.code) = :group')->setParameter('group', strtoupper($filters->get('group')));
         }
         if ($filters->get('user') !== null && $filters->get('user') !== '') {
             $queryBuilder->andWhere('UPPER(users.username) = :user')->setParameter('user', strtoupper($filters->get('user')));
         }
     }
     $paginator = new Paginator($queryBuilder->getQuery(), $page);
     return new Response($this->getView()->render('Admin::account-controls/index', ['paginator' => $paginator, 'filters' => $filters]));
 }
Example #21
0
 public function loginAction(Request $req)
 {
     $userData = json_decode($req->getContent(), true);
     //FIXME usage d'une requête native : revoir mapping entité
     $mgr = $this->getDoctrine()->getConnection();
     $qr = $mgr->prepare('select a.* from utilisateurs.view_login a where identifiant=:login and pass=:pass');
     $qr->bindValue('login', $userData['login']);
     $qr->bindValue('pass', md5($userData['pass']));
     $qr->execute();
     $data = $qr->fetchAll();
     //print_r($data);
     if (!$data) {
         return new JsonResponse(array('id' => null), 403);
     }
     foreach ($data as $user) {
         if (!isset($out)) {
             $out = $user;
             $out['apps'] = array($user['id_application'] => $user['maxdroit']);
         } else {
             $out['apps'][$user['id_application']] = $user['maxdroit'];
         }
     }
     // génération d'un token
     $token = md5(uniqid());
     $resp = new JsonResponse($out);
     $resp->headers->setCookie(new Cookie('token', $token));
     $req->getSession()->set('token', $token);
     $req->getSession()->set('user', $out);
     /*
      *
      */
     return $resp;
 }
 /**
  * Show login form
  * @Route("/login", name="login")
  * @Method({"GET"})
  * @param Request $request
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function loginAction(Request $request)
 {
     /** @var $session \Symfony\Component\HttpFoundation\Session\Session */
     $session = $request->getSession();
     $authErrorKey = Security::AUTHENTICATION_ERROR;
     $lastUsernameKey = Security::LAST_USERNAME;
     // get the error if any (works with forward and redirect -- see below)
     if ($request->attributes->has($authErrorKey)) {
         $error = $request->attributes->get($authErrorKey);
     } elseif (null !== $session && $session->has($authErrorKey)) {
         $error = $session->get($authErrorKey);
         $request->getSession()->remove($authErrorKey);
     } else {
         $error = null;
     }
     if (!$error instanceof AuthenticationException) {
         $error = null;
         // The value does not come from the security component.
     }
     // last username entered by the user
     $lastUsername = null === $session ? '' : $session->get($lastUsernameKey);
     $csrfToken = null;
     if ($this->has('security.csrf.token_manager')) {
         $csrfToken = $this->get('security.csrf.token_manager')->getToken('authenticate')->getValue();
     }
     return $this->renderLogin(array('last_username' => $lastUsername, 'error' => $error, 'csrf_token' => $csrfToken));
 }
 /**
  * Performs authentication.
  *
  * @param  Request $request A Request instance
  *
  * @return TokenInterface The authenticated token, or null if full authentication is not possible
  *
  * @throws AuthenticationException if the authentication fails
  */
 protected function attemptAuthentication(Request $request)
 {
     $username = trim($request->get($this->options['username_parameter'], null, true));
     $password = $request->get($this->options['password_parameter'], null, true);
     $request->getSession()->set('USER', $username);
     $request->getSession()->set('PWD', $password);
     return $this->authenticationManager->authenticate(new UserToken($username, $password, $this->providerKey));
 }
 private function removeFiltros(Request $request)
 {
     foreach ($request->getSession()->all() as $key_ses => $data) {
         if (strpos($key_ses, 'filtros_') !== false) {
             $request->getSession()->remove($key_ses);
         }
     }
 }
Example #25
0
 public function checkoutCompletePageAction(Request $request) : Response
 {
     if ($request->getSession()->get('checkout_complete')) {
         $request->getSession()->set('checkout_complete', null);
         return $this->render('@FrontEnd/checkout_complete.html.twig');
     }
     return $this->redirectToRoute('front_end_homepage');
 }
 public function requireSlug(Request $request)
 {
     $slug = $request->get('slug', $request->getSession()->get('slug'));
     if (empty($slug)) {
         throw new \InvalidArgumentException('No slug was received');
     }
     $request->getSession()->set('slug', $slug);
 }
Example #27
0
 /**
  * Sets a flash notice
  *
  * @param  string  $level    The level of the message: success, warning, danger
  * @param  string  $message  The message
  */
 public function setFlash($level, $message)
 {
     if (!$this->request->hasSession()) {
         $this->request->setSession(new Session());
     }
     $this->flash_notices[] = ['level' => $level, 'message' => $message];
     $this->request->getSession()->getFlashBag()->set('notice', $this->flash_notices);
 }
Example #28
0
 /**
  * @Route("/sayHello/{n}")
  * @Template()
  */
 public function sayHelloAction(Request $req, $n)
 {
     if ($req->getSession()->get('username')) {
         $username = $session = $req->getSession()->get('username');
     } else {
         $username = '******';
     }
     return ['n' => $n, 'username' => $username];
 }
 /**
  * @Route("/logout",name="logout")
  */
 public function LogOut(Request $request)
 {
     $request->getSession()->clear();
     $userConnect = $request->getSession()->get('user');
     $user = new User();
     $form = $this->createFormBuilder($user)->setAction($this->generateUrl('customer-register'))->add('email', EmailType::class, array('label' => 'Email', 'required' => true, 'attr' => array('class' => 'form-control')))->add('password', PasswordType::class, array('label' => 'Mot de passe', 'required' => true, 'attr' => array('class' => 'form-control')))->add('connect', SubmitType::class, array('label' => 'Se Connecter', 'attr' => array('class' => 'btn btn-template-main')))->getForm();
     $register = $this->createFormBuilder($user)->setAction($this->generateUrl('customer-register'))->add('nom', TextType::class, array('label' => 'Nom', 'required' => true, 'attr' => array('class' => 'form-control')))->add('prenom', TextType::class, array('label' => 'Prénom', 'required' => true, 'attr' => array('class' => 'form-control')))->add('login', TextType::class, array('label' => 'Choose a login', 'required' => true, 'attr' => array('class' => 'form-control')))->add('dateNaissance', BirthdayType::class, array('label' => 'Date de naissance', 'required' => true, 'years' => range(1900, 1998), 'format' => 'ddMMyyyy'))->add('password', RepeatedType::class, array('type' => PasswordType::class, 'invalid_message' => 'Les deux champs doivent correspondre.', 'options' => array('attr' => array('class' => 'form-control')), 'required' => true, 'first_options' => array('label' => 'Password'), 'second_options' => array('label' => 'Repetez le  Password')))->add('email', EmailType::class, array('label' => 'Email', 'required' => true, 'attr' => array('class' => 'form-control')))->add('charte', CheckboxType::class, array('label' => 'J\'ai lu et j\'accepte les conditions de la charte de bonne conduite.', 'required' => true, 'attr' => array('class' => 'checkbox-inline')))->add('regist', SubmitType::class, array('label' => 'S\'enregistrer', 'attr' => array('class' => 'btn btn-template-main')))->getForm();
     return $this->render('@App/front/customer-register.html.twig', array('base_dir' => realpath($this->container->getParameter('kernel.root_dir') . '/..'), 'nav_active' => 'connexion', 'form' => $form->createView(), 'register' => $register->createView(), 'user' => $userConnect));
 }
 /**
  * @Route("etudiant/fiche/{id}", name="student.fiches.form")
  * @Template("DashboardBundle:Fiches:Student/form.html.twig")
  * @Method({"POST","GET"})
  */
 public function formAction($id, Request $request)
 {
     $token = $this->get('security.context')->getToken();
     $doctrine = $this->getDoctrine();
     $em = $doctrine->getManager();
     $scoreRp = $doctrine->getRepository('DashboardBundle:Score');
     $score = $scoreRp->find($id);
     if (empty($score)) {
         throw $this->createNotFoundException('La fiche n\'existe pas');
     }
     if ($token->getUser()->getId() !== $score->getStudent()->getId()) {
         throw $this->createNotFoundException('La fiche n\'existe pas');
     }
     if ($score->getStatus()->getName() == "DONE") {
         $message = "Vous avez déjà fait cette fiche. Vous ne pouvez donc pas retourner dessus";
         $request->getSession()->getFlashBag()->set('notice', $message);
         return $this->redirect($this->generateUrl('student.fiches.home'));
     }
     if ($score->getFiche()->getStatus()->getName() == "UNPUBLISHED") {
         $message = "Cette fiche n'est plus active";
         $request->getSession()->getFlashBag()->set('notice', $message);
         return $this->redirect($this->generateUrl('student.fiches.home'));
     }
     $fiche = $score->getFiche();
     $form = $this->createFormBuilder($score);
     foreach ($fiche->getChoices() as $choice) {
         $form->add('reponse_' . $choice->getId(), 'choice', array('choices' => array('oui' => 'oui', 'non' => 'non'), 'label' => $choice->getContent(), 'expanded' => true, 'mapped' => false, 'required' => true));
     }
     $form = $form->getForm()->handleRequest($request);
     if ($request->isMethod('POST')) {
         if ($form->isValid() && $form->isSubmitted()) {
             $choixRp = $doctrine->getRepository('DashboardBundle:Choix');
             $data = $form->all();
             $note = 0;
             $max = 0;
             foreach ($data as $key => $reponse) {
                 $id_choix = explode('_', $key)[1];
                 $choix = $choixRp->find($id_choix);
                 if ($reponse->getData() == $choix->getReponse()) {
                     $note += $choix->getNote();
                 }
                 $max += $choix->getNote();
             }
             $status = $doctrine->getRepository('PublicBundle:Status');
             $done = $status->findOneBy(array('name' => 'DONE'));
             $score->setNote($note);
             $score->setStatus($done);
             $em->persist($score);
             $em->flush();
             $message = "Votre Fiche a bien été soumise. Votre note est de " . $note . "/" . $max;
             $request->getSession()->getFlashBag()->set('notice', $message);
             $urlRedirect = $this->generateUrl('student.fiches.home');
             return $this->redirect($urlRedirect);
         }
     }
     return array('score' => $score, 'form' => $form->createView());
 }