📄 threads.inc.php
字号:
<?php
/*
[Discuz!] (C)2001-2007 Comsenz Inc.
This is NOT a freeware, use is subject to license terms
$RCSfile: threads.inc.php,v $
$Revision: 1.63.2.4 $
$Date: 2007/03/21 15:52:03 $
*/
if(!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) {
exit('Access Denied');
}
require_once DISCUZ_ROOT.'./include/post.func.php';
cpheader();
$page = max(1, intval($page));
if(!$operation) {
require_once DISCUZ_ROOT.'./include/forum.func.php';
$forumselect = '<select name="inforum"><option value="all"> > '.$lang['all'].'</option>'.
'<option value=""> </option>'.forumselect().'</select>';
if(isset($inforum)) {
$forumselect = preg_replace("/(\<option value=\"$inforum\")(\>)/", "\\1 selected=\"selected\" \\2", $forumselect);
}
$typeselect = '<select name="intype"><option value="all"> > '.$lang['all'].'</option>'.
'<option value=""> </option><option value="0"> > '.$lang['threads_search_type_none'].'</option>';
$query = $db->query("SELECT * FROM {$tablepre}threadtypes ORDER BY displayorder");
while($type = $db->fetch_array($query)) {
$typeselect .= '<option value="'.$type['typeid'].'"> > '.$type['name'].($type['description'] ? ' ('.$type['description'].')' : '').'</option>';
}
$typeselect .= '</select>';
if(isset($intype)) {
$typeselect = preg_replace("/(\<option value=\"$intype\")(\>)/", "\\1 selected=\"selected\" \\2", $typeselect);
}
$checkcins = empty($cins) ? '' : 'checked';
$checkhspecialthread = array(intval($specialthread) => 'checked');
$checksticky = array(intval($sticky) => 'checked');
$checkdigest = array(intval($digest) => 'checked');
$checkattach = array(intval($attach) => 'checked');
$checkblog = array(intval($blog) => 'checked');
$checkrate = array(intval($rate) => 'checked');
$checkhighlight = array(intval($highlight) => 'checked');
if(!empty($special)) {
foreach($special as $id => $val) {
$checkspecial[$val] = empty($special[$id]) ? '' : 'checked';
}
}
shownav('menu_maint_threads');
?>
<script src="include/javascript/calendar.js"></script>
<script type="text/javascript">
function page(number) {
$('threadforum').page.value=number;
$('threadforum').searchsubmit.click();
}
</script>
<form id="threadforum" method="post" action="admincp.php?action=threads">
<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['threads_search']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_detail']?></td>
<td class="altbg2" align="right"><input class="checkbox" type="checkbox" name="detail" <?=($detail ? 'checked' : '')?> value="1"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_forum']?></td>
<td class="altbg2" align="right"><?=$forumselect?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_time']?></td>
<td class="altbg2" align="right">
<input type="text" name="starttime" size="10" value="<?=dhtmlspecialchars($starttime)?>" onclick="showcalendar(event, this);"> -
<input type="text" name="endtime" size="10" value="<?=dhtmlspecialchars($endtime)?>" onclick="showcalendar(event, this);">
</td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_user']?></td>
<td class="altbg2" align="right">
<?=$lang['case_insensitive']?> <input class="checkbox" type="checkbox" name="cins" value="1" <?=$checkcins?>>
<br><input type="text" name="users" size="40" value="<?=$users?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_keyword']?></td>
<td class="altbg2" align="right"><input type="text" name="keywords" size="40" value="<?=dhtmlspecialchars($keywords)?>"></td>
</tr>
<tr><td class="altbg1"> </td>
<td align="right" class="altbg2" style="text-align: right;"><input class="checkbox" type="checkbox" value="1" onclick="$('advanceoption').style.display = $('advanceoption').style.display == 'none' ? '' : 'none'; this.value = this.value == 1 ? 0 : 1; this.checked = this.value == 1 ? false : true"><?=$lang['more_options']?> </td></tr>
<tbody id="advanceoption" style="display: none">
<tr>
<td class="altbg1"><?=$lang['threads_search_type']?></td>
<td class="altbg2" align="right"><?=$typeselect?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_viewless']?></td>
<td class="altbg2" align="right"><input type="text" name="viewsless" size="40" value="<?=dhtmlspecialchars($viewsless)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_viewmore']?></td>
<td class="altbg2" align="right"><input type="text" name="viewsmore" size="40" value="<?=dhtmlspecialchars($viewsmore)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_replyless']?></td>
<td class="altbg2" align="right"><input type="text" name="repliesless" size="40" value="<?=dhtmlspecialchars($repliesless)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_replymore']?></td>
<td class="altbg2" align="right"><input type="text" name="repliesmore" size="40" value="<?=dhtmlspecialchars($repliesmore)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_readpermmore']?></td>
<td class="altbg2" align="right"><input type="text" name="readpermmore" size="40" value="<?=dhtmlspecialchars($readpermmore)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_pricemore']?></td>
<td class="altbg2" align="right"><input type="text" name="pricemore" size="40" value="<?=dhtmlspecialchars($pricemore)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_noreplyday']?></td>
<td class="altbg2" align="right"><input type="text" name="noreplydays" size="40" value="<?=dhtmlspecialchars($noreplydays)?>"></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_special']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="specialthread" value="0" onclick="$('showspecial').style.display='none'" <?=$checkhspecialthread[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="specialthread" value="1" onclick="$('showspecial').style.display=''" <?=$checkhspecialthread[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="specialthread" value="2" onclick="$('showspecial').style.display=''" <?=$checkhspecialthread[2]?>> <?=$lang['threads_search_include_no']?>
<div id="showspecial" style="display:<?=($specialthread ? '' : 'none')?>">
<input class="checkbox" type="checkbox" name="special[]" value="1" <?=$checkspecial[1]?>> <?=$lang['threads_special_poll']?>
<input class="checkbox" type="checkbox" name="special[]" value="2" <?=$checkspecial[2]?>> <?=$lang['threads_special_trade']?>
<input class="checkbox" type="checkbox" name="special[]" value="3" <?=$checkspecial[3]?>> <?=$lang['threads_special_reward']?>
<input class="checkbox" type="checkbox" name="special[]" value="4" <?=$checkspecial[4]?>> <?=$lang['threads_special_activity']?>
</div>
</td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_sticky']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="sticky" value="0" <?=$checksticky[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="sticky" value="1" <?=$checksticky[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="sticky" value="2" <?=$checksticky[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_digest']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="digest" value="0" <?=$checkdigest[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="digest" value="1" <?=$checkdigest[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="digest" value="2" <?=$checkdigest[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_blog']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="blog" value="0" <?=$checkblog[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="blog" value="1" <?=$checkblog[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="blog" value="2" <?=$checkblog[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_search_attach']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="attach" value="0" <?=$checkattach[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="attach" value="1" <?=$checkattach[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="attach" value="2" <?=$checkattach[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_rate']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="rate" value="0" <?=$checkrate[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="rate" value="1" <?=$checkrate[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="rate" value="2" <?=$checkrate[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
<tr>
<td class="altbg1"><?=$lang['threads_highlight']?></td>
<td class="altbg2" align="right">
<input class="radio" type="radio" name="highlight" value="0" <?=$checkhighlight[0]?>> <?=$lang['unlimited']?>
<input class="radio" type="radio" name="highlight" value="1" <?=$checkhighlight[1]?>> <?=$lang['threads_search_include_yes']?>
<input class="radio" type="radio" name="highlight" value="2" <?=$checkhighlight[2]?>> <?=$lang['threads_search_include_no']?></td>
</tr>
</tbody>
</table><br>
<center><input class="button" type="submit" name="searchsubmit" value="<?=$lang['submit']?>"></center>
</form>
<?
} else {
$tidsadd = isset($tids) ? 'tid IN ('.$tids.')' : 'tid IN ('.implodeids($tidarray).')';
if($operation == 'moveforum') {
$query = $db->query("SELECT fid FROM {$tablepre}forums WHERE type<>'group' AND fid='$toforum'");
if(!$db->result($query, 0)) {
cpmsg('threads_move_invalid');
}
$db->query("UPDATE {$tablepre}threads SET fid='$toforum' WHERE $tidsadd");
$db->query("UPDATE {$tablepre}posts SET fid='$toforum' WHERE $tidsadd");
foreach(explode(',', $fids.','.$toforum) as $fid) {
updateforumcount(intval($fid));
}
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'movetype') {
if($totype != 0) {
$query = $db->query("SELECT typeid FROM {$tablepre}threadtypes WHERE typeid='$totype'");
if(!$db->result($query, 0)) {
cpmsg('threads_move_invalid');
}
}
$db->query("UPDATE {$tablepre}threads SET typeid='$totype' WHERE $tidsadd");
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'delete') {
$query = $db->query("SELECT attachment, thumb, remote FROM {$tablepre}attachments WHERE $tidsadd");
while($attach = $db->fetch_array($query)) {
dunlink($attach['attachment'], $attach['thumb'], $attach['remote']);
}
if(!$donotupdatemember) {
$tuidarray = $ruidarray = array();
$query = $db->query("SELECT first, authorid FROM {$tablepre}posts WHERE $tidsadd");
while($post = $db->fetch_array($query)) {
if($post['first']) {
$tuidarray[] = $post['authorid'];
} else {
$ruidarray[] = $post['authorid'];
}
}
if($tuidarray) {
updatepostcredits('-', $tuidarray, $creditspolicy['post']);
}
if($ruidarray) {
updatepostcredits('-', $ruidarray, $creditspolicy['reply']);
}
}
$db->query("DELETE FROM {$tablepre}attachments WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}posts WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}threads WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}polloptions WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}polls WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}rewardlog WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}trades WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}rewardlog WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}activities WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}activityapplies WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}threadsmod WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}relatedthreads WHERE $tidsadd", 'UNBUFFERED');
if($globalstick) {
updatecache('globalstick');
}
foreach(explode(',', $fids) as $fid) {
updateforumcount(intval($fid));
}
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'deleteattach') {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -