コード例 #1
0
ファイル: ver.core.app.php プロジェクト: jechiy/PHPWind
 function getAppOutPut()
 {
     $data = array();
     $sign = ACloud_Sys_Core_Common::getSiteSign();
     $data['src'] = SCR;
     $data['url'] = ACloud_Sys_Core_Common::getGlobal('g_siteurl', $_SERVER['SERVER_NAME']);
     $data['sn'] = ACloud_Sys_Core_Common::getSiteUnique();
     $data['fid'] = ACloud_Sys_Core_Common::getGlobal('fid', 0);
     $data['uid'] = ACloud_Sys_Core_Common::getGlobal('winduid', 0);
     $data['tid'] = ACloud_Sys_Core_Common::getGlobal('tid', 0);
     $data[$sign] = ACloud_Ver_Core_App::getSyncData($sign);
     $data['charset'] = ACloud_Sys_Core_Common::getGlobal('g_charset', 'gbk');
     $data['username'] = ACloud_Sys_Core_Common::getGlobal('windid', 0);
     $data['title'] = ACloud_Sys_Core_Common::getGlobal('subject', '');
     $data['_ua'] = ACloud_Sys_Core_Common::getSiteUserAgent();
     $data['_shr'] = base64_encode(isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '');
     $data['_sqs'] = base64_encode(isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : '');
     $data['_ssn'] = base64_encode(isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : '');
     $data['_t'] = ACloud_Sys_Core_Common::getGlobal('timestamp') + 86400;
     $data['_v'] = rand(1000, 9999);
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     $url = sprintf("http://%s/?%s", ACLOUD_HOST_APP, ACloud_Sys_Core_Http::httpBuildQuery($data));
     $output = "<script type=\"text/javascript\">(function(d,t){var url=\"{$url}\";var g=d.createElement(t);g.async=1;g.src=url;d.body.insertBefore(g,d.body.firstChild);}(document,\"script\"));</script>";
     return $output;
 }
コード例 #2
0
 function aseControl($data)
 {
     if (!is_array($data) || !isset($data['ciphertext']) || !$data['ciphertext']) {
         return false;
     }
     $keysService = ACloud_Sys_Core_Common::loadSystemClass('keys', 'config.service');
     $keys = $keysService->getKey123(1);
     if (!$keys || strlen($keys['key1']) != 128 || strlen($keys['key2']) != 128 || strlen($keys['key3']) != 128) {
         return false;
     }
     require_once ACLOUD_PATH . '/system/core/sys.core.aes.php';
     $aesService = new ACloud_Sys_Core_Aes();
     $key = $aesService->encrypt($keys['key3'], $keys['key2'], 256);
     if (!$key) {
         return false;
     }
     $plaintext = $aesService->strcode($data['ciphertext'], $key, 'DECODE');
     if (!$plaintext) {
         return false;
     }
     $params = ACloud_Sys_Core_Http::splitHttpQuery($plaintext);
     if (!is_array($params)) {
         return false;
     }
     $tmp = ACloud_Sys_Core_Common::arrayIntersectAssoc($params, $data);
     if (is_array($tmp) && count($tmp) > 0 && count($tmp) == count($params) && $tmp['securecode'] === $data['securecode']) {
         return true;
     }
     return false;
 }
コード例 #3
0
ファイル: sys.core.http.php プロジェクト: jechiy/PHPWind
 function sendPost($data)
 {
     require_once ACLOUD_PATH . '/system/core/sys.core.httpclient.php';
     $data = ACloud_Sys_Core_Http::httpBuildQuery($data);
     $result = ACloud_Sys_Core_HttpClient::post(ACloud_Sys_Core_Http::getCloudApi(), $data);
     return ACloud_Sys_Core_Common::jsonDecode($result);
 }
コード例 #4
0
ファイル: sys.core.oauth.php プロジェクト: jechiy/PHPWind
 function createHttpQuery($params)
 {
     if (!$params || !is_array($params)) {
         return '';
     }
     ksort($params);
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     return ACloud_Sys_Core_Http::httpBuildQuery($params);
 }
コード例 #5
0
 function getSearchData($params = array())
 {
     list($keyword, $type, $fid, $username) = ACloud_Sys_Core_S::gp(array("keyword", "type", "fid", "username"));
     $data = array();
     $data['k'] = $keyword;
     $data['type'] = $type;
     $data['fid'] = intval($fid);
     $data['username'] = $username;
     $data['charset'] = ACloud_Sys_Core_Common::getGlobal('g_charset', 'gbk');
     $data['url'] = ACloud_Sys_Core_Common::getGlobal('g_siteurl', $_SERVER['SERVER_NAME']);
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     return ACloud_Sys_Core_Http::httpBuildQuery(array_merge($data, $params));
 }
コード例 #6
0
 function verified($data)
 {
     $keysService = $this->getKeysService();
     $key6 = $keysService->getKey6(2);
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     $result = ACloud_Sys_Core_Http::sendPost($this->buildPostParams('apply.verified', $key6, $data));
     if (!is_object($result) || $result->code != 100) {
         return array(false, $result->msg);
     }
     $extrasService = ACloud_Sys_Core_Common::loadSystemClass('extras', 'config.service');
     $extrasService->setExtra('ac_isopen', 1);
     $extrasService->setExtra('ac_apply_step', 9);
     return array(true, $result->msg);
 }
コード例 #7
0
 function identifyKey($data)
 {
     $result = ACloud_Sys_Core_Http::sendPost($this->buildPostParams('start.identifykey', $data));
     if (!is_object($result) || $result->code != ACLOUD_HTTP_OK || $result->info->verifycode !== $data['verifycode']) {
         return array(false, 'responce is error');
     }
     $info = array('sign' => $result->info->sign, 'verifycode' => $result->info->verifycode, 'rand' => $result->info->rand, 'identifytime' => $result->info->identifytime, 'footprint' => $result->info->footprint, 'step' => $result->info->step, 'verify' => $result->info->verify);
     $keysService = ACloud_Sys_Core_Common::loadSystemClass('keys', 'config.service');
     $key6 = $keysService->getKey6(2);
     if (!$key6 || strlen($key6) != 128) {
         return array(false, 'key is invalided');
     }
     if (ACloud_Sys_Core_Verify::verifyWithOAuth($info, $key6)) {
         return array(true, 'identify key success');
     }
     return array(false, 'identify key fail');
 }
コード例 #8
0
 function getNetWorkInterflow()
 {
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     $result = ACloud_Sys_Core_Http::sendPost($this->buildPostParams('env.interflow', array()));
     return is_object($result) && $result->code == 100 ? true : false;
 }
コード例 #9
0
 function getLink()
 {
     $params = $this->buildPostParams();
     require_once ACLOUD_PATH . '/system/core/sys.core.verify.php';
     $params['accesssign'] = ACloud_Sys_Core_Verify::createSignWithOAuth($params);
     require_once ACLOUD_PATH . '/system/core/sys.core.http.php';
     return sprintf("http://%s/index.php?%s", ACLOUD_HOST_API, ACloud_Sys_Core_Http::httpBuildQuery($params));
 }