123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304 |
- <?php
- /**
- * [Discuz!] (C)2001-2099 Comsenz Inc.
- * This is NOT a freeware, use is subject to license terms
- *
- * $Id: admincp_moderate.php 32501 2013-01-29 09:51:00Z chenmengshu $
- */
- if(!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) {
- exit('Access Denied');
- }
- cpheader();
- $ignore = $_GET['ignore'];
- $filter = $_GET['filter'];
- $modfid = $_GET['modfid'];
- $modsubmit = $_GET['modsubmit'];
- $moderate = $_GET['moderate'];
- $pm = $_GET['pm'];
- $showcensor = !empty($_GET['showcensor']) ? 1 : 0;
- $_G['setting']['memberperpage'] = 100;
- if(empty($operation)) {
- $operation = 'threads';
- }
- if($operation == 'members') {
- require_once libfile('moderate/member', 'admincp');
- exit;
- } else {
- require_once libfile('function/forumlist');
- require_once libfile('function/post');
- $modfid = !empty($modfid) ? intval($modfid) : 0;
- $recyclebins = $forumlist = array();
- $query = C::t('forum_forum')->fetch_all_valid_forum();
- foreach($query as $forum) {
- $recyclebins[$forum['fid']] = $forum['recyclebin'];
- $forumlist[$forum['fid']] = $forum['name'];
- }
- if($modfid && $modfid != '-1') {
- $fidadd = array('fids' => $modfid, 'and' => ' AND ', 't' => 't.', 'p' => 'p.');
- } else {
- $fidadd = array();
- }
- if(isset($filter) && $filter == 'ignore') {
- $displayorder = -3;
- $moderatestatus = 1;
- $filteroptions = '<option value="normal">'.$lang['moderate_none'].'</option><option value="ignore" selected>'.$lang['moderate_ignore'].'</option>';
- } else {
- $displayorder = -2;
- $moderatestatus = 0;
- $filter = 'normal';
- $filteroptions = '<option value="normal" selected>'.$lang['moderate_none'].'</option><option value="ignore">'.$lang['moderate_ignore'].'</option>';
- }
- $forumoptions = '<option value="all"'.(empty($modfid) ? ' selected' : '').'>'.$lang['moderate_all_fields'].'</option>';
- if($operation != 'replies') {
- $forumoptions .= '<option value="-1" '.($modfid == '-1' ? 'selected' : '').'>'.$lang['moderate_all_groups'].'</option>'."\n";
- }
- foreach($forumlist as $fid => $forumname) {
- $selected = $modfid == $fid ? ' selected' : '';
- $forumoptions .= '<option value="'.$fid.'" '.$selected.'>'.$forumname.'</option>'."\n";
- }
- require_once libfile('function/misc');
- $modreasonoptions = '<option value="">'.$lang['none'].'</option><option value="">--------</option>'.modreasonselect(1);
- echo <<<EOT
- <script type="text/JavaScript">
- var cookiepre = "{$_G[config][cookie][cookiepre]}";
- function mod_setbg(tid, value) {
- $('mod_' + tid + '_row1').className = 'mod_' + value;
- $('mod_' + tid + '_row2').className = 'mod_' + value;
- $('mod_' + tid + '_row3').className = 'mod_' + value;
- $("chk_apply_all").checked = false;
- $("chk_apply_all").disabled = true;
- }
- function mod_setbg_all(value) {
- checkAll('option', $('cpform'), value);
- var trs = $('cpform').getElementsByTagName('TR');
- for(var i in trs) {
- if(trs[i].id && trs[i].id.substr(0, 4) == 'mod_') {
- trs[i].className = 'mod_' + value;
- }
- }
- $("chk_apply_all").disabled = false;
- $("chk_apply_all").value = value;
- }
- function attachimg() {}
- function expandall() {
- var tds = $('cpform').getElementsByTagName('TD');
- for(var i in tds) {
- if(tds[i].id && tds[i].id.match(/^mod_(\d+)_row1_op$/) != null) {
- tds[i].rowSpan = "3";
- }
- }
- var trs = $('cpform').getElementsByTagName('TR');
- for(var i in trs) {
- if(trs[i].id && trs[i].id.match(/^mod_(\d+)_row1$/) != null) {
- tds = trs[i].getElementsByTagName('TD');
- for(var j in tds) {
- if(tds[j].className == "threadtitle threadopt") {
- tds[j].className = "";
- }
- }
- }
- if(trs[i].id && trs[i].id.match(/^mod_(\d+)_row(2|3)$/) != null) {
- trs[i].style.display = "";
- }
- }
- setcookie("foldall", 0, 3600);
- }
- function foldall() {
- var tds = $('cpform').getElementsByTagName('TD');
- for(var i in tds) {
- if(tds[i].id && tds[i].id.match(/^mod_(\d+)_row1_op$/) != null) {
- tds[i].rowSpan = "1";
- }
- }
- var trs = $('cpform').getElementsByTagName('TR');
- for(var i in trs) {
- if(trs[i].id && trs[i].id.match(/^mod_(\d+)_row1$/) != null) {
- tds = trs[i].getElementsByTagName('TD');
- for(var j in tds) {
- if(tds[j].className == "") {
- tds[j].className = "threadtitle threadopt";
- }
- }
- }
- if(trs[i].id && trs[i].id.match(/^mod_(\d+)_row(2|3)$/) != null) {
- trs[i].style.display = "none";
- }
- }
- setcookie("foldall", 1, 3600);
- }
- function display_toggle(tid) {
- var tr1 = $('mod_' + tid + '_row1');
- var tr1_op = $('mod_' + tid + '_row1_op');
- var tr2 = $('mod_' + tid + '_row2');
- var tr3 = $('mod_' + tid + '_row3');
- var tds = tr1.getElementsByTagName('TD');
- if(tr1_op.rowSpan == "1") {
- for(var i in tds) {
- if(tds[i].className == "threadtitle threadopt") {
- tds[i].className = "";
- }
- }
- tr1_op.rowSpan = "3";
- tr2.style.display = "";
- tr3.style.display = "";
- } else {
- for(var i in tds) {
- if(tds[i].className == "") {
- tds[i].className = "threadtitle threadopt";
- }
- }
- tr1_op.rowSpan = "1";
- tr2.style.display = "none";
- tr3.style.display = "none";
- }
- }
- function mod_cancel_all() {
- var form = $('cpform');
- var checkall = 'chkall';
- for(var i = 0; i < form.elements.length; i++) {
- var e = form.elements[i];
- if(e.type == 'radio') {
- e.checked = '';
- }
- }
- var trs = $('cpform').getElementsByTagName('TR');
- for(var i in trs) {
- if(trs[i].id && trs[i].id.match(/^mod_(\d+)_row(1|2|3)$/)) {
- trs[i].className = "mod_cancel";
- }
- }
- $("chk_apply_all").checked = false;
- $("chk_apply_all").disabled = true;
- }
- function remove_element(_element) {
- var _parentElement = _element.parentNode;
- if(_parentElement){
- _parentElement.removeChild(_element);
- }
- }
- function mod_remove_row(id) {
- var id1 = "mod_" + id + "_row1";
- var id2 = "mod_" + id + "_row2";
- var id3 = "mod_" + id + "_row3";
- var node1 = parent.document.getElementById(id1);
- var node2 = parent.document.getElementById(id2);
- var node3 = parent.document.getElementById(id3);
- remove_element(node1);
- remove_element(node2);
- remove_element(node3);
- }
- window.onload = function() {
- if(getcookie("foldall")) {
- foldall();
- }
- };
- </script>
- EOT;
- }
- $submenu = array(
- array(array('menu' => 'moderate_m_forum', 'submenu' => array(
- 'threads' => array('nav_moderate_threads', 'moderate&operation=threads', $operation == 'threads'),
- 'replies' => array('nav_moderate_replies', 'moderate&operation=replies', $operation == 'replies'),
- )), in_array($operation, array('threads', 'replies'))),
- array(array('menu' => 'moderate_m_home', 'submenu' => array(
- 'blogs' => array('nav_moderate_blogs', 'moderate&operation=blogs', $operation == 'blogs'),
- 'pictures' => array('nav_moderate_pictures', 'moderate&operation=pictures', $operation == 'pictures'),
- 'doings' => array('nav_moderate_doings', 'moderate&operation=doings', $operation == 'doings'),
- 'shares' => array('nav_moderate_shares', 'moderate&operation=shares', $operation == 'shares'),
- 'comments' => array('nav_moderate_comments', 'moderate&operation=comments', $operation == 'comments'),
- )), in_array($operation, array('blogs', 'pictures', 'doings', 'shares', 'comments'))),
- array(array('menu' => 'moderate_m_portal', 'submenu' => array(
- 'articles' => array('nav_moderate_articles', 'moderate&operation=articles', $operation == 'articles'),
- 'articlecomments' => array('nav_moderate_articlecomments', 'moderate&operation=articlecomments', $operation == 'articlecomments'),
- 'topiccomments' => array('nav_moderate_topiccomments', 'moderate&operation=topiccomments', $operation == 'topiccomments'),
- )), in_array($operation, array('articles', 'articlecomments', 'topiccomments')))
- );
- if($operation == 'threads') {
- require_once libfile('moderate/thread', 'admincp');
- } elseif($operation == 'replies') {
- require_once libfile('moderate/reply', 'admincp');
- } elseif($operation == 'blogs') {
- require_once libfile('moderate/blog', 'admincp');
- } elseif($operation == 'pictures') {
- require_once libfile('moderate/picture', 'admincp');
- } elseif($operation == 'doings') {
- require_once libfile('moderate/doing', 'admincp');
- } elseif($operation == 'shares') {
- require_once libfile('moderate/share', 'admincp');
- } elseif($operation == 'comments') {
- require_once libfile('moderate/comment', 'admincp');
- } elseif($operation == 'articles') {
- require_once libfile('moderate/article', 'admincp');
- } elseif($operation == 'articlecomments' || $operation == 'topiccomments') {
- require_once libfile('moderate/portalcomment', 'admincp');
- }
- echo '<iframe name="fasthandle" style="display: none;"></iframe>';
- function callback_js($id) {
- $js = <<<EOT
- <script type="text/javascript">
- mod_remove_row('$id');
- </script>
- EOT;
- return $js;
- }
- function moderateswipe($type, $ids) {
- if($type == 'pid') {
- $exist_ids = array_keys(C::t('forum_post')->fetch_all(0, $ids));
- } elseif($type == 'tid') {
- $exist_ids = array_keys(C::t('forum_thread')->fetch_all($ids));
- }
- $remove_ids = array_diff($ids, $exist_ids);
- if($remove_ids) {
- return C::t('common_moderate')->delete($remove_ids, $type);
- } else {
- return 0;
- }
- }
- ?>
|