isLoggedIn() public method

Returns true when a non AnonymousToken is set (which primarily means a real User is logged in)
public isLoggedIn ( ) : boolean
return boolean
Example #1
0
 public function addSessionScripts()
 {
     $response = $this->pageStack->getPageResponse();
     $session = array();
     $session['userId'] = null;
     $session['lang'] = 'en';
     if ($this->pageStack->getSession() && $this->pageStack->getSession()->has('admin_language')) {
         $session['lang'] = $this->pageStack->getSession()->get('admin_language');
     }
     $session['access'] = $this->acl->check(ACLRequest::create('jarves/entryPoint', ['path' => '/admin']));
     if ($this->pageStack->isLoggedIn()) {
         $user = $this->pageStack->getUser();
         $session['userId'] = $user->getId();
         $session['username'] = $user->getUsername();
         $session['lastLogin'] = $user->getLastLogin();
         $session['firstName'] = $user->getFirstName();
         $session['lastName'] = $user->getLastName();
         //            $email = $user->getEmail();
         //            $session['emailMd5'] = $email ? md5(strtolower(trim($email))) : null;
         $session['imagePath'] = $user->getImagePath();
     }
     $session['token'] = get_class($this->pageStack->getToken());
     $css = 'window._session = ' . json_encode($session) . ';';
     $response->addJs($css);
 }
Example #2
0
 public function registerForm(Request $request)
 {
     if ($this->pageStack->isLoggedIn()) {
         return $this->templating->renderResponse('JarvesBundle:User:logout.html.twig');
     }
     $user = new User();
     $form = $this->formFactory->createBuilder()->setData($user)->add('email', EmailType::class)->add('password', PasswordType::class)->add('save', SubmitType::class, array('label' => 'Register'))->getForm();
     $form->handleRequest($request);
     if ($form->isSubmitted() && $form->isValid()) {
     }
     return $this->templating->renderResponse('JarvesBundle:User:register.html.twig', ['form' => $form->createView()]);
 }
Example #3
0
 public function checkPageAccess(Node $page)
 {
     /** @var Node $oriPage */
     $oriPage = $page;
     if ($page->getAccessFrom() > 0 && $page->getAccessFrom() > time()) {
         $page = false;
     }
     if ($page->getAccessTo() > 0 && $page->getAccessTo() < time()) {
         $page = false;
     }
     if ($page->getAccessFromGroups() != '') {
         $access = false;
         $groups = ',' . $page->getAccessFromGroups() . ",";
         //eg ,2,4,5,
         $cgroups = null;
         if ($page['access_need_via'] == 0) {
             //we need to move this to a extra listener
             //                $cgroups =& $this->getJarves()->getClient()->getUser()->getGroups();
         } else {
             //                $htuser = $this->getJarves()->getClient()->login($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
             //
             //                if ($htuser['id'] > 0) {
             //                    $cgroups =& $htuser['groups'];
             //                }
         }
         if ($cgroups) {
             foreach ($cgroups as $group) {
                 if (strpos($groups, "," . $group['group_id'] . ",") !== false) {
                     $access = true;
                 }
             }
         }
         if (!$access) {
             //maybe we have access through the backend auth?
             if ($this->pageStack->isLoggedIn()) {
                 foreach ($this->pageStack->getUser()->getGroupIdsArray() as $groupId) {
                     if (false !== strpos($groups, "," . $groupId . ",")) {
                         $access = true;
                         break;
                     }
                 }
             }
         }
         if (!$access) {
             $page = false;
         }
     }
     if (!$page && ($to = $oriPage->getAccessRedirectTo())) {
         if (intval($to) > 0) {
             $to = $this->pageStack->getNodeUrl($to);
         }
         return new RedirectResponse($to);
     }
     //
     //        if (!$page && $oriPage->getAccessNeedVia() == 1) {
     //            $response = new Response('', 404);
     //
     //            return $response;
     //        }
 }
Example #4
0
 /**
  * @param array $objectItem
  * @param array $conditionRule
  * @param string $objectKey
  *
  * @return bool
  */
 public function checkRule($objectItem, $conditionRule, $objectKey = null)
 {
     $field = $conditionRule[0];
     $operator = $conditionRule[1];
     $value = $conditionRule[2];
     if (is_numeric($field)) {
         $ovalue = $field;
     } else {
         $ovalue = @$objectItem[$field];
         if (null === $ovalue && $objectKey && ($definition = $this->objects->getDefinition($objectKey))) {
             $tableName = substr($field, 0, strpos($field, '.'));
             $fieldName = substr($field, strpos($field, '.') + 1);
             if ($tableName === $definition->getTable()) {
                 $ovalue = $objectItem[$fieldName];
             }
         }
     }
     if ($value instanceof ConditionSubSelect) {
         $value = $value->getValue($objectKey);
     }
     //'<', '>', '<=', '>=', '=', 'LIKE', 'IN', 'REGEXP'
     switch (strtoupper($operator)) {
         case '!=':
         case 'NOT EQUAL':
             return $ovalue != $value;
         case 'LIKE':
             $value = preg_quote($value, '/');
             $value = str_replace('%', '.*', $value);
             $value = str_replace('_', '.', $value);
             return !!preg_match('/^' . $value . '$/', $ovalue);
         case 'REGEXP':
             return !!preg_match('/' . preg_quote($value, '/') . '/', $ovalue);
         case 'NOT IN':
             return strpos(',' . $value . ',', ',' . $ovalue . ',') === false;
         case 'IN':
             return strpos(',' . $value . ',', ',' . $ovalue . ',') !== false;
         case '<':
         case 'LESS':
             return $ovalue < $value;
         case '>':
         case 'GREATER':
             return $ovalue > $value;
         case '<=':
         case '=<':
         case 'LESSEQUAL':
             return $ovalue <= $value;
         case '>=':
         case '=>':
         case 'GREATEREQUAL':
             return $ovalue >= $value;
         case '= CURRENT_USER':
         case 'EQUAL CURRENT_USER':
             return $this->pageStack->isLoggedIn() && $ovalue == $this->pageStack->getUser()->getId();
         case '!= CURRENT_USER':
         case 'NOT EQUAL CURRENT_USER':
             return $this->pageStack->isLoggedIn() && $ovalue != $this->pageStack->getUser()->getId();
         case '=':
         case 'EQUAL':
         default:
             return $ovalue == $value;
     }
 }