cache.func.php
来自「Discuz_7.0.0 是一款社区程序源码!! 国内80 的站长使用此程序」· PHP 代码 · 共 1,459 行 · 第 1/5 页
PHP
1,459 行
$data['watermarktext']['text'] = $c->Convert($data['watermarktext']['text']);
}
$data['watermarktext']['text'] = bin2hex($data['watermarktext']['text']);
$data['watermarktext']['fontpath'] = 'images/fonts/'.$data['watermarktext']['fontpath'];
$data['watermarktext']['color'] = preg_replace('/#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/e', "hexdec('\\1').','.hexdec('\\2').','.hexdec('\\3')", $data['watermarktext']['color']);
$data['watermarktext']['shadowcolor'] = preg_replace('/#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/e', "hexdec('\\1').','.hexdec('\\2').','.hexdec('\\3')", $data['watermarktext']['shadowcolor']);
} else {
$data['watermarktext'] = array();
}
$tradetypes = implodeids(unserialize($data['tradetypes']));
$data['tradetypes'] = array();
if($tradetypes) {
$query = $db->query("SELECT typeid, name FROM {$tablepre}threadtypes WHERE typeid in ($tradetypes)");
while($type = $db->fetch_array($query)) {
$data['tradetypes'][$type['typeid']] = $type['name'];
}
}
$data['styles'] = array();
$query = $db->query("SELECT styleid, name FROM {$tablepre}styles WHERE available='1'");
while($style = $db->fetch_array($query)) {
$data['styles'][$style['styleid']] = dhtmlspecialchars($style['name']);
}
$data['stylejumpstatus'] = $data['stylejump'] && count($data['styles']) > 1;
$globaladvs = advertisement('all');
$data['globaladvs'] = $globaladvs['all'] ? $globaladvs['all'] : array();
$data['redirectadvs'] = $globaladvs['redirect'] ? $globaladvs['redirect'] : array();
$data['invitecredit'] = '';
if($data['inviteconfig'] = unserialize($data['inviteconfig'])) {
$data['invitecredit'] = $data['inviteconfig']['invitecredit'];
}
unset($data['inviteconfig']);
$data['videoopen'] = $data['videotype'] = $data['vsiteid'] = $data['vkey'] = $data['vsiteurl'] = '';
if($data['videoinfo'] = unserialize($data['videoinfo'])) {
$data['videoopen'] = intval($data['videoinfo']['open']);
$data['videotype'] = explode("\n", $data['videoinfo']['vtype']);
$data['vsiteid'] = $data['videoinfo']['siteid'];
$data['vkey'] = $data['videoinfo']['authkey'];
$data['vsiteurl'] = $data['videoinfo']['url'];
}
unset($data['videoinfo']);
$outextcreditsrcs = $outextcredits = array();
foreach((array)$data['outextcredits'] as $value) {
$outextcreditsrcs[$value['creditsrc']] = $value['creditsrc'];
$key = $value['appiddesc'].'|'.$value['creditdesc'];
if(!isset($outextcredits[$key])) {
$outextcredits[$key] = array('title' => $value['title'], 'unit' => $value['unit']);
}
$outextcredits[$key]['ratiosrc'][$value['creditsrc']] = $value['ratiosrc'];
$outextcredits[$key]['ratiodesc'][$value['creditsrc']] = $value['ratiodesc'];
$outextcredits[$key]['creditsrc'][$value['creditsrc']] = $value['ratio'];
}
$data['outextcredits'] = $outextcredits;
$exchcredits = array();
$allowexchangein = $allowexchangeout = FALSE;
foreach((array)$data['extcredits'] as $id => $credit) {
$data['extcredits'][$id]['img'] = $credit['img'] ? '<img style="vertical-align:middle" src="'.$credit['img'].'" />' : '';
if(!empty($credit['ratio'])) {
$exchcredits[$id] = $credit;
$credit['allowexchangein'] && $allowexchangein = TRUE;
$credit['allowexchangeout'] && $allowexchangeout = TRUE;
}
$data['creditnotice'] && $data['creditnames'][] = str_replace("'", "\'", htmlspecialchars($id.'|'.$credit['title'].'|'.$credit['unit']));
}
$data['creditnames'] = $data['creditnotice'] ? implode(',', $data['creditnames']) : '';
$creditstranssi = explode(',', $data['creditstrans']);
$data['creditstrans'] = $creditstranssi[0];
unset($creditstranssi[0]);
$data['creditstransextra'] = $creditstranssi;
for($i = 1;$i < 5;$i++) {
$data['creditstransextra'][$i] = !$data['creditstransextra'][$i] ? $data['creditstrans'] : $data['creditstransextra'][$i];
}
$data['exchangestatus'] = $allowexchangein && $allowexchangeout;
$data['transferstatus'] = isset($data['extcredits'][$data['creditstrans']]);
list($data['zoomstatus']) = explode("\t", $data['zoomstatus']);
if($data['insenz']['status'] && $data['insenz']['authkey']) {
$insenz = $data['insenz'];
$softadstatus = intval($insenz['softadstatus']);
$hardadstatus = is_array($insenz['hardadstatus']) && $insenz['jsurl'] ? implode(',', $insenz['hardadstatus']) : '';
$relatedadstatus = intval($insenz['relatedadstatus']);
$insenz_cronnextrun = intval($db->result_first("SELECT nextrun FROM {$tablepre}campaigns ORDER BY nextrun LIMIT 1"));
if(!$softadstatus && !$hardadstatus && !$relatedadstatus && !$insenz['virtualforumstatus'] && !$insenz_cronnextrun) {
$data['insenz']['status'] = $data['insenz']['cronnextrun'] = 0;
$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('insenz', '".addslashes(serialize($insenz))."')");
$data['insenz'] = array();
} else {
$vfstatus = 0;
if($insenz['virtualforumstatus']) {
$vfstatus = $db->result_first("SELECT COUNT(*) FROM {$tablepre}virtualforums WHERE status=1 AND type='forum'");
}
$data['insenz'] = array(
'siteid' => $insenz['siteid'],
'uid' => intval($insenz['uid']),
'username' => addslashes($insenz['username']),
'hardadstatus' => $hardadstatus,
'vfstatus' => $vfstatus,
'vfpos' => in_array($insenz['vfpos'], array('first', 'rand', 'last')) ? $insenz['vfpos'] : 'first',
'topicrelatedad' => $relatedadstatus && $insenz['topicrelatedad'] ? $insenz['topicrelatedad'] : '',
'traderelatedad' => $relatedadstatus && $insenz['traderelatedad'] ? $insenz['traderelatedad'] : '',
'relatedtrades' => $relatedadstatus && $insenz['traderelatedad'] && $insenz['relatedtrades'] ? $insenz['relatedtrades'] : '',
'cronnextrun' => $insenz_cronnextrun,
'statsnextrun' => intval($insenz['statsnextrun']),
'jsurl' => $insenz['jsurl'],
'hash' => $insenz['hash']
);
}
} else {
$data['insenz'] = array();
}
$data['msn']['on'] = $data['msn']['on'] && $data['msn']['domain'] ? 1 : 0;
$data['msn']['domain'] = $data['msn']['on'] ? $data['msn']['domain'] : 'discuz.org';
if($data['qihoo']['status']) {
$qihoo = $data['qihoo'];
$data['qihoo']['links'] = $data['qihoo']['relate'] = array();
foreach(explode("\n", trim($qihoo['keywords'])) AS $keyword) {
if($keyword = trim($keyword)) {
$data['qihoo']['links']['keywords'][] = '<a href="search.php?srchtype=qihoo&srchtxt='.rawurlencode($keyword).'&searchsubmit=yes" target="_blank">'.dhtmlspecialchars(trim($keyword)).'</a>';
}
}
foreach((array)$qihoo['topics'] AS $topic) {
if($topic['topic'] = trim($topic['topic'])) {
$data['qihoo']['links']['topics'][] = '<a href="topic.php?topic='.rawurlencode($topic['topic']).'&keyword='.rawurlencode($topic['keyword']).'&stype='.$topic['stype'].'&length='.$topic['length'].'&relate='.$topic['relate'].'" target="_blank">'.dhtmlspecialchars(trim($topic['topic'])).'</a>';
}
}
if(is_array($qihoo['relatedthreads'])) {
if($data['qihoo']['relate']['bbsnum'] = intval($qihoo['relatedthreads']['bbsnum'])) {
$data['qihoo']['relate']['position'] = intval($qihoo['relatedthreads']['position']);
$data['qihoo']['relate']['validity'] = intval($qihoo['relatedthreads']['validity']);
if($data['qihoo']['relate']['webnum'] = intval($qihoo['relatedthreads']['webnum'])) {
$data['qihoo']['relate']['banurl'] = $qihoo['relatedthreads']['banurl'] ? '/('.str_replace("\r\n", '|', $qihoo['relatedthreads']['banurl']).')/i' : '';
$data['qihoo']['relate']['type'] = implode('|', (array)$qihoo['relatedthreads']['type']);
$data['qihoo']['relate']['order'] = intval($qihoo['relatedthreads']['order']);
}
} else {
$data['qihoo']['relate'] = array();
}
}
unset($qihoo, $data['qihoo']['keywords'], $data['qihoo']['topics'], $data['qihoo']['relatedthreads']);
} else {
$data['qihoo'] = array();
}
$data['plugins'] = $data['pluginlinks'] = array();
$query = $db->query("SELECT available, name, identifier, directory, datatables, modules FROM {$tablepre}plugins");
while($plugin = $db->fetch_array($query)) {
$plugin['modules'] = unserialize($plugin['modules']);
if(is_array($plugin['modules'])) {
foreach($plugin['modules'] as $module) {
if($plugin['available'] && isset($module['name'])) {
switch($module['type']) {
case 1:
$data['plugins']['links'][] = array('displayorder' => $module['displayorder'], 'adminid' => $module['adminid'], 'url' => "<a href=\"$module[url]\">$module[menu]</a>");
break;
case 2:
$data['plugins']['links'][] = array('displayorder' => $module['displayorder'], 'adminid' => $module['adminid'], 'url' => "<a href=\"plugin.php?identifier=$plugin[identifier]&module=$module[name]\">$module[menu]</a>");
$data['pluginlinks'][$plugin['identifier']][$module['name']] = array('adminid' => $module['adminid'], 'directory' => $plugin['directory']);
break;
case 4:
$data['plugins']['include'][] = array('displayorder' => $module['displayorder'], 'adminid' => $module['adminid'], 'script' => $plugin['directory'].$module['name']);
break;
case 5:
$data['plugins']['jsmenu'][] = array('displayorder' => $module['displayorder'], 'adminid' => $module['adminid'], 'url' => "<a href=\"$module[url]\">$module[menu]</a>");
break;
case 6:
$data['plugins']['jsmenu'][] = array('displayorder' => $module['displayorder'], 'adminid' => $module['adminid'], 'url' => "<a href=\"plugin.php?identifier=$plugin[identifier]&module=$module[name]\">$module[menu]</a>");
$data['pluginlinks'][$plugin['identifier']][$module['name']] = array('adminid' => $module['adminid'], 'directory' => $plugin['directory']);
break;
}
}
}
}
}
$data['tradeopen'] = $db->result_first("SELECT count(*) FROM {$tablepre}usergroups WHERE allowposttrade='1'") ? 1 : 0;
if(is_array($data['plugins']['links'])) {
usort($data['plugins']['links'], 'pluginmodulecmp');
foreach($data['plugins']['links'] as $key => $module) {
unset($data['plugins']['links'][$key]['displayorder']);
}
}
if(is_array($data['plugins']['include'])) {
usort($data['plugins']['include'], 'pluginmodulecmp');
foreach($data['plugins']['include'] as $key => $module) {
unset($data['plugins']['include'][$key]['displayorder']);
}
}
if(is_array($data['plugins']['jsmenu'])) {
usort($data['plugins']['jsmenu'], 'pluginmodulecmp');
foreach($data['plugins']['jsmenu'] as $key => $module) {
unset($data['plugins']['jsmenu'][$key]['displayorder']);
}
}
$data['hooks'] = array();
$query = $db->query("SELECT ph.title, ph.code, p.identifier FROM {$tablepre}plugins p
LEFT JOIN {$tablepre}pluginhooks ph ON ph.pluginid=p.pluginid AND ph.available='1'
WHERE p.available='1' ORDER BY p.identifier");
while($hook = $db->fetch_array($query)) {
if($hook['title'] && $hook['code']) {
$data['hooks'][$hook['identifier'].'_'.$hook['title']] = $hook['code'];
}
}
$data['navs'] = $data['subnavs'] = $data['navmns'] = array();
list($mnid) = explode('.', basename($data['indexname']));
$data['navmns'][] = $mnid;$mngsid = 1;
$query = $db->query("SELECT * FROM {$tablepre}navs WHERE available='1' AND parentid='0' ORDER BY displayorder");
while($nav = $db->fetch_array($query)) {
if($nav['type'] == '0' && (($nav['url'] == 'member.php?action=list' && !$data['memliststatus']) || ($nav['url'] == 'tag.php' && !$data['tagstatus']))) {
continue;
}
$nav['style'] = parsehighlight($nav['highlight']);
if($db->result_first("SELECT COUNT(*) FROM {$tablepre}navs WHERE parentid='$nav[id]' AND available='1'")) {
$id = random(6);
$subquery = $db->query("SELECT * FROM {$tablepre}navs WHERE available='1' AND parentid='$nav[id]' ORDER BY displayorder");
$subnavs = "<ul class=\"popupmenu_popup headermenu_popup\" id=\"".$id."_menu\" style=\"display: none\">";
while($subnav = $db->fetch_array($subquery)) {
$subnavs .= "<li><a href=\"$subnav[url]\" hidefocus=\"true\" ".($subnav['title'] ? "title=\"$subnav[title]\" " : '').($subnav['target'] == 1 ? "target=\"_blank\" " : '').parsehighlight($subnav['highlight']).">$subnav[name]</a></li>";
}
$subnavs .= '</ul>';
$data['subnavs'][] = $subnavs;
$data['navs'][$nav['id']]['nav'] = "<li class=\"menu_".$nav['id']."\" id=\"$id\" onmouseover=\"showMenu(this.id)\"><a href=\"$nav[url]\" hidefocus=\"true\" ".($nav['title'] ? "title=\"$nav[title]\" " : '').($nav['target'] == 1 ? "target=\"_blank\" " : '')." class=\"dropmenu\"$nav[style]>$nav[name]</a></li>";
} else {
if($nav['id'] == '3') {
$data['navs'][$nav['id']]['nav'] = !empty($data['plugins']['jsmenu']) ? "<li class=\"menu_3\" id=\"plugin\" onmouseover=\"showMenu(this.id)\"><a href=\"javascript:;\" hidefocus=\"true\" ".($nav['title'] ? "title=\"$nav[title]\" " : '').($nav['target'] == 1 ? "target=\"_blank\" " : '')."class=\"dropmenu\"$nav[style]>$nav[name]</a></li>" : '';
} elseif($nav['id'] == '5') {
$data['navs'][$nav['id']]['nav'] = "<li class=\"menu_5\"><a href=\"misc.php?action=nav\" hidefocus=\"true\" ".($nav['title'] ? "title=\"$nav[title]\" " : '')."onclick=\"floatwin('open_nav', this.href, 600, 410);return false;\"$nav[style]>$nav[name]</a></li>";
} else {
if($nav['id'] == '1') {
$nav['url'] = $GLOBALS['indexname'];
}
list($mnid) = explode('.', basename($nav['url']));
$purl = parse_url($nav['url']);
$getvars = array();
if($purl['query']) {
parse_str($purl['query'], $getvars);
$mnidnew = $mnid.'_'.$mngsid;
$data['navmngs'][$mnid][] = array($getvars, $mnidnew);
$mnid = $mnidnew;
$mngsid++;
}
$data['navmns'][] = $mnid;
$data['navs'][$nav['id']]['nav'] = "<li class=\"menu_".$nav['id']."\"><a href=\"$nav[url]\" hidefocus=\"true\" ".($nav['title'] ? "title=\"$nav[title]\" " : '').($nav['target'] == 1 ? "target=\"_blank\" " : '')."id=\"mn_$mnid\"$nav[style]>$nav[name]</a></li>";
}
}
$data['navs'][$nav['id']]['level'] = $nav['level'];
}
require_once DISCUZ_ROOT.'./uc_client/client.php';
$ucapparray = uc_app_ls();
$data['allowsynlogin'] = isset($ucapparray[UC_APPID]['synlogin']) ? $ucapparray[UC_APPID]['synlogin'] : 1;
$appnamearray = array('UCHOME','XSPACE','DISCUZ','SUPESITE','SUPEV','ECSHOP','ECMALL');
$data['ucapp'] = $data['ucappopen'] = array();
$data['uchomeurl'] = '';
$appsynlogins = 0;
foreach($ucapparray as $apparray) {
if($apparray['appid'] != UC_APPID) {
if(!empty($apparray['synlogin'])) {
$appsynlogins = 1;
}
if($data['uc']['navlist'][$apparray['appid']] && $data['uc']['navopen']) {
$data['ucapp'][$apparray['appid']]['name'] = $apparray['name'];
$data['ucapp'][$apparray['appid']]['url'] = $apparray['url'];
}
}
$data['ucapp'][$apparray['appid']]['viewprourl'] = $apparray['url'].$apparray['viewprourl'];
foreach($appnamearray as $name) {
if($apparray['type'] == $name && $apparray['appid'] != UC_APPID) {
$data['ucappopen'][$name] = 1;
if($name == 'UCHOME') {
$data['uchomeurl'] = $apparray['url'];
} elseif($name == 'XSPACE') {
$data['xspaceurl'] = $apparray['url'];
}
}
}
}
$data['allowsynlogin'] = $data['allowsynlogin'] && $appsynlogins ? 1 : 0;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?