Files
web-discuz/source/admincp/admincp_remoderate.php
2025-06-27 21:04:18 +08:00

392 lines
14 KiB
PHP
Executable File

<?php
/**
* [Discuz!] (C)2001-2099 Comsenz Inc.
* This is NOT a freeware, use is subject to license terms
*
* $Id$
*/
if(!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) {
exit('Access Denied');
}
cpheader();
$pertask = isset($_GET['pertask']) ? intval($_GET['pertask']) : 100;
$current = isset($_GET['current']) && $_GET['current'] > 0 ? intval($_GET['current']) : 0;
$next = $current + $pertask;
if(submitcheck('threadsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&threadsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('forum_thread')->fetch_all_by_displayorder(0, '>=', $current, $pertask) as $thread) {
$processed = 1;
foreach(C::t('forum_post')->fetch_all_visiblepost_by_tid($thread['posttableid'], $thread['tid']) as $post) {
$subject = $post['subject'];
$message = $post['message'];
$subject_result = empty($subject) ? 0 : $censor->check($subject);
$message_result = (in_array($subject_result, array(1, 2)) || empty($message)) ? 0 : $censor->check($message);
if($subject_result) {
if($subject_result == 3) {
if(strcmp($post['subject'], $subject)) {
C::t('forum_post')->update($thread['posttableid'], $post['pid'], array('subject' => $subject), false, false, null, -2, null, 0);
}
} else {
if($post['first'] == 1) {
C::t('forum_thread')->update($thread['tid'], array('displayorder' => -2));
updatemoderate('tid', $thread['tid']);
} else {
updatemoderate('pid', $post['pid']);
}
}
}
if($message_result) {
if($message_result == 3) {
if(strcmp($post['message'], $message)) {
C::t('forum_post')->update($thread['posttableid'], $post['pid'], array('message' => $message), false, false, null, -2, null, 0);
}
} else {
if($post['first'] == 1) {
C::t('forum_thread')->update($thread['tid'], array('displayorder' => -2));
updatemoderate('tid', $thread['tid']);
} else {
updatemoderate('pid', $post['pid']);
}
}
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_thread']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_thread_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('blogsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&blogsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('home_blog')->range($current, $pertask, 'ASC', 'dateline', null, 0) as $blog) {
$processed = 1;
$post = C::t('home_blogfield')->fetch($blog['blogid']);
$subject = $blog['subject'];
$message = $post['message'];
$subject_result = empty($subject) ? 0 : $censor->check($subject);
$message_result = (in_array($subject_result, array(1, 2)) || empty($message)) ? 0 : $censor->check($message);
if($subject_result) {
if($subject_result == 3) {
if(strcmp($blog['subject'], $subject)) {
C::t('home_blog')->update($blog['blogid'], array('subject' => $subject));
}
} else {
C::t('home_blog')->update($blog['blogid'], array('status' => 1));
updatemoderate('blogid', $blog['blogid']);
}
}
if($message_result) {
if($message_result == 3) {
if(strcmp($post['message'], $message)) {
C::t('home_blogfield')->update($blog['blogid'], array('message' => $message));
}
} else {
C::t('home_blog')->update($blog['blogid'], array('status' => 1));
updatemoderate('blogid', $blog['blogid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_blog']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_blog_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('picsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&picsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('home_pic')->fetch_all_by_sql('`status` = 0', 'picid', $current, $pertask, 0, 0) as $pic) {
$processed = 1;
$title = $pic['title'];
$title_result = empty($title) ? 0 : $censor->check($title);
if($title_result) {
if($title_result == 3) {
if(strcmp($pic['title'], $title)) {
C::t('home_pic')->update($pic['picid'], array('title' => $title));
}
} else {
C::t('home_pic')->update($pic['picid'], array('status' => 1));
updatemoderate('picid', $pic['picid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_pic']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_pic_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('doingsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&doingsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('home_doing')->fetch_all_by_status(0, $current, $pertask) as $doing) {
$processed = 1;
$message = $doing['message'];
$message_result = empty($message) ? 0 : $censor->check($message);
if($message_result) {
if($message_result == 3) {
if(strcmp($doing['message'], $message)) {
C::t('home_doing')->update($doing['doid'], array('message' => $message));
}
} else {
C::t('home_doing')->update($doing['doid'], array('status' => 1));
updatemoderate('doid', $doing['doid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_doing']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_doing_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('sharesubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&sharesubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('home_share')->fetch_all_by_status(0, $current, $pertask) as $share) {
$processed = 1;
$sharebody = $share['body_general'];
$sharebody_result = empty($sharebody) ? 0 : $censor->check($sharebody);
if($sharebody_result) {
if($sharebody_result == 3) {
if(strcmp($share['body_general'], $sharebody)) {
C::t('home_share')->update($share['sid'], array('body_general' => $sharebody));
}
} else {
C::t('home_share')->update($share['sid'], array('status' => 1));
updatemoderate('sid', $share['sid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_share']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_share_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('commentsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&commentsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('home_comment')->fetch_all_by_status(0, $current, $pertask) as $comment) {
$processed = 1;
$comment = $comment['message'];
$comment_result = empty($comment) ? 0 : $censor->check($comment);
if($comment_result) {
if($comment_result == 3) {
if(strcmp($comment['message'], $comment)) {
C::t('home_comment')->update($comment['cid'], array('message' => $comment));
}
} else {
C::t('home_comment')->update($comment['cid'], array('status' => 1));
updatemoderate($comment['idtype'].'_cid', $comment['cid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_comment']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_comment_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('articlesubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&articlesubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('portal_article_title')->fetch_all_by_sql('`status` = 0', '', $current, $pertask) as $article) {
$processed = 1;
$subject = $article['subject'];
$subject_result = empty($subject) ? 0 : $censor->check($subject);
if($subject_result) {
if($subject_result == 3) {
if(strcmp($article['subject'], $subject)) {
C::t('portal_article_title')->update($article['aid'], array('message' => $subject));
}
} else {
C::t('portal_article_title')->update($article['aid'], array('status' => 1));
updatemoderate('aid', $article['aid']);
}
}
if(in_array($subject_result, array(0, 3))) {
foreach(C::t('portal_article_content')->fetch_all($article['aid']) as $post) {
$content = $post['content'];
$content_result = empty($content) ? 0 : $censor->check($content);
if($content_result) {
if($content_result == 3) {
if(strcmp($post['content'], $content)) {
C::t('portal_article_content')->update($post['cid'], array('content' => $content));
}
} else {
C::t('portal_article_title')->update($article['aid'], array('status' => 1));
updatemoderate('aid', $article['aid']);
break;
}
}
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_article']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_article_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('articlecommentsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&articlecommentsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('portal_comment')->fetch_all_by_idtype_status('aid', 0, $current, $pertask) as $comment) {
$processed = 1;
$comment = $comment['message'];
$comment_result = empty($comment) ? 0 : $censor->check($comment);
if($comment_result) {
if($comment_result == 3) {
if(strcmp($comment['message'], $comment)) {
C::t('portal_comment')->update($comment['cid'], array('message' => $comment));
}
} else {
C::t('portal_comment')->update($comment['cid'], array('status' => 1));
updatemoderate($comment['idtype'].'_cid', $comment['cid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_articlecomment']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_articlecomment_succeed', 'action=remoderate', 'succeed');
}
} elseif(submitcheck('topiccommentsubmit', 1)) {
$nextlink = "action=remoderate&current=$next&pertask=$pertask&topiccommentsubmit=yes";
$processed = 0;
$censor = & discuz_censor::instance();
foreach(C::t('portal_comment')->fetch_all_by_idtype_status('topicid', 0, $current, $pertask) as $comment) {
$processed = 1;
$comment = $comment['message'];
$comment_result = empty($comment) ? 0 : $censor->check($comment);
if($comment_result) {
if($comment_result == 3) {
if(strcmp($comment['message'], $comment)) {
C::t('portal_comment')->update($comment['cid'], array('message' => $comment));
}
} else {
C::t('portal_comment')->update($comment['cid'], array('status' => 1));
updatemoderate($comment['idtype'].'_cid', $comment['cid']);
}
}
}
if($processed) {
cpmsg("{$lang['remoderate_topiccomment']}: ".cplang('remoderate_processing', array('current' => $current, 'next' => $next)), $nextlink, 'loading');
} else {
cpmsg('remoderate_topiccomment_succeed', 'action=remoderate', 'succeed');
}
} else {
shownav('topic', 'nav_remoderate');
showsubmenu('nav_remoderate');
showtips('remoderate_tips');
showformheader('remoderate');
showtableheader();
showsubtitle(array('', 'remoderate_amount'));
showhiddenfields(array('pertask' => ''));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_thread']}:",
'<input name="pertask1" type="text" class="txt" value="100" /><input type="submit" class="btn" name="threadsubmit" onclick="this.form.pertask.value=this.form.pertask1.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_blog']}:",
'<input name="pertask2" type="text" class="txt" value="100" /><input type="submit" class="btn" name="blogsubmit" onclick="this.form.pertask.value=this.form.pertask2.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_pic']}:",
'<input name="pertask3" type="text" class="txt" value="100" /><input type="submit" class="btn" name="picsubmit" onclick="this.form.pertask.value=this.form.pertask3.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_doing']}:",
'<input name="pertask4" type="text" class="txt" value="100" /><input type="submit" class="btn" name="doingsubmit" onclick="this.form.pertask.value=this.form.pertask4.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_share']}:",
'<input name="pertask5" type="text" class="txt" value="100" /><input type="submit" class="btn" name="sharesubmit" onclick="this.form.pertask.value=this.form.pertask5.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_comment']}:",
'<input name="pertask6" type="text" class="txt" value="100" /><input type="submit" class="btn" name="commentsubmit" onclick="this.form.pertask.value=this.form.pertask6.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_article']}:",
'<input name="pertask7" type="text" class="txt" value="100" /><input type="submit" class="btn" name="articlesubmit" onclick="this.form.pertask.value=this.form.pertask7.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_articlecomment']}:",
'<input name="pertask8" type="text" class="txt" value="100" /><input type="submit" class="btn" name="articlecommentsubmit" onclick="this.form.pertask.value=this.form.pertask8.value" value="'.$lang['submit'].'" />'
));
showtablerow('', array('class="td31 bold"'), array(
"{$lang['remoderate_topiccomment']}:",
'<input name="pertask9" type="text" class="txt" value="100" /><input type="submit" class="btn" name="topiccommentsubmit" onclick="this.form.pertask.value=this.form.pertask9.value" value="'.$lang['submit'].'" />'
));
showtablefooter();
showformfooter();
}