📄 misc.inc.php
字号:
} else {
$query = $db->query("SELECT find, admin FROM {$tablepre}words");
while($censor = $db->fetch_array($query)) {
$oldwords[md5($censor['find'])] = $censor['admin'];
}
$db->free_result($query);
}
$censorarray = explode("\n", $addcensors);
$updatecount = $newcount = $ignorecount = 0;
foreach($censorarray as $censor) {
list($newfind, $newreplace) = array_map('trim', explode('=', $censor));
$newreplace = $newreplace <> '' ? daddslashes(str_replace("\\\'", '\'', $newreplace), 1) : '**';
if(strlen($newfind) < 3) {
$ignorecount ++;
continue;
} elseif(isset($oldwords[md5($newfind)])) {
if($overwrite && ($adminid == 1 || $oldwords[md5($newfind)] == $discuz_userss)) {
$updatecount ++;
$db->query("UPDATE {$tablepre}words SET replacement='$newreplace' WHERE `find`='$newfind'");
} else {
$ignorecount ++;
}
} else {
$newcount ++;
$db->query("INSERT INTO {$tablepre}words (admin, find, replacement) VALUES
('$discuz_user', '$newfind', '$newreplace')");
$oldwords[md5($newfind)] = $discuz_userss;
}
}
updatecache('censor');
cpmsg('censor_batch_add_succeed', "admincp.php?action=$action&page=999999");
} elseif(!submitcheck('censorsubmit')) {
$censorwords = '';
$totalcount = $db->result($db->query("SELECT count(*) FROM {$tablepre}words"), 0);
$page = $page > ceil($totalcount / $ppp) ? ceil($totalcount / $ppp) : $page;
$page = max(1, intval($page));
$startlimit = ($page - 1) * $ppp;
$multipage = multi($totalcount, $ppp, $page, "admincp.php?action=$action");
$query = $db->query("SELECT * FROM {$tablepre}words limit $startlimit, $ppp");
while($censor = $db->fetch_array($query)) {
$censor['replacement'] = stripslashes($censor['replacement']);
$disabled = $adminid != 1 && $censor['admin'] != $discuz_userss ? 'disabled' : NULL;
$censorwords .= "<tr align=\"center\"><td class=\"altbg1\"><input class=\"checkbox\" type=\"checkbox\" name=\"delete[]\" value=\"$censor[id]\" $disabled></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"30\" name=\"find[$censor[id]]\" value=\"$censor[find]\" $disabled></td>\n".
"<td class=\"altbg1\"><input type=\"text\" size=\"30\" name=\"replace[$censor[id]]\" value=\"$censor[replacement]\" $disabled></td>\n".
"<td class=\"altbg2\">$censor[admin]</td></tr>\n";
}
shownav('menu_posting_censors');
showtips('censor_tips');
?>
<form method="post" action="admincp.php?action=censor">
<input type="hidden" name="formhash" value="<?=FORMHASH?>">
<input type="hidden" name="page" value="<?=$page?>">
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td width="5%"><input class="checkbox" type="checkbox" name="chkall" class="header" onclick="checkall(this.form)"><?=$lang['del']?></td>
<td><?=$lang['censor_word']?></td><td><?=$lang['censor_replacement']?></td><td><?=$lang['operator']?></td></tr>
<?=$censorwords?>
<tr class="altbg1">
<td align="center"><?=$lang['add_new']?></td>
<td align="center"><input type="text" size="30" name="newfind"></td>
<td align="center"><input type="text" size="30" name="newreplace"></td>
<td> </td>
</tr></table><br>
<?=$multipage?>
<center><input class="button" type="submit" name="censorsubmit" value="<?=$lang['submit']?>"></center>
</form><br>
<form method="post" action="admincp.php?action=censor">
<input type="hidden" name="formhash" value="<?=FORMHASH?>">
<input type="hidden" name="page" value="<?=$page?>">
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td colspan="2"><?=$lang['censor_batch_add']?></td></tr>
<tr>
<td width="125" class="altbg1"><?=$lang['censor_batch_add_tips']?></td>
<td class="altbg2">
<textarea style="width: 90%" rows="10" cols="80" name="addcensors"></textarea><br>
<?=$emptycensortable?>
<input type="radio" class="radio" name="overwrite" value="1" > <?=$lang['censor_batch_add_overwrite']?>
<br>
<input type="radio" class="radio" name="overwrite" value="0" checked> <?=$lang['censor_batch_add_no_overwrite']?>
<br>
</td>
</tr></table><br>
<center><input class="button" type="submit" name="addcensorsubmit" value="<?=$lang['submit']?>"></center>
</form><br>
<?
} else {
if($ids = implodeids($delete)) {
$db->query("DELETE FROM {$tablepre}words WHERE id IN ($ids) AND ('$adminid'='1' OR admin='$discuz_user')");
}
if(is_array($find)) {
foreach($find as $id => $val) {
$find[$id] = $val = trim(str_replace('=', '', $find[$id]));
if(strlen($val) < 3) {
cpmsg('censor_keywords_tooshort');
}
$replace[$id] = daddslashes(str_replace("\\\'", '\'', $replace[$id]), 1);
$db->query("UPDATE {$tablepre}words SET find='$find[$id]', replacement='$replace[$id]' WHERE id='$id' AND ('$adminid'='1' OR admin='$discuz_user')");
}
}
$newfind = trim(str_replace('=', '', $newfind));
$newreplace = trim($newreplace);
if($newfind != '') {
if(strlen($newfind) < 3) {
cpmsg('censor_keywords_tooshort');
}
$newreplace = daddslashes(str_replace("\\\'", '\'', $newreplace), 1);
$query = $db->query("SELECT admin FROM {$tablepre}words WHERE find='$newfind'");
if($oldcenser = $db->fetch_array($query)) {
cpmsg('censor_keywords_existence');
} else {
$db->query("INSERT INTO {$tablepre}words (admin, find, replacement) VALUES
('$discuz_user', '$newfind', '$newreplace')");
}
}
updatecache('censor');
cpmsg('censor_succeed', 'admincp.php?action=censor&page='.$page);
}
} elseif($action == 'smilies' || $action == 'icons') {
if(!submitcheck('smiliesubmit') && !submitcheck('iconsubmit')) {
$smilies = $icons = $newimages = '';
$imgfilter = array();
$query = $db->query("SELECT * FROM {$tablepre}smilies ORDER BY displayorder");
while($smiley = $db->fetch_array($query)) {
if($action == 'smilies' && $smiley['type'] == 'smiley') {
$smilies .= "<tr align=\"center\"><td class=\"altbg1\"><input class=\"checkbox\" type=\"checkbox\" name=\"delete[]\" value=\"$smiley[id]\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"2\" name=\"displayorder[$smiley[id]]\" value=\"$smiley[displayorder]\"></td>\n".
"<td class=\"altbg1\"><input type=\"text\" size=\"25\" name=\"code[$smiley[id]]\" value=\"".dhtmlspecialchars($smiley['code'])."\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"25\" name=\"url[$smiley[id]]\" value=\"$smiley[url]\"></td>\n".
"<td class=\"altbg1\"><input type=\"hidden\" name=\"type[$smiley[id]]\" value=\"$smiley[type]\"><img src=\"".SMDIR."/$smiley[url]\"></td></tr>\n";
} elseif($action == 'icons' && $smiley['type'] == 'icon') {
$icons .= "<tr align=\"center\"><td class=\"altbg1\"><input class=\"checkbox\" type=\"checkbox\" name=\"delete[]\" value=\"$smiley[id]\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"2\" name=\"displayorder[$smiley[id]]\" value=\"$smiley[displayorder]\"></td>\n".
"<td class=\"altbg1\" colspan=\"2\"><input type=\"text\" size=\"35\" name=\"url[$smiley[id]]\" value=\"$smiley[url]\"></td>\n".
"<td class=\"altbg2\"><input type=\"hidden\" name=\"type[$smiley[id]]\" value=\"$smiley[type]\"><img src=\"".SMDIR."/$smiley[url]\"></td></tr>\n";
}
$imgfilter[] = $smiley[url];
}
$newid = 0;
$imgextarray = array('jpg', 'gif');
$smiliesdir = dir(DISCUZ_ROOT.SMDIR);
while($entry = $smiliesdir->read()) {
if(in_array(strtolower(fileext($entry)), $imgextarray) && !in_array($entry, $imgfilter) && is_file(DISCUZ_ROOT.'./images/smilies/'.$entry)) {
$newimages .= ($action == 'smilies')
? "<tr align=\"center\">\n".
"<td class=\"altbg1\"><input type=\"text\" size=\"2\" name=\"adddisplayorder[$newid]\" value=\"0\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"25\" name=\"addcode[$newid]\" value=\"\"></td>\n".
"<td class=\"altbg1\"><input type=\"text\" size=\"25\" name=\"addurl[$newid]\" value=\"$entry\" readonly></td>\n".
"<td class=\"altbg2\"><img src=\"".SMDIR."/$entry\"></td></tr>\n"
: "<tr align=\"center\"><td class=\"altbg1\"><input type=\"checkbox\" name=\"addcheck[$newid]\" class=\"checkbox\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"2\" name=\"adddisplayorder[$newid]\" value=\"0\"></td>\n".
"<td class=\"altbg1\" colspan=\"2\"><input type=\"text\" size=\"35\" name=\"addurl[$newid]\" value=\"$entry\" readonly></td>\n".
"<td class=\"altbg2\"><img src=\"".SMDIR."/$entry\"></td></tr>\n";
$newid ++;
}
}
$smiliesdir->close();
shownav($action == 'smilies' ? 'menu_posting_smilies' : 'menu_thread_icon');
?>
<form method="post" action="admincp.php?action=<?=$action?>">
<input type="hidden" name="formhash" value="<?=FORMHASH?>">
<?
if($action == 'smilies') {
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td colspan="5" align="left"><?=$lang['smilies_edit']?></td></tr>
<tr align="center" class="category">
<td width="50"><input type="checkbox" name="chkall" onclick="checkall(this.form, 'delete')" class="checkbox"><?=$lang['del']?></td><td><?=$lang['display_order']?></td>
<td><?=$lang['smilies_edit_code']?></td><td><?=$lang['smilies_edit_filename']?></td><td><?=$lang['smilies_edit_image']?></td></tr>
<?=$smilies?>
<tr class="altbg1" align="center"><td><?=$lang['add_new']?> <a href="###" onclick="newnode = $('addsmilies').firstChild.cloneNode(true); $('addsmiliesmore').appendChild(newnode)">[+]</a></td>
<td><input type="text" size="2" name="newdisplayorder1[]"></td>
<td><input type="text" size="25" name="newcode[]"></td>
<td><input type="text" size="25" name="newurl1[]"></td>
<td></td></tr>
<tbody id="addsmilies" style="display: none;">
<tr class="altbg1" align="center"><td><?=$lang['add_new']?></td>
<td><input type="text" size="2" name="newdisplayorder1[]"></td>
<td><input type="text" size="25" name="newcode[]"></td>
<td><input type="text" size="25" name="newurl1[]"></td>
<td></td></tr>
</tbody>
<tbody id="addsmiliesmore"></tbody>
</table><br>
<center><input class="button" type="submit" name="smiliesubmit" value="<?=$lang['submit']?>"></center>
<br>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td colspan="5" align="left"><?=$lang['smilies_no_use']?></td></tr>
<tr align="center" class="category">
<td><?=$lang['display_order']?></td>
<td><?=$lang['smilies_edit_code']?></td><td><?=$lang['smilies_edit_filename']?></td><td><?=$lang['smilies_edit_image']?></td></tr>
<?=$newimages?>
</table><br>
<center><input class="button" type="submit" name="smiliesubmit" value="<?=$lang['submit']?>"></center>
<?
} else {
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td colspan="5"><?=$lang['smilies_edit_icon']?></td></tr>
<tr align="center" class="category">
<td width="50"><input type="checkbox" name="chkall" onclick="checkall(this.form, 'delete')" class="checkbox"><?=$lang['del']?></td><td><?=$lang['display_order']?></td>
<td colspan="2"><?=$lang['smilies_edit_filename']?></td><td><?=$lang['smilies_edit_image']?></td></tr>
<?=$icons?>
<tr class="altbg1" align="center">
<td><?=$lang['add_new']?> <a href="###" onclick="newnode = $('addicon').firstChild.cloneNode(true); $('addiconmore').appendChild(newnode)">[+]</a></td>
<td><input type="text" name="newdisplayorder2[]" size="2"></td>
<td colspan="2"><input type="text" name="newurl2[]" size="35"></td><td> </td>
</tr>
<tbody id="addicon" style="display: none;">
<tr class="altbg1" align="center">
<td><?=$lang['add_new']?></td>
<td><input type="text" name="newdisplayorder2[]" size="2"></td>
<td colspan="2"><input type="text" name="newurl2[]" size="35"></td><td> </td>
</tr>
</tbody>
<tbody id="addiconmore"></tbody>
</table><br>
<center><input class="button" type="submit" name="iconsubmit" value="<?=$lang['submit']?>"></center><br>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td colspan="5"><?=$lang['smilies_no_use']?></td></tr>
<tr align="center" class="category">
<td width="50"><input type="checkbox" name="chkall2" onclick="checkall(this.form, 'addcheck', 'chkall2')" class="checkbox"><?=$lang['enabled']?></td><td><?=$lang['display_order']?></td>
<td colspan="2"><?=$lang['smilies_edit_filename']?></td><td><?=$lang['smilies_edit_image']?></td></tr>
<?=$newimages?>
</table><br>
<center><input class="button" type="submit" name="iconsubmit" value="<?=$lang['submit']?>"></center><br>
</form>
<?
}
} else {
if($ids = implodeids($delete)) {
$db->query("DELETE FROM {$tablepre}smilies WHERE id IN ($ids)");
}
if(is_array($url)) {
foreach($url as $id => $val) {
$code[$id] = trim($code[$id]);
$url[$id] = trim($url[$id]);
if(($action == 'smilies' && empty($code[$id])) || empty($url[$id])) {
$db->query("DELETE FROM {$tablepre}smilies WHERE id='$id'");
} else {
$db->query("UPDATE {$tablepre}smilies SET displayorder='$displayorder[$id]', type='$type[$id]', code='$code[$id]', url='$url[$id]' WHERE id='$id'");
}
}
}
if(is_array($addurl)) {
foreach($addurl as $k => $v) {
$addcode[$k] = $action == 'smilies' ? trim($addcode[$k]) : '';
$type = $action == 'smilies' ? 'smiley' : 'icon';
if(($action == 'smilies' && $addcode[$k] <> '') || ($action == 'icons' && $addcheck[$k])) {
$query = $db->query("INSERT INTO {$tablepre}smilies (displayorder, type, code, url)
VALUES ('{$adddisplayorder1[$k]}', '$type', '$addcode[$k]', '$addurl[$k]')");
}
}
}
if($action == 'smilies') {
if(is_array($newurl1)) {
foreach($newurl1 as $k=>$newurldata) {
if($newurldata != '') {
$newcode[$k] = trim($newcode[$k]);
$query = $db->query("INSERT INTO {$tablepre}smilies (displayorder, type, code, url)
VALUES ('{$newdisplayorder1[$k]}', 'smiley', '$newcode[$k]', '$newurldata')");
}
}
}
updatecache(array('smilies', 'smilies_display', 'smiliestable'));
} else {
if(is_array($newurl2)) {
foreach($newurl2 as $k=>$newurldata) {
if($newurldata != '') {
$query = $db->query("INSERT INTO {$tablepre}smilies (displayorder, type, code, url)
VALUES ('$newdisplayorder2[$k]', 'icon', '', '$newurldata')");
}
}
}
updatecache('icons');
}
cpmsg( ($action == 'smilies' ? 'smilies_succeed' : 'thread_icon_succeed'), "admincp.php?action=$action");
}
} elseif($action == 'attachtypes') {
if(!submitcheck('typesubmit')) {
$attachtypes = '';
$query = $db->query("SELECT * FROM {$tablepre}attachtypes");
while($type = $db->fetch_array($query)) {
$attachtypes .= "<tr align=\"center\"><td class=\"altbg1\"><input class=\"checkbox\" type=\"checkbox\" name=\"delete[]\" value=\"$type[id]\"></td>\n".
"<td class=\"altbg2\"><input type=\"text\" size=\"10\" name=\"extension[$type[id]]\" value=\"$type[extension]\"></td>\n".
"<td class=\"altbg1\"><input type=\"text\" size=\"15\" name=\"maxsize[$type[id]]\" value=\"$type[maxsize]\"></td></tr>\n";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -