function generateSiteSignUrl($params = array(), $isEncode = true, $isCamelCase = false) { global $_G; $ts = TIMESTAMP; $sId = $_G['setting']['my_siteid']; $sKey = $_G['setting']['my_sitekey']; $uid = $_G['uid']; if (!is_array($params)) { $params = array(); } unset($params['sig'], $params['ts']); if ($isCamelCase) { $params['sId'] = $sId; $params['sSiteUid'] = $uid; } else { $params['s_id'] = $sId; $params['s_site_uid'] = $uid; } ksort($params); $str = buildArrayQuery($params, '', $isEncode); $sig = md5(sprintf('%s|%s|%s', $str, $sKey, $ts)); $params['ts'] = $ts; $params['sig'] = $sig; $url = buildArrayQuery($params, '', $isEncode); return $url; }
function _buildArrayQuery($data, $key = '', $isEncode = false) { require_once libfile('function/cloud'); return buildArrayQuery($data, $key, $isEncode); }
function show() { global $_G; $clientVersion = '2'; include_once DISCUZ_ROOT . '/source/discuz_version.php'; $release = DISCUZ_RELEASE; $fix = defined(DISCUZ_FIXBUG) ? DISCUZ_FIXBUG : ''; $cloudApi = cloud_get_api_version(); include_once libfile('function/admincp'); $isfounder = checkfounder($_G['member']); $sId = $_G['setting']['my_siteid']; $version = $_G['setting']['version']; $adminId = $_G['adminid']; $openId = getOpenId2($_G['uid']); $uid = $_G['uid']; $groupId = $_G['groupid']; $ts = TIMESTAMP; $sig = ''; if ($sId) { $params = array('s_id' => $sId, 'product_version' => $version, 'product_release' => $release, 'fix_bug' => $fix, 'is_founder' => $isfounder, 's_url' => $_G[siteurl], 'admin_id' => $adminId, 'open_id' => $openId, 'uid' => $uid, 'group_id' => $groupId, 'last_send_time' => $_COOKIE['dctips']); ksort($params); $str = buildArrayQuery($params, '', '&'); $sig = md5(sprintf('%s|%s|%s', $str, $_G['setting']['my_sitekey'], $ts)); } $jsCode = <<<EOF \t\t<div id="discuz_tips" style="display:none;"></div> \t\t<script type="text/javascript"> \t\t\tvar discuzSId = '{$sId}'; \t\t\tvar discuzVersion = '{$version}'; \t\t\tvar discuzRelease = '{$release}'; \t\t\tvar discuzApi = '{$cloudApi}'; \t\t\tvar discuzIsFounder = '{$isfounder}'; \t\t\tvar discuzFixbug = '{$fix}'; \t\t\tvar discuzAdminId = '{$adminId}'; \t\t\tvar discuzOpenId = '{$openId}'; \t\t\tvar discuzUid = '{$uid}'; \t\t\tvar discuzGroupId = '{$groupId}'; \t\t\tvar ts = '{$ts}'; \t\t\tvar sig = '{$sig}'; \t\t\tvar discuzTipsCVersion = '{$clientVersion}'; \t\t</script> \t\t<script src="http://discuz.gtimg.cn/cloud/scripts/discuz_tips.js?v=1" type="text/javascript" charset="UTF-8"></script> EOF; echo $jsCode; }