Beispiel #1
0
 function checkLogin(&$xoopsUser)
 {
     $root =& XCube_Root::getSingleton();
     if ($root->mContext->mUser->isInRole('Site.RegisteredUser')) {
         return;
     }
     $root->mLanguageManager->loadModuleMessageCatalog('user');
     $userHandler =& xoops_getmodulehandler('users', 'user');
     $criteria = new CriteriaCompo();
     if (xoops_getrequest('uname') != "" && strpos(xoops_getrequest('uname'), '@') !== false) {
         $criteria->add(new Criteria('email', xoops_getrequest('uname')));
     } else {
         $criteria->add(new Criteria('uname', xoops_getrequest('uname')));
         // use for both e-mail or uname logiin
         //	$criteria->add(new Criteria('uname',''));				// use for only e-mail logiin
     }
     $criteria->add(new Criteria('pass', md5(xoops_getrequest('pass'))));
     $userArr =& $userHandler->getObjects($criteria);
     if (count($userArr) != 1) {
         return;
     }
     if ($userArr[0]->get('level') == 0) {
         return;
     }
     $handler =& xoops_gethandler('user');
     $user =& $handler->get($userArr[0]->get('uid'));
     $xoopsUser = $user;
     require_once XOOPS_ROOT_PATH . '/include/session.php';
     xoops_session_regenerate();
     $_SESSION = array();
     $_SESSION['xoopsUserId'] = $xoopsUser->get('uid');
     $_SESSION['xoopsUserGroups'] = $xoopsUser->getGroups();
 }
Beispiel #2
0
     foreach ($user->getGroups() as $group) {
         if (in_array($group, $xoopsConfig['closesite_okgrp']) || XOOPS_GROUP_ADMIN == $group) {
             $allowed = true;
             break;
         }
     }
     if (!$allowed) {
         redirect_header(XOOPS_URL . '/index.php', 1, _NOPERM);
         exit;
     }
 }
 $user->setVar('last_login', time());
 if (!$member_handler->insertUser($user)) {
 }
 require_once XOOPS_ROOT_PATH . '/include/session.php';
 xoops_session_regenerate();
 $_SESSION = array();
 $_SESSION['xoopsUserId'] = $user->getVar('uid');
 $_SESSION['xoopsUserGroups'] = $user->getGroups();
 if ($xoopsConfig['use_mysession'] && $xoopsConfig['session_name'] != '') {
     setcookie($xoopsConfig['session_name'], session_id(), time() + 60 * $xoopsConfig['session_expire'], '/', '', 0);
 }
 $user_theme = $user->getVar('theme');
 if (in_array($user_theme, $xoopsConfig['theme_set_allowed'])) {
     $_SESSION['xoopsUserTheme'] = $user_theme;
 }
 if (!empty($_POST['xoops_redirect']) && !strpos($_POST['xoops_redirect'], 'register')) {
     $parsed = parse_url(XOOPS_URL);
     $url = isset($parsed['scheme']) ? $parsed['scheme'] . '://' : 'http://';
     if (isset($parsed['host'])) {
         $url .= isset($parsed['port']) ? $parsed['host'] . ':' . $parsed['port'] . trim($_POST['xoops_redirect']) : $parsed['host'] . trim($_POST['xoops_redirect']);