s = ".date("H:i:s",time())."\r\n",FILE_APPEND); if($user["timeout"] < time()) { return self::r("01","","Süresi dolmuş token!","login",false); } self::$user = $user; $settings = self::getsettings(); $pages = explode("/",$p["page"]); $pages = $pages[0]; if(!class_exists($pages)) { return self::r("01","","Bu modül henüz kullanıma açılmadı");} self::log(); return $pages::$pages(); } } } public static function r($s,$r,$e,$rr="",$rt = true){ if($rt) { return jencode(array("status" => $s,"response" => array_merge((empty($r) ? array("") : $r),array("hash" => self::refreshtoken())),"error" => $e,"redirect" => $rr )); }else { return jencode(array("status" => $s,"response" => $r,"error" => $e,"redirect" => $rr )); } } public static function log(){ global $db; return; $post = self::$post; $user = self::$user; $db->query("insert into log (user,date,request) VALUES ('".$user["userid"]."',".time().",'".jencode($post)."') "); } public static function refreshtoken(){ $user = self::$user; $user["timeout"] = time()+(self::$tokentimeout); return array("TOKEN" => self::settoken(jencode($user)),"TIMEOUT" => $user["timeout"]); } public static function tokenparam(){ return array(self::$tokenkey,self::$tokenpass,"aes-128-cbc"); } public static function settoken($s){ list ($pass, $iv, $method)=self::tokenparam(); return (openssl_encrypt(($s), $method, $pass, false, $iv)); } public static function gettoken($s){ list ($pass, $iv, $method)=self::tokenparam(); return ((openssl_decrypt(($s), $method, $pass, false, $iv))); } public static function root(){ return explode("/",self::$post["page"]); } public static function getsettings(){ global $settings; global $db; $user = self::$user; if(!empty(self::$settings)) {return self::$settings;} $header = apache_request_headers(); if(isset($header["HTTP_OBS_REF"]) || isset($user["client"])) { // clientı bulalım. if(isset($header["HTTP_OBS_REF"])) { $s = $db->query("select * from client where url='".$header["HTTP_OBS_REF"]."' ")->fetch(); }else { $s = $db->query("select * from client where Id='".$user["client"]."' ")->fetch(); } include_once("client/".$s["path"]."/global.config.php"); $settings["CLIENTPATH"] = $s["url"]."client/".$s["path"]."/"; $settings["CMODULE"] = $s["module"]; $settings["URL"] = $s["url"]; } self::$settings = $settings; return $settings; } public static function authority($a){ $user = self::$user; return $a == $user["usergrup"] ? true : false; } function __destruct() { return; } } ?>