public static function getInstance() { if (LogiksSession::$instance == null) { LogiksSession::$instance = new LogiksSession(); } return LogiksSession::$instance; }
function _envData($key, $name, $value) { LogiksSession::getInstance()->set(strtoupper($key), $name, $value); }
function startNewSession($userid, $domain, $params = array()) { session_regenerate_id(); $data = $_ENV['AUTH-DATA']; //printArray($data);exit(); $_SESSION['SESS_GUID'] = $data['guid']; $_SESSION['SESS_USER_ID'] = $data['userid']; $_SESSION['SESS_PRIVILEGE_ID'] = $data['privilegeid']; $_SESSION['SESS_ACCESS_ID'] = $data['accessid']; $_SESSION['SESS_PRIVILEGE_NAME'] = $data['privilege_name']; $_SESSION['SESS_ACCESS_NAME'] = $data['access_name']; $_SESSION['SESS_ACCESS_SITES'] = $data['sitelist']; if (empty($data['groups'])) { $data['groups'] = ["id" => 0, "group_name" => "", "group_manager" => "", "group_descs" => ""]; } $_SESSION['SESS_GROUP_ID'] = $data['groups']['id']; $_SESSION['SESS_GROUP_NAME'] = $data['groups']['group_name']; $_SESSION['SESS_GROUP_MANAGER'] = $data['groups']['group_manager']; $_SESSION['SESS_GROUP_DESCS'] = $data['groups']['group_descs']; $_SESSION["SESS_PRIVILEGE_HASH"] = md5($_SESSION["SESS_PRIVILEGE_ID"] . $_SESSION["SESS_PRIVILEGE_NAME"]); $_SESSION['SESS_USER_NAME'] = $data['name']; $_SESSION['SESS_USER_EMAIL'] = $data['email']; $_SESSION['SESS_USER_CELL'] = $data['mobile']; $_SESSION['SESS_USER_COUNTRY'] = $data['country']; $_SESSION['SESS_USER_AVATAR'] = $data['avatar_type'] . "::" . $data['avatar']; $_SESSION['SESS_LOGIN_SITE'] = $domain; $_SESSION['SESS_ACTIVE_SITE'] = $domain; $_SESSION['SESS_TOKEN'] = session_id(); $_SESSION['SESS_SITEID'] = SiteID; $_SESSION['SESS_LOGIN_TIME'] = time(); $_SESSION['MAUTH_KEY'] = generateMAuthKey(); if ($data['privilegeid'] <= 1) { $_SESSION["SESS_FS_FOLDER"] = ROOT; $_SESSION["SESS_FS_URL"] = SiteLocation; } else { $_SESSION["SESS_FS_FOLDER"] = ROOT . APPS_FOLDER . $domain . "/"; $_SESSION["SESS_FS_URL"] = SiteLocation . APPS_FOLDER . $domain . "/"; } if (strlen($_SESSION['SESS_USER_NAME']) <= 0) { $_SESSION['SESS_USER_NAME'] = $_SESSION['SESS_USER_ID']; } LogiksSession::getInstance(true); header_remove("SESSION-KEY"); header("SESSION-KEY:" . $_SESSION['SESS_TOKEN'], false); header("SESSION-MAUTH:" . $_SESSION['MAUTH_KEY'], false); setcookie("LOGIN", "true", time() + 36000); setcookie("USER", $_SESSION['SESS_USER_ID'], time() + 36000); setcookie("TOKEN", $_SESSION['SESS_TOKEN'], time() + 36000); setcookie("SITE", $_SESSION['SESS_LOGIN_SITE'], time() + 36000); if ($data['persistant'] || ALLOW_MAUTH && isset($_POST['mauth'])) { _db(true)->_deleteQ(_dbTable("cache_sessions", true), "edited_on< DATE_SUB(NOW(), INTERVAL 10 DAY)")->_where(["guid" => $_SESSION['SESS_GUID'], "userid" => $_SESSION['SESS_USER_ID'], "site" => $domain])->_run(); _db(true)->_insertQ1(_dbTable("cache_sessions", true), ["guid" => $_SESSION['SESS_GUID'], "userid" => $_SESSION['SESS_USER_ID'], "site" => $domain, "device" => $_ENV['AUTH-DATA']['device'], "session_key" => $_SESSION['SESS_TOKEN'], "auth_key" => $_SESSION['MAUTH_KEY'], "session_data" => json_encode($_SESSION), "global_data" => json_encode($GLOBALS), "client_ip" => $_SERVER['REMOTE_ADDR'], "creator" => $_SESSION['SESS_USER_ID']])->_run(); } }
function _js($js, $themeName = null, $browser = "") { if (!is_array($js)) { $js = explode(",", $js); } $html = "\n\n"; foreach ($js as $jsLnk) { if (strlen($jsLnk) <= 0) { continue; } //$lx=_jsLink($jsLnk, $themeName); $lx = LogiksSession::getInstance()->htmlAssets()->getAssetURL($jsLnk, 'js'); if (strlen($lx) <= 0) { continue; } if ($browser != null && strlen($browser) > 0) { $html .= "<!--[if {$browser}]>\n"; $html .= "<script src='{$lx}' type='text/javascript' language='javascript'></script>\n"; $html .= "<![endif]-->\n"; } else { $html .= "<script src='{$lx}' type='text/javascript' language='javascript'></script>\n"; } } return $html; }