📄 threads.inc.php
字号:
} else {
$query = $db->query("SELECT fid, tid FROM {$tablepre}threads WHERE $sql");
while($thread = $db->fetch_array($query)) {
$fids[] = $thread['fid'];
$tids .= ','.$thread['tid'];
}
$threadcount = $db->result_first("SELECT count(*) FROM {$tablepre}threads WHERE $sql");
$multi = '';
}
}
$fids = implode(',', array_unique($fids));
showtagheader('div', 'threadlist', TRUE);
showformheader('threads&frame=no', 'target="threadframe"');
showhiddenfields($detail ? array('fids' => $fids) : array('fids' => $fids, 'tids' => $tids));
showtableheader(lang('threads_result').' '.$threadcount.' <a href="###" onclick="$(\'threadlist\').style.display=\'none\';$(\'threadsearch\').style.display=\'\';" class="act lightlink normal">'.lang('research').'</a>', 'nobottom');
showsubtitle(array('', 'operation', 'option'));
if(!$threadcount) {
showtablerow('', 'colspan="3"', lang('threads_thread_nonexistence'));
} else {
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="moveforum" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_move_forum'],
'<select name="toforum">'.forumselect().'</select>'
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="movetype" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_move_type'],
'<select name="totype"><option value="0"> > '.$lang['threads_search_type_none'].'</option>'.$typeselect.'</select>'
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="delete" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_delete'],
'<input class="checkbox" type="checkbox" name="donotupdatemember" id="donotupdatemember" value="1" checked="checked" /><label for="donotupdatemember"> '.$lang['threads_delete_no_update_member'].'</label>'
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="stick" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_stick'],
'<input class="radio" type="radio" name="stick_level" value="0" checked> '.$lang['threads_remove'].' <input class="radio" type="radio" name="stick_level" value="1"> '.$lang['threads_stick_one'].' <input class="radio" type="radio" name="stick_level" value="2"> '.$lang['threads_stick_two'].' <input class="radio" type="radio" name="stick_level" value="3"> '.$lang['threads_stick_three']
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="adddigest" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_add_digest'],
'<input class="radio" type="radio" name="digest_level" value="0" checked> '.$lang['threads_remove'].' <input class="radio" type="radio" name="digest_level" value="1"> '.$lang['threads_digest_one'].' <input class="radio" type="radio" name="digest_level" value="2"> '.$lang['threads_digest_two'].' <input class="radio" type="radio" name="digest_level" value="3"> '.$lang['threads_digest_three']
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="addstatus" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_open_close'],
'<input class="radio" type="radio" name="status" value="0" checked> '.$lang['open'].' <input class="radio" type="radio" name="status" value="1"> '.$lang['closed']
));
showtablerow('', array('class="td25"', 'class="td24"', 'class="rowform" style="width:auto;"'), array(
'<input class="radio" type="radio" name="operation" value="deleteattach" onclick="this.form.modsubmit.disabled=false;">',
$lang['threads_delete_attach'],
''
));
if($detail) {
showtablefooter();
showtableheader('threads_list', 'notop');
showsubtitle(array('', 'subject', 'forum', 'author', 'threads_replies', 'threads_views', 'threads_lastpost'));
echo $threads;
}
}
showsubmit('modsubmit', 'submit', '<input name="chkall" id="chkall" type="checkbox" class="checkbox" checked="checked" onclick="checkAll(\'prefix\', this.form, \'tidarray\', \'chkall\')" /><label for="chkall">'.lang('select_all').'</label>', '', $multi);
showtablefooter();
showformfooter();
echo '<iframe name="threadframe" style="display:none"></iframe>';
showtagfooter('div');
}
} else {
$tidsadd = isset($tids) ? 'tid IN ('.$tids.')' : 'tid IN ('.implodeids($tidarray).')';
if($operation == 'moveforum') {
if(!$db->result_first("SELECT fid FROM {$tablepre}forums WHERE type<>'group' AND fid='$toforum'")) {
cpmsg('threads_move_invalid', '', 'error');
}
$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) {
if(!$db->result_first("SELECT typeid FROM {$tablepre}threadtypes WHERE typeid='$totype'")) {
cpmsg('threads_move_invalid', '', 'error');
}
}
$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}debates WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}debateposts WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}threadsmod WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}relatedthreads WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}typeoptionvars WHERE $tidsadd", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}videos WHERE $tidsadd", 'UNBUFFERED');
if($globalstick) {
updatecache('globalstick');
}
foreach(explode(',', $fids) as $fid) {
updateforumcount(intval($fid));
}
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'deleteattach') {
$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']);
}
$db->query("DELETE FROM {$tablepre}attachments WHERE $tidsadd");
$db->query("UPDATE {$tablepre}threads SET attachment='0' WHERE $tidsadd");
$db->query("UPDATE {$tablepre}posts SET attachment='0' WHERE $tidsadd");
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'stick') {
$db->query("UPDATE {$tablepre}threads SET displayorder='$stick_level' WHERE $tidsadd");
if($globalstick) {
updatecache('globalstick');
}
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'adddigest') {
$query = $db->query("SELECT tid, authorid, digest FROM {$tablepre}threads WHERE $tidsadd");
while($thread = $db->fetch_array($query)) {
updatecredits($thread['authorid'], $creditspolicy['digest'], $digest_level - $thread['digest'], 'digestposts=digestposts-1');
}
$db->query("UPDATE {$tablepre}threads SET digest='$digest_level' WHERE $tidsadd");
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
} elseif($operation == 'addstatus') {
$db->query("UPDATE {$tablepre}threads SET closed='$status' WHERE $tidsadd");
eval("\$cpmsg = \"".$msglang['threads_succeed']."\";");
}
$tids && deletethreadcaches($tids);
$cpmsg = $cpmsg ? "alert('$cpmsg');" : '';
echo '<script type="text/JavaScript">'.$cpmsg.'parent.$(\'threadforum\').searchsubmit.click();</script>';
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -