📄 settings.inc.php
字号:
if($do == 'seccode' || isset($settingsnew['seccodestatus'])) {
$settingsnew['seccodestatus'] = bindec(intval($settingsnew['seccodestatus'][5]).intval($settingsnew['seccodestatus'][4]).intval($settingsnew['seccodestatus'][3]).intval($settingsnew['seccodestatus'][2]).intval($settingsnew['seccodestatus'][1]));
}
if($do == 'secqaa') {
if(is_array($delete)) {
$db->query("DELETE FROM {$tablepre}itempool WHERE id IN (".implodeids($delete).")");
}
if(is_array($question)) {
foreach($question AS $key => $q) {
$q = trim($q);
$a = cutstr(dhtmlspecialchars(trim($answer[$key])), 50);
if($q && $a) {
$db->query("UPDATE {$tablepre}itempool SET question='$q', answer='$a' WHERE id='$key'");
}
}
}
if(is_array($newquestion) && is_array($newanswer)) {
foreach($newquestion AS $key => $q) {
$q = trim($q);
$a = cutstr(dhtmlspecialchars(trim($newanswer[$key])), 50);
if($q && $a) {
$db->query("INSERT INTO {$tablepre}itempool (question, answer) VALUES ('$q', '$a')");
}
}
}
updatecache('secqaa');
$settingsnew['secqaa']['status'] = bindec(intval($settingsnew['secqaa']['status'][1]).intval($settingsnew['secqaa']['status'][2]).intval($settingsnew['secqaa']['status'][3]));
$lackofqaa = 0;
if($settingsnew['secqaa']['status']) {
$query = $db->query("SELECT COUNT(*) FROM {$tablepre}itempool");
if($db->result($query, 0) < 10) {
$settingsnew['secqaa']['status'] = 0;
$lackofqaa = 1;
}
}
$settingsnew['secqaa'] = serialize($settingsnew['secqaa']);
}
if(isset($settingsnew['visitbanperiods']) && isset($settingsnew['postbanperiods']) && isset($settingsnew['postmodperiods']) && isset($settingsnew['searchbanperiods'])) {
foreach(array('visitbanperiods', 'postbanperiods', 'postmodperiods', 'searchbanperiods') as $periods) {
$periodarray = array();
foreach(explode("\n", $settingsnew[$periods]) as $period) {
if(preg_match("/^\d{1,2}\:\d{2}\-\d{1,2}\:\d{2}$/", $period = trim($period))) {
$periodarray[] = $period;
}
}
$settingsnew[$periods] = implode("\r\n", $periodarray);
}
}
if(isset($settingsnew['timeformat'])) {
$settingsnew['timeformat'] = $settingsnew['timeformat'] == '24' ? 'H:i' : 'h:i A';
}
if(isset($settingsnew['dateformat'])) {
$settingsnew['dateformat'] = str_replace('mm', 'n', $settingsnew['dateformat']);
$settingsnew['dateformat'] = str_replace('dd', 'j', $settingsnew['dateformat']);
$settingsnew['dateformat'] = str_replace('yyyy', 'Y', $settingsnew['dateformat']);
$settingsnew['dateformat'] = str_replace('yy', 'y', $settingsnew['dateformat']);
}
if($isfounder && isset($settingsnew['ftp'])) {
if(!empty($settingsnew['ftp']['password'])) {
$pwlen = strlen($settingsnew['ftp']['password']);
if($pwlen < 3) {
cpmsg('ftp_password_short');
}
if($settingsnew['ftp']['password']{0} == $settings['ftp']['password']{0} && $settingsnew['ftp']['password']{$pwlen - 1} == $settings['ftp']['password']{strlen($settings['ftp']['password']) - 1} && substr($settingsnew['ftp']['password'], 1, $pwlen - 2) == '********') {
$settingsnew['ftp']['password'] = $settings['ftp']['password'];
}
$settingsnew['ftp']['password'] = authcode($settingsnew['ftp']['password'], 'ENCODE', md5($authkey));
}
$settingsnew['ftp'] = serialize($settingsnew['ftp']);
} else {
$settings['ftp']['password'] = authcode($settings['ftp']['password'], 'ENCODE', md5($authkey));
$settingsnew['ftp'] = serialize($settings['ftp']);
}
if(isset($settingsnew['jsrefdomains'])) {
$settingsnew['jsrefdomains'] = trim(preg_replace("/(\s*(\r\n|\n\r|\n|\r)\s*)/", "\r\n", $settingsnew['jsrefdomains']));
}
if(isset($settingsnew['jsdateformat'])) {
$settingsnew['jsdateformat'] = str_replace('mm', 'n', $settingsnew['jsdateformat']);
$settingsnew['jsdateformat'] = str_replace('dd', 'j', $settingsnew['jsdateformat']);
$settingsnew['jsdateformat'] = str_replace('yyyy', 'Y', $settingsnew['jsdateformat']);
$settingsnew['jsdateformat'] = str_replace('yy', 'y', $settingsnew['jsdateformat']);
}
if(isset($settingsnew['wapdateformat'])) {
$settingsnew['wapdateformat'] = str_replace('mm', 'n', $settingsnew['wapdateformat']);
$settingsnew['wapdateformat'] = str_replace('dd', 'j', $settingsnew['wapdateformat']);
$settingsnew['wapdateformat'] = str_replace('yyyy', 'Y', $settingsnew['wapdateformat']);
$settingsnew['wapdateformat'] = str_replace('yy', 'y', $settingsnew['wapdateformat']);
}
if(isset($settingsnew['cachethreaddir']) && isset($settingsnew['threadcaches'])) {
if($settingsnew['cachethreaddir'] && !is_writable(DISCUZ_ROOT.'./'.$settingsnew['cachethreaddir'])) {
cpmsg('cachethread_dir_noexists');
}
if(!empty($fids)) {
$sqladd = in_array('all', $fids) ? '' : " WHERE fid IN ('".implode("', '", $fids)."')";
$db->query("UPDATE {$tablepre}forums SET threadcaches='$settingsnew[threadcaches]'$sqladd");
}
}
if(isset($settingsnew['msgforward'])) {
if(!empty($settingsnew['msgforward']['messages'])) {
$tempmsg = explode("\n", $settingsnew['msgforward']['messages']);
$settingsnew['msgforward']['messages'] = array();
foreach ($tempmsg as $msg) {
if($msg = strip_tags(trim($msg))) {
$settingsnew['msgforward']['messages'][] = $msg;
}
}
} else {
$settingsnew['msgforward']['messages'] = array();
}
$tmparray = array(
'refreshtime' => intval($settingsnew['msgforward']['refreshtime']),
'quick' => $settingsnew['msgforward']['quick'] ? 1 : 0,
'messages' => $settingsnew['msgforward']['messages']
);
$settingsnew['msgforward'] = addslashes(serialize($tmparray));
}
foreach($settingsnew as $key => $val) {
if(isset($settings[$key]) && $settings[$key] != $val) {
$$key = $val;
if(in_array($key, array('newbiespan', 'topicperpage', 'postperpage', 'memberperpage', 'hottopic', 'starthreshold', 'delayviewcount',
'visitedforums', 'maxsigrows', 'timeoffset', 'statscachelife', 'pvfrequence', 'oltimespan', 'seccodestatus',
'maxprice', 'rssttl', 'rewritestatus', 'bdaystatus', 'maxonlines', 'loadctrl', 'floodctrl', 'regctrl', 'regfloodctrl',
'searchctrl', 'extcredits1', 'extcredits2', 'extcredits3', 'extcredits4', 'extcredits5', 'extcredits6',
'extcredits7', 'extcredits8', 'transfermincredits', 'exchangemincredits', 'maxincperthread', 'maxchargespan',
'maxspm', 'maxsearchresults', 'maxsmilies', 'threadmaxpages', 'membermaxpages', 'maxpostsize', 'minpostsize', 'maxavatarsize',
'maxavatarpixel', 'maxpolloptions', 'karmaratelimit', 'losslessdel', 'edittimelimit', 'smcols',
'watermarktrans', 'watermarkquality', 'jscachelife', 'waptpp', 'wapppp', 'wapmps', 'maxmodworksmonths', 'frameon', 'maxonlinelist'))) {
$val = (float)$val;
}
if($key == 'forumlinkstatus') {
updatecache('forumlinks');
}
if($key == 'userstatusby') {
updatecache('usergroups');
}
if(($key == 'smthumb' && $val != $settings['smthumb']) || ($key == 'smcols' && $val != $settings['smcols']) || ($key == 'smrows' && $val != $settings['smrows'])) {
updatecache(array('smilies_display', 'smiliestable'));
}
$db->query("REPLACE INTO {$tablepre}settings (variable, value)
VALUES ('$key', '$val')");
}
}
updatecache('settings');
if($do == 'credits' && $projectsave) {
$projectid = intval($projectid);
dheader("Location: {$boardurl}admincp.php?action=projectadd&type=extcredit&projectid=$projectid");
}
$do == 'secqaa' && $lackofqaa ? cpmsg('secqaa_invalid', 'admincp.php?action=settings&do=secqaa') : cpmsg('settings_update_succeed');
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -