コード例 #1
0
ファイル: sync.class.php プロジェクト: gorgee/baigoADS
 function sync_get($chk_token = false)
 {
     $_arr_time = validateStr(fn_get("time"), 1, 0);
     switch ($_arr_time["status"]) {
         case "too_short":
             return array("alert" => "x090201");
             exit;
             break;
         case "ok":
             $_tm_time = $_arr_time["str"];
             break;
     }
     $_arr_random = validateStr(fn_get("random"), 1, 0);
     switch ($_arr_random["status"]) {
         case "too_short":
             return array("alert" => "x090202");
             exit;
             break;
         case "ok":
             $_str_rand = $_arr_random["str"];
             break;
     }
     $_arr_signature = validateStr(fn_get("signature"), 1, 0);
     switch ($_arr_signature["status"]) {
         case "too_short":
             return array("alert" => "x090203");
             exit;
             break;
         case "ok":
             $_str_sign = $_arr_signature["str"];
             break;
     }
     if (!fn_baigoSignChk($_tm_time, $_str_rand, $_str_sign)) {
         $_arr_return = array("alert" => "x050403");
         return $_arr_return;
         exit;
     }
     $_arr_code = validateStr(fn_get("code"), 1, 0);
     switch ($_arr_code["status"]) {
         case "too_short":
             return array("alert" => "x080202");
             exit;
             break;
         case "ok":
             $_str_code = $_arr_code["str"];
             break;
     }
     $_arr_key = validateStr(fn_get("key"), 1, 0);
     switch ($_arr_key["status"]) {
         case "too_short":
             return array("alert" => "x080203");
             exit;
             break;
         case "ok":
             $_str_key = $_arr_key["str"];
             break;
     }
     $_arr_result = $this->sync_decode($_str_code, $_str_key);
     if (!isset($_arr_result["app_id"])) {
         return array("alert" => "x050203");
         exit;
     }
     $_arr_appId = validateStr($_arr_result["app_id"], 1, 0, "str", "int");
     switch ($_arr_appId["status"]) {
         case "too_short":
             return array("alert" => "x050203");
             exit;
             break;
         case "format_err":
             return array("alert" => "x050204");
             exit;
             break;
         case "ok":
             $_arr_syncGet["app_id"] = $_arr_appId["str"];
             break;
     }
     if (!isset($_arr_result["app_key"])) {
         return array("alert" => "x050214");
         exit;
     }
     $_arr_appKey = validateStr($_arr_result["app_key"], 1, 64, "str", "alphabetDigit");
     switch ($_arr_appKey["status"]) {
         case "too_short":
             return array("alert" => "x050214");
             exit;
             break;
         case "too_long":
             return array("alert" => "x050215");
             exit;
             break;
         case "format_err":
             return array("alert" => "x050216");
             exit;
             break;
         case "ok":
             $_arr_syncGet["app_key"] = $_arr_appKey["str"];
             break;
     }
     $_arr_syncGet["user_id"] = $_arr_result["user_id"];
     $_arr_syncGet["alert"] = "ok";
     return $_arr_syncGet;
 }
コード例 #2
0
 /**
  * api_verify function.
  *
  * @access public
  * @return void
  */
 function api_verify()
 {
     $this->app_check("get");
     if (!isset($this->appAllow["signature"]["verify"])) {
         $_arr_return = array("alert" => "x050313");
         $this->log_do($_arr_return, "verify");
         $this->obj_api->halt_re($_arr_return);
     }
     $_arr_time = validateStr(fn_get("time"), 1, 0);
     switch ($_arr_time["status"]) {
         case "too_short":
             $_arr_return = array("alert" => "x090201");
             $this->obj_api->halt_re($_arr_return);
             break;
         case "ok":
             $_tm_time = $_arr_time["str"];
             break;
     }
     $_arr_random = validateStr(fn_get("random"), 1, 0);
     switch ($_arr_random["status"]) {
         case "too_short":
             $_arr_return = array("alert" => "x090202");
             $this->obj_api->halt_re($_arr_return);
             break;
         case "ok":
             $_str_rand = $_arr_random["str"];
             break;
     }
     $_arr_signature = validateStr(fn_get("signature"), 1, 0);
     switch ($_arr_signature["status"]) {
         case "too_short":
             $_arr_return = array("alert" => "x090203");
             $this->obj_api->halt_re($_arr_return);
             break;
         case "ok":
             $_str_sign = $_arr_signature["str"];
             break;
     }
     if (fn_baigoSignChk($_tm_time, $_str_rand, $_str_sign)) {
         $_str_alert = "y050403";
     } else {
         $_str_alert = "x050403";
     }
     $_arr_return = array("alert" => $_str_alert);
     $this->obj_api->halt_re($_arr_return);
 }