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; }
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; }
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); }
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); }
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)); }
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); }
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'); }
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; }
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)); }