Zeile 11 | Zeile 11 |
---|
define("IN_MYBB", 1); define('THIS_SCRIPT', 'moderation.php');
|
define("IN_MYBB", 1); define('THIS_SCRIPT', 'moderation.php');
|
$templatelist = 'changeuserbox,loginbox,moderation_delayedmoderation_custommodtool,moderation_delayedmodaction_notes,moderation_delayedmoderation_merge,moderation_delayedmoderation_move'; $templatelist .= ',moderation_delayedmoderation,moderation_deletethread,moderation_deletepoll,moderation_mergeposts_post,moderation_viewthreadnotes'; $templatelist .= ',moderation_move,moderation_threadnotes_modaction,moderation_threadnotes_delayedmodaction,moderation_threadnotes,moderation_getip_modoptions,moderation_getip,moderation_getpmip,moderation_merge'; $templatelist .= ',moderation_split_post,moderation_split,moderation_inline_deletethreads,moderation_inline_movethreads,moderation_inline_deleteposts,moderation_inline_mergeposts,moderation_threadnotes_modaction_error'; $templatelist .= ',moderation_inline_splitposts,forumjump_bit,forumjump_special,forumjump_advanced,forumdisplay_password_wrongpass,forumdisplay_password,moderation_inline_moveposts,moderation_delayedmodaction_error,moderation_purgespammer,moderation_delayedmoderation_date_day,moderation_delayedmoderation_date_month';
| $templatelist = "changeuserbox,loginbox,moderation_delayedmoderation_custommodtool,moderation_delayedmodaction_notes,moderation_delayedmoderation_merge,moderation_delayedmoderation_move,moderation_threadnotes"; $templatelist .= ",moderation_delayedmoderation,moderation_deletethread,moderation_deletepoll,moderation_mergeposts_post,moderation_viewthreadnotes,moderation_confirmation,moderation_purgespammer,forumjump_bit"; $templatelist .= ",moderation_move,moderation_threadnotes_modaction,moderation_threadnotes_delayedmodaction,moderation_getip_modoptions,moderation_getip,moderation_getpmip,moderation_getpmip_modal"; $templatelist .= ",moderation_split_post,moderation_inline_deletethreads,moderation_inline_movethreads,moderation_inline_deleteposts,moderation_inline_mergeposts,moderation_threadnotes_modaction_error"; $templatelist .= ",moderation_inline_splitposts,forumjump_special,forumjump_advanced,forumdisplay_password_wrongpass,forumdisplay_password,moderation_inline_moveposts,moderation_delayedmodaction_error"; $templatelist .= ",moderation_delayedmodaction_notes_thread_single,moderation_delayedmodaction_notes_thread_multiple,moderation_delayedmodaction_notes_forum,moderation_delayedmodaction_notes_new_forum"; $templatelist .= ",moderation_delayedmodaction_notes_redirect,moderation_delayedmodaction_notes_merge,moderation_delayedmoderation_thread,moderation_threadnotes_modaction_thread,moderation_getip_modal"; $templatelist .= ",moderation_delayedmoderation_date_day,moderation_delayedmoderation_date_month,moderation_threadnotes_modaction_post,moderation_merge,moderation_split,moderation_threadnotes_modaction_forum"; $templatelist .= ",moderation_delayedmoderation_openclose,moderation_delayedmoderation_softdeleterestore,moderation_delayedmoderation_delete,moderation_delayedmoderation_stick,moderation_delayedmoderation_approve";
|
require_once "./global.php"; require_once MYBB_ROOT."inc/functions_post.php";
| require_once "./global.php"; require_once MYBB_ROOT."inc/functions_post.php";
|
Zeile 30 | Zeile 34 |
---|
$plugins->run_hooks("moderation_start");
|
$plugins->run_hooks("moderation_start");
|
$tid = $mybb->get_input('tid', 1); $pid = $mybb->get_input('pid', 1); $fid = $mybb->get_input('fid', 1); $pmid = $mybb->get_input('pmid', 1);
| $tid = $mybb->get_input('tid', MyBB::INPUT_INT); $pid = $mybb->get_input('pid', MyBB::INPUT_INT); $fid = $mybb->get_input('fid', MyBB::INPUT_INT); $pmid = $mybb->get_input('pmid', MyBB::INPUT_INT); $modal = $mybb->get_input('modal', MyBB::INPUT_INT);
if($mybb->user['uid'] == 0) { error_no_permission(); }
|
if($pid) { $post = get_post($pid); if(!$post) {
|
if($pid) { $post = get_post($pid); if(!$post) {
|
error($lang->error_invalidpost);
| error($lang->error_invalidpost, $lang->error);
|
} $tid = $post['tid']; }
| } $tid = $post['tid']; }
|
Zeile 50 | Zeile 61 |
---|
$thread = get_thread($tid); if(!$thread) {
|
$thread = get_thread($tid); if(!$thread) {
|
error($lang->error_invalidthread);
| error($lang->error_invalidthread, $lang->error);
|
} $fid = $thread['fid']; }
| } $fid = $thread['fid']; }
|
Zeile 67 | Zeile 78 |
---|
$permissions = forum_permissions($fid); }
|
$permissions = forum_permissions($fid); }
|
if($pmid && $pmid > 0)
| if($pmid > 0)
|
{
|
{
|
$query = $db->query(" SELECT * FROM ".TABLE_PREFIX."privatemessages WHERE pmid='{$pmid}' ");
| $query = $db->simple_select('privatemessages', 'uid, subject, ipaddress, fromid', "pmid = $pmid");
|
$pm = $db->fetch_array($query);
if(!$pm) {
|
$pm = $db->fetch_array($query);
if(!$pm) {
|
error($lang->error_invalidpm);
| error($lang->error_invalidpm, $lang->error);
|
} }
| } }
|
Zeile 109 | Zeile 116 |
---|
check_forum_password($forum['fid']); }
|
check_forum_password($forum['fid']); }
|
| $log_multithreads_actions = array("do_multideletethreads", "multiclosethreads", "multiopenthreads", "multiapprovethreads", "multiunapprovethreads", "multirestorethreads", "multisoftdeletethreads","multistickthreads", "multiunstickthreads", "do_multimovethreads"); if(in_array($mybb->input['action'], $log_multithreads_actions)) { if(!empty($mybb->input['searchid'])) { $tids = getids($mybb->get_input('searchid'), 'search'); } else { $tids = getids($fid, 'forum'); }
$modlogdata['tids'] = (array)$tids;
unset($tids); }
$mybb->user['username'] = htmlspecialchars_uni($mybb->user['username']);
|
eval("\$loginbox = \"".$templates->get("changeuserbox")."\";");
$allowable_moderation_actions = array("getip", "getpmip", "cancel_delayedmoderation", "delayedmoderation", "threadnotes", "purgespammer", "viewthreadnotes");
|
eval("\$loginbox = \"".$templates->get("changeuserbox")."\";");
$allowable_moderation_actions = array("getip", "getpmip", "cancel_delayedmoderation", "delayedmoderation", "threadnotes", "purgespammer", "viewthreadnotes");
|
|
|
if($mybb->request_method != "post" && !in_array($mybb->input['action'], $allowable_moderation_actions)) { error_no_permission();
| if($mybb->request_method != "post" && !in_array($mybb->input['action'], $allowable_moderation_actions)) { error_no_permission();
|
Zeile 132 | Zeile 157 |
---|
error_no_permission(); }
|
error_no_permission(); }
|
$db->delete_query("delayedmoderation", "did='".$mybb->get_input('did', 1)."'");
| $plugins->run_hooks('moderation_cancel_delayedmoderation');
$db->delete_query("delayedmoderation", "did='".$mybb->get_input('did', MyBB::INPUT_INT)."'");
|
if($tid == 0) { moderation_redirect(get_forum_link($fid), $lang->redirect_delayed_moderation_cancelled);
|
if($tid == 0) { moderation_redirect(get_forum_link($fid), $lang->redirect_delayed_moderation_cancelled);
|
} else
| } else
|
{ moderation_redirect("moderation.php?action=delayedmoderation&tid={$tid}&my_post_key={$mybb->post_code}", $lang->redirect_delayed_moderation_cancelled); }
| { moderation_redirect("moderation.php?action=delayedmoderation&tid={$tid}&my_post_key={$mybb->post_code}", $lang->redirect_delayed_moderation_cancelled); }
|
Zeile 147 | Zeile 174 |
---|
case "delayedmoderation": // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
case "delayedmoderation": // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
if(!$mybb->get_input('date_day', 1)) { $mybb->input['date_day'] = date('d', TIME_NOW); } if(!$mybb->get_input('date_month', 1)) { $mybb->input['date_month'] = date('m', TIME_NOW);
| $localized_time_offset = $mybb->user['timezone']*3600 + $mybb->user['dst']*3600;
if(!$mybb->get_input('date_day', MyBB::INPUT_INT)) { $mybb->input['date_day'] = gmdate('d', TIME_NOW + $localized_time_offset); } if(!$mybb->get_input('date_month', MyBB::INPUT_INT)) { $mybb->input['date_month'] = gmdate('m', TIME_NOW + $localized_time_offset);
|
}
// Assume in-line moderation if TID is not set
| }
// Assume in-line moderation if TID is not set
|
Zeile 170 | Zeile 199 |
---|
} else {
|
} else {
|
$fid = $mybb->get_input('fid', 1);
| $fid = $mybb->get_input('fid', MyBB::INPUT_INT);
|
$tids = getids($fid, "forum"); } if(count($tids) < 1) {
|
$tids = getids($fid, "forum"); } if(count($tids) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$mybb->input['tids'] = $tids;
|
}
$mybb->input['tids'] = $tids;
|
}
| }
|
add_breadcrumb($lang->delayed_moderation);
if(!is_moderator($fid, "canmanagethreads"))
| add_breadcrumb($lang->delayed_moderation);
if(!is_moderator($fid, "canmanagethreads"))
|
Zeile 190 | Zeile 219 |
---|
$errors = array(); $customthreadtools = "";
|
$errors = array(); $customthreadtools = "";
|
$allowed_types = array('openclosethread', 'softdeleterestorethread', 'deletethread', 'move', 'stick', 'merge', 'removeredirects', 'removesubscriptions', 'approveunapprovethread');
$mybb->input['type'] = $mybb->get_input('type');
switch($db->type)
| $allowed_types = array('move', 'merge', 'removeredirects', 'removesubscriptions');
if(is_moderator($fid, "canopenclosethreads")) { $allowed_types[] = "openclosethread"; }
if(is_moderator($fid, "cansoftdeletethreads") || is_moderator($fid, "canrestorethreads")) { $allowed_types[] = "softdeleterestorethread"; }
if(is_moderator($fid, "candeletethreads")) { $allowed_types[] = "deletethread"; }
if(is_moderator($fid, "canstickunstickthreads")) { $allowed_types[] = "stick"; }
if(is_moderator($fid, "canapproveunapprovethreads"))
|
{
|
{
|
case "pgsql": case "sqlite": $query = $db->simple_select("modtools", 'tid, name', "(','||forums||',' LIKE '%,$fid,%' OR ','||forums||',' LIKE '%,-1,%' OR forums='') AND type = 't'"); break; default: $query = $db->simple_select("modtools", 'tid, name', "(CONCAT(',',forums,',') LIKE '%,$fid,%' OR CONCAT(',',forums,',') LIKE '%,-1,%' OR forums='') AND type = 't'");
| $allowed_types[] = "approveunapprovethread"; }
$mybb->input['type'] = $mybb->get_input('type');
if(is_moderator($fid, "canusecustomtools")) { switch($db->type) { case "pgsql": case "sqlite": $query = $db->simple_select("modtools", 'tid, name, `groups`', "(','||forums||',' LIKE '%,$fid,%' OR ','||forums||',' LIKE '%,-1,%' OR forums='') AND type = 't'"); break; default: $query = $db->simple_select("modtools", 'tid, name, `groups`', "(CONCAT(',',forums,',') LIKE '%,$fid,%' OR CONCAT(',',forums,',') LIKE '%,-1,%' OR forums='') AND type = 't'"); } while($tool = $db->fetch_array($query)) { if(is_member($tool['groups'])) { $allowed_types[] = "modtool_".$tool['tid'];
$tool['name'] = htmlspecialchars_uni($tool['name']);
$checked = ""; if($mybb->input['type'] == "modtool_".$tool['tid']) { $checked = "checked=\"checked\""; }
eval("\$customthreadtools .= \"".$templates->get("moderation_delayedmoderation_custommodtool")."\";"); } }
|
}
|
}
|
while($tool = $db->fetch_array($query)) { $allowed_types[] = "modtool_".$tool['tid'];
$tool['name'] = htmlspecialchars_uni($tool['name']);
$checked = ""; if($mybb->input['type'] == "modtool_".$tool['tid']) { $checked = "checked=\"checked\""; }
eval("\$customthreadtools .= \"".$templates->get("moderation_delayedmoderation_custommodtool")."\";"); }
$mybb->input['delayedmoderation'] = $mybb->get_input('delayedmoderation', 2);
| $mybb->input['delayedmoderation'] = $mybb->get_input('delayedmoderation', MyBB::INPUT_ARRAY);
|
if($mybb->input['action'] == "do_delayedmoderation" && $mybb->request_method == "post") { if(!in_array($mybb->input['type'], $allowed_types))
|
if($mybb->input['action'] == "do_delayedmoderation" && $mybb->request_method == "post") { if(!in_array($mybb->input['type'], $allowed_types))
|
{
| {
|
$mybb->input['type'] = ''; $errors[] = $lang->error_delayedmoderation_unsupported_type; }
| $mybb->input['type'] = ''; $errors[] = $lang->error_delayedmoderation_unsupported_type; }
|
Zeile 234 | Zeile 294 |
---|
$mybb->input['delayedmoderation']['method'] = ''; $errors[] = $lang->error_delayedmoderation_unsupported_method; }
|
$mybb->input['delayedmoderation']['method'] = ''; $errors[] = $lang->error_delayedmoderation_unsupported_method; }
|
|
|
if($mybb->input['type'] == 'move') {
|
if($mybb->input['type'] == 'move') {
|
$newforum = get_forum($fid);
| $newfid = (int)$mybb->input['delayedmoderation']['new_forum'];
// Make sure moderator has permission to move to the new forum $newperms = forum_permissions($newfid); if($newperms['canview'] == 0 || !is_moderator($newfid, 'canmovetononmodforum')) { $errors[] = $lang->error_movetononmodforum; }
$newforum = get_forum($newfid);
|
if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
{
| {
|
$errors[] = $lang->error_invalidforum;
|
$errors[] = $lang->error_invalidforum;
|
| }
$method = $mybb->input['delayedmoderation']['method']; if($method != "copy" && $fid == $newfid) { $errors[] = $lang->error_movetosameforum;
|
} }
| } }
|
Zeile 254 | Zeile 329 |
---|
$errors[] = $lang->error_delayedmoderation_invalid_date_month; }
|
$errors[] = $lang->error_delayedmoderation_invalid_date_month; }
|
if($mybb->input['date_year'] < gmdate('Y', TIME_NOW))
| if($mybb->input['date_year'] < gmdate('Y', TIME_NOW + $localized_time_offset))
|
{ $errors[] = $lang->error_delayedmoderation_invalid_date_year; }
|
{ $errors[] = $lang->error_delayedmoderation_invalid_date_year; }
|
$date_time = explode(' ', (string)$mybb->input['date_time']);
| $date_time = explode(' ', $mybb->get_input('date_time'));
|
$date_time = explode(':', (string)$date_time[0]);
if(stristr($mybb->input['date_time'], 'pm'))
| $date_time = explode(':', (string)$date_time[0]);
if(stristr($mybb->input['date_time'], 'pm'))
|
Zeile 271 | Zeile 346 |
---|
} }
|
} }
|
$rundate = mktime((int)$date_time[0], (int)$date_time[1], date('s', TIME_NOW), (int)$mybb->input['date_month'], (int)$mybb->input['date_day'], (int)$mybb->input['date_year']);
| $rundate = gmmktime((int)$date_time[0], (int)$date_time[1], date('s', TIME_NOW), $mybb->get_input('date_month', MyBB::INPUT_INT), $mybb->get_input('date_day', MyBB::INPUT_INT), $mybb->get_input('date_year', MyBB::INPUT_INT)) - $localized_time_offset;
|
if(!$errors) { if(is_array($mybb->input['tids'])) {
|
if(!$errors) { if(is_array($mybb->input['tids'])) {
|
$mybb->input['tids'] = implode(',' , $mybb->input['tids']);
| $mybb->input['tids'] = implode(',', $mybb->input['tids']);
|
}
|
}
|
$db->insert_query("delayedmoderation", array(
| $did = $db->insert_query("delayedmoderation", array(
|
'type' => $db->escape_string($mybb->input['type']), 'delaydateline' => (int)$rundate, 'uid' => $mybb->user['uid'], 'tids' => $db->escape_string($mybb->input['tids']), 'fid' => $fid, 'dateline' => TIME_NOW,
|
'type' => $db->escape_string($mybb->input['type']), 'delaydateline' => (int)$rundate, 'uid' => $mybb->user['uid'], 'tids' => $db->escape_string($mybb->input['tids']), 'fid' => $fid, 'dateline' => TIME_NOW,
|
'inputs' => $db->escape_string(serialize($mybb->input['delayedmoderation']))
| 'inputs' => $db->escape_string(my_serialize($mybb->input['delayedmoderation']))
|
));
|
));
|
| $plugins->run_hooks('moderation_do_delayedmoderation');
|
$rundate_format = my_date('relative', $rundate, '', 2); $lang->redirect_delayed_moderation_thread = $lang->sprintf($lang->redirect_delayed_moderation_thread, $rundate_format);
| $rundate_format = my_date('relative', $rundate, '', 2); $lang->redirect_delayed_moderation_thread = $lang->sprintf($lang->redirect_delayed_moderation_thread, $rundate_format);
|
Zeile 349 | Zeile 426 |
---|
$method_selected = array('move' => 'checked="checked"', 'redirect' => '', 'copy' => '');
$mybb->input['delayedmoderation']['redirect_expire'] = '';
|
$method_selected = array('move' => 'checked="checked"', 'redirect' => '', 'copy' => '');
$mybb->input['delayedmoderation']['redirect_expire'] = '';
|
$mybb->input['delayedmoderation']['subject'] = $thread['subject'];
| $mybb->input['delayedmoderation']['subject'] = isset($thread['subject']) ? $thread['subject'] : '';
|
$mybb->input['delayedmoderation']['threadurl'] = '';
$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "delayedmoderation[new_forum]");
| $mybb->input['delayedmoderation']['threadurl'] = '';
$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "delayedmoderation[new_forum]");
|
Zeile 439 | Zeile 516 |
---|
{ case "pgsql": case "sqlite":
|
{ case "pgsql": case "sqlite":
|
$query = $db->query(" SELECT d.*, u.username, f.name AS fname FROM ".TABLE_PREFIX."delayedmoderation d
| $query = $db->query(" SELECT d.*, u.username, f.name AS fname FROM ".TABLE_PREFIX."delayedmoderation d
|
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=d.uid) LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=d.fid) WHERE ','||d.tids||',' LIKE '%,{$tid},%'
|
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=d.uid) LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=d.fid) WHERE ','||d.tids||',' LIKE '%,{$tid},%'
|
ORDER BY d.dateline DESC LIMIT 0, 20
| ORDER BY d.dateline DESC LIMIT 0, 20
|
"); break; default:
| "); break; default:
|
Zeile 461 | Zeile 538 |
---|
"); } }
|
"); } }
|
|
|
while($delayedmod = $db->fetch_array($query)) {
|
while($delayedmod = $db->fetch_array($query)) {
|
$delayedmod['dateline'] = my_date("jS M Y, G:i", $delayedmod['delaydateline']);
| $delayedmod['dateline'] = my_date('normal', $delayedmod['delaydateline'], "", 2); $delayedmod['username'] = htmlspecialchars_uni($delayedmod['username']);
|
$delayedmod['profilelink'] = build_profile_link($delayedmod['username'], $delayedmod['uid']); $delayedmod['action'] = $actions[$delayedmod['type']]; $info = ''; if(strpos($delayedmod['tids'], ',') === false) { $delayed_thread = get_thread($delayedmod['tids']);
|
$delayedmod['profilelink'] = build_profile_link($delayedmod['username'], $delayedmod['uid']); $delayedmod['action'] = $actions[$delayedmod['type']]; $info = ''; if(strpos($delayedmod['tids'], ',') === false) { $delayed_thread = get_thread($delayedmod['tids']);
|
$info .= "<strong>{$lang->thread}</strong> <a href=\"".get_thread_link($delayedmod['tids'])."\">".htmlspecialchars_uni($delayed_thread['subject'])."</a><br />";
| $delayed_thread['link'] = get_thread_link($delayed_thread['tid']); $delayed_thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($delayed_thread['subject'])); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_thread_single")."\";");
|
} else
|
} else
|
{ $info .= "<strong>{$lang->thread}</strong> {$lang->multiple_threads}<br />";
| { eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_thread_multiple")."\";");
|
}
if($delayedmod['fname']) {
|
}
if($delayedmod['fname']) {
|
$info .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($delayedmod['fid'])."\">".htmlspecialchars_uni($delayedmod['fname'])."</a><br />";
| $delayedmod['link'] = get_forum_link($delayedmod['fid']); $delayedmod['fname'] = htmlspecialchars_uni($delayedmod['fname']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_forum")."\";");
|
} $delayedmod['inputs'] = my_unserialize($delayedmod['inputs']);
if($delayedmod['type'] == 'move') {
|
} $delayedmod['inputs'] = my_unserialize($delayedmod['inputs']);
if($delayedmod['type'] == 'move') {
|
$info .= "<strong>{$lang->new_forum}</strong> <a href=\"".get_forum_link($delayedmod['inputs']['new_forum'])."\">".htmlspecialchars_uni($forum_cache[$delayedmod['inputs']['new_forum']]['name'])."</a><br />";
| $delayedmod['link'] = get_forum_link($delayedmod['inputs']['new_forum']); $delayedmod['name'] = htmlspecialchars_uni($forum_cache[$delayedmod['inputs']['new_forum']]['name']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_new_forum")."\";");
|
if($delayedmod['inputs']['method'] == "redirect") { if((int)$delayedmod['inputs']['redirect_expire'] == 0)
| if($delayedmod['inputs']['method'] == "redirect") { if((int)$delayedmod['inputs']['redirect_expire'] == 0)
|
Zeile 496 | Zeile 582 |
---|
{ $redirect_expire_bit = (int)$delayedmod['inputs']['redirect_expire']." {$lang->days}"; }
|
{ $redirect_expire_bit = (int)$delayedmod['inputs']['redirect_expire']." {$lang->days}"; }
|
$info .= "<strong>{$lang->leave_redirect_for}</strong> {$redirect_expire_bit}<br />";
| eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_redirect")."\";");
|
} }
|
} }
|
else if($delayedmod['type'] == 'merge')
| elseif($delayedmod['type'] == 'merge')
|
{
|
{
|
$info .= "<strong>{$lang->new_subject}</strong> ".htmlspecialchars_uni($delayedmod['inputs']['subject'])."<br />"; $info .= "<strong>{$lang->thread_to_merge_with}</strong> <a href=\"".htmlspecialchars_uni($delayedmod['inputs']['threadurl'])."\">".htmlspecialchars_uni($delayedmod['inputs']['threadurl'])."</a><br />";
| $delayedmod['subject'] = htmlspecialchars_uni($delayedmod['inputs']['subject']); $delayedmod['threadurl'] = htmlspecialchars_uni($delayedmod['inputs']['threadurl']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_merge")."\";");
|
}
eval("\$delayedmods .= \"".$templates->get("moderation_delayedmodaction_notes")."\";");
| }
eval("\$delayedmods .= \"".$templates->get("moderation_delayedmodaction_notes")."\";");
|
Zeile 515 | Zeile 603 |
---|
}
$url = '';
|
}
$url = '';
|
if($mybb->get_input('tid', 1))
| if($mybb->get_input('tid', MyBB::INPUT_INT))
|
{ $lang->threads = $lang->thread;
|
{ $lang->threads = $lang->thread;
|
$threads = "<a href=\"".get_thread_link($tid)."\">{$thread['subject']}</a>";
| $thread['link'] = get_thread_link($tid); $delayedmoderation_subject = $mybb->input['delayedmoderation']['subject']; $delayedmoderation_threadurl = $mybb->input['delayedmoderation']['threadurl']; eval("\$threads = \"".$templates->get("moderation_delayedmoderation_thread")."\";");
|
eval("\$moderation_delayedmoderation_merge = \"".$templates->get("moderation_delayedmoderation_merge")."\";"); } else { if($mybb->get_input('inlinetype') == 'search')
|
eval("\$moderation_delayedmoderation_merge = \"".$templates->get("moderation_delayedmoderation_merge")."\";"); } else { if($mybb->get_input('inlinetype') == 'search')
|
{
| {
|
$tids = getids($mybb->get_input('searchid'), 'search'); $url = htmlspecialchars_uni($mybb->get_input('url')); }
| $tids = getids($mybb->get_input('searchid'), 'search'); $url = htmlspecialchars_uni($mybb->get_input('url')); }
|
Zeile 534 | Zeile 625 |
---|
} if(count($tids) < 1) {
|
} if(count($tids) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
|
}
|
|
|
$threads = $lang->sprintf($lang->threads_selected, count($tids)); $moderation_delayedmoderation_merge = ''; }
|
$threads = $lang->sprintf($lang->threads_selected, count($tids)); $moderation_delayedmoderation_merge = ''; }
|
$mybb->input['redirect_expire'] = $mybb->get_input('redirect_expire');
| $redirect_expire = $mybb->get_input('redirect_expire');
|
eval("\$moderation_delayedmoderation_move = \"".$templates->get("moderation_delayedmoderation_move")."\";");
// Generate form elements for date form
| eval("\$moderation_delayedmoderation_move = \"".$templates->get("moderation_delayedmoderation_move")."\";");
// Generate form elements for date form
|
Zeile 548 | Zeile 639 |
---|
for($day = 1; $day <= 31; ++$day) { $selected = '';
|
for($day = 1; $day <= 31; ++$day) { $selected = '';
|
if($mybb->get_input('date_day', 1) == $day) {
| if($mybb->get_input('date_day', MyBB::INPUT_INT) == $day) {
|
$selected = ' selected="selected"'; } eval('$dateday .= "'.$templates->get('moderation_delayedmoderation_date_day').'";');
| $selected = ' selected="selected"'; } eval('$dateday .= "'.$templates->get('moderation_delayedmoderation_date_day').'";');
|
Zeile 559 | Zeile 650 |
---|
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month) { $datemonth[$month] = '';
|
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month) { $datemonth[$month] = '';
|
if($mybb->get_input('date_month', 1) == (int)$month)
| if($mybb->get_input('date_month', MyBB::INPUT_INT) == (int)$month)
|
{ $datemonth[$month] = ' selected="selected"'; }
| { $datemonth[$month] = ' selected="selected"'; }
|
Zeile 567 | Zeile 658 |
---|
eval('$datemonth = "'.$templates->get('moderation_delayedmoderation_date_month').'";');
|
eval('$datemonth = "'.$templates->get('moderation_delayedmoderation_date_month').'";');
|
$dateyear = gmdate('Y', TIME_NOW); $datetime = gmdate('g:i a', TIME_NOW);
| $dateyear = gmdate('Y', TIME_NOW + $localized_time_offset); $datetime = gmdate($mybb->settings['timeformat'], TIME_NOW + $localized_time_offset);
$openclosethread = ''; if(is_moderator($fid, "canopenclosethreads")) { eval('$openclosethread = "'.$templates->get('moderation_delayedmoderation_openclose').'";'); }
$softdeleterestorethread = ''; if(is_moderator($fid, "cansoftdeletethreads") || is_moderator($fid, "canrestorethreads")) { eval('$softdeleterestorethread = "'.$templates->get('moderation_delayedmoderation_softdeleterestore').'";'); }
$deletethread = ''; if(is_moderator($fid, "candeletethreads")) { eval('$deletethread = "'.$templates->get('moderation_delayedmoderation_delete').'";'); }
$stickunstickthread = ''; if(is_moderator($fid, "canstickunstickthreads")) { eval('$stickunstickthread = "'.$templates->get('moderation_delayedmoderation_stick').'";'); }
$approveunapprovethread = ''; if(is_moderator($fid, "canapproveunapprovethreads")) { eval('$approveunapprovethread = "'.$templates->get('moderation_delayedmoderation_approve').'";'); }
|
$plugins->run_hooks("moderation_delayedmoderation");
eval("\$delayedmoderation = \"".$templates->get("moderation_delayedmoderation")."\";");
| $plugins->run_hooks("moderation_delayedmoderation");
eval("\$delayedmoderation = \"".$templates->get("moderation_delayedmoderation")."\";");
|
Zeile 582 | Zeile 703 |
---|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canopenclosethreads"))
|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canopenclosethreads"))
|
{
| {
|
error_no_permission();
|
error_no_permission();
|
| }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error);
|
}
if($thread['closed'] == 1)
| }
if($thread['closed'] == 1)
|
Zeile 597 | Zeile 723 |
---|
$openclose = $lang->closed; $redirect = $lang->redirect_closethread; $moderation->close_threads($tid);
|
$openclose = $lang->closed; $redirect = $lang->redirect_closethread; $moderation->close_threads($tid);
|
}
$lang->mod_process = $lang->sprintf($lang->mod_process, $openclose);
log_moderator_action($modlogdata, $lang->mod_process);
moderation_redirect(get_thread_link($thread['tid']), $redirect); break;
| }
$lang->mod_process = $lang->sprintf($lang->mod_process, $openclose);
log_moderator_action($modlogdata, $lang->mod_process);
moderation_redirect(get_thread_link($thread['tid']), $redirect); break;
|
// Stick or unstick that post to the top bab! case "stick": // Verify incoming POST request
| // Stick or unstick that post to the top bab! case "stick": // Verify incoming POST request
|
Zeile 616 | Zeile 742 |
---|
error_no_permission(); }
|
error_no_permission(); }
|
$plugins->run_hooks("moderation_stick");
| if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
$plugins->run_hooks("moderation_stick");
|
if($thread['sticky'] == 1) { $stuckunstuck = $lang->unstuck; $redirect = $lang->redirect_unstickthread; $moderation->unstick_threads($tid);
|
if($thread['sticky'] == 1) { $stuckunstuck = $lang->unstuck; $redirect = $lang->redirect_unstickthread; $moderation->unstick_threads($tid);
|
}
| }
|
else { $stuckunstuck = $lang->stuck;
| else { $stuckunstuck = $lang->stuck;
|
Zeile 645 | Zeile 776 |
---|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
{ error_no_permission();
| { error_no_permission(); }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error);
|
}
$plugins->run_hooks("moderation_removeredirects");
| }
$plugins->run_hooks("moderation_removeredirects");
|
Zeile 719 | Zeile 855 |
---|
$plugins->run_hooks("moderation_deletepoll");
|
$plugins->run_hooks("moderation_deletepoll");
|
$query = $db->simple_select("polls", "*", "tid='$tid'");
| $query = $db->simple_select("polls", "pid", "tid='$tid'");
|
$poll = $db->fetch_array($query); if(!$poll) {
|
$poll = $db->fetch_array($query); if(!$poll) {
|
error($lang->error_invalidpoll);
| error($lang->error_invalidpoll, $lang->error);
|
}
eval("\$deletepoll = \"".$templates->get("moderation_deletepoll")."\";");
| }
eval("\$deletepoll = \"".$templates->get("moderation_deletepoll")."\";");
|
Zeile 735 | Zeile 871 |
---|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
| if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
|
if(!isset($mybb->input['delete'])) {
| if(!isset($mybb->input['delete'])) {
|
Zeile 747 | Zeile 888 |
---|
error_no_permission(); } }
|
error_no_permission(); } }
|
$query = $db->simple_select("polls", "*", "tid='$tid'");
| $query = $db->simple_select("polls", "pid", "tid = $tid");
|
$poll = $db->fetch_array($query); if(!$poll) {
|
$poll = $db->fetch_array($query); if(!$poll) {
|
error($lang->error_invalidpoll);
| error($lang->error_invalidpoll, $lang->error);
|
}
$plugins->run_hooks("moderation_do_deletepoll");
| }
$plugins->run_hooks("moderation_do_deletepoll");
|
Zeile 774 | Zeile 915 |
---|
{ error_no_permission(); }
|
{ error_no_permission(); }
|
| if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
|
$thread = get_thread($tid);
$plugins->run_hooks("moderation_approvethread");
$lang->thread_approved = $lang->sprintf($lang->thread_approved, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_approved);
|
$thread = get_thread($tid);
$plugins->run_hooks("moderation_approvethread");
$lang->thread_approved = $lang->sprintf($lang->thread_approved, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_approved);
|
|
|
$moderation->approve_threads($tid, $fid);
|
$moderation->approve_threads($tid, $fid);
|
|
|
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadapproved); break;
// Unapprove a thread
|
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadapproved); break;
// Unapprove a thread
|
case "unapprovethread":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canapproveunapprovethreads")) { error_no_permission(); } $thread = get_thread($tid);
| case "unapprovethread":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canapproveunapprovethreads")) { error_no_permission(); }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
$thread = get_thread($tid);
|
$plugins->run_hooks("moderation_unapprovethread");
$lang->thread_unapproved = $lang->sprintf($lang->thread_unapproved, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_unapproved);
|
$plugins->run_hooks("moderation_unapprovethread");
$lang->thread_unapproved = $lang->sprintf($lang->thread_unapproved, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_unapproved);
|
$moderation->unapprove_threads($tid);
| $moderation->unapprove_threads($tid);
|
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadunapproved); break;
// Restore a thread
|
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadunapproved); break;
// Restore a thread
|
case "restorethread":
| case "restorethread":
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
| // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
Zeile 825 | Zeile 978 |
---|
$lang->thread_restored = $lang->sprintf($lang->thread_restored, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_restored);
|
$lang->thread_restored = $lang->sprintf($lang->thread_restored, $thread['subject']); log_moderator_action($modlogdata, $lang->thread_restored);
|
$moderation->restore_threads($tid, $fid);
| $moderation->restore_threads($tid);
|
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadrestored); break;
| moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadrestored); break;
|
Zeile 837 | Zeile 990 |
---|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "cansoftdeletethreads"))
|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "cansoftdeletethreads"))
|
{ error_no_permission();
| { error_no_permission();
|
} $thread = get_thread($tid);
| } $thread = get_thread($tid);
|
Zeile 850 | Zeile 1003 |
---|
$moderation->soft_delete_threads($tid);
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadsoftdeleted);
|
$moderation->soft_delete_threads($tid);
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadsoftdeleted);
|
break;
| break;
|
// Move a thread case "move": add_breadcrumb($lang->nav_move);
|
// Move a thread case "move": add_breadcrumb($lang->nav_move);
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
$plugins->run_hooks("moderation_move");
$forumselect = build_forum_jump("", '', 1, '', 0, true, '', "moveto");
| if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
$plugins->run_hooks("moderation_move");
$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");
|
eval("\$movethread = \"".$templates->get("moderation_move")."\";"); output_page($movethread); break;
| eval("\$movethread = \"".$templates->get("moderation_move")."\";"); output_page($movethread); break;
|
Zeile 873 | Zeile 1031 |
---|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
$moveto = $mybb->get_input('moveto', 1);
| $moveto = $mybb->get_input('moveto', MyBB::INPUT_INT);
|
$method = $mybb->get_input('method');
|
$method = $mybb->get_input('method');
|
|
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
|
|
|
// Check if user has moderator permission to move to destination if(!is_moderator($moveto, "canmanagethreads") && !is_moderator($fid, "canmovetononmodforum")) { error_no_permission(); }
|
// Check if user has moderator permission to move to destination if(!is_moderator($moveto, "canmanagethreads") && !is_moderator($fid, "canmovetononmodforum")) { error_no_permission(); }
|
| if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
|
$newperms = forum_permissions($moveto);
|
$newperms = forum_permissions($moveto);
|
if($newperms['canview'] == 0 && !is_moderator($fid, "canmovetononmodforum"))
| if($newperms['canview'] == 0 && !is_moderator($fid, "canmovetononmodforum"))
|
{
|
{
|
error_no_permission();
| error($lang->error_movetononmodforum, $lang->error);
|
}
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '') {
|
}
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '') {
|
error($lang->error_invalidforum);
| error($lang->error_invalidforum, $lang->error);
|
} if($method != "copy" && $thread['fid'] == $moveto) {
|
} if($method != "copy" && $thread['fid'] == $moveto) {
|
error($lang->error_movetosameforum); }
$expire = 0; if($mybb->get_input('redirect_expire', 1) > 0) { $expire = TIME_NOW + ($mybb->get_input('redirect_expire', 1) * 86400);
| error($lang->error_movetosameforum, $lang->error); }
$plugins->run_hooks('moderation_do_move');
$expire = 0; if($mybb->get_input('redirect_expire', MyBB::INPUT_INT) > 0) { $expire = TIME_NOW + ($mybb->get_input('redirect_expire', MyBB::INPUT_INT) * 86400);
|
}
$the_thread = $tid;
|
}
$the_thread = $tid;
|
|
|
$newtid = $moderation->move_thread($tid, $moveto, $method, $expire);
switch($method)
|
$newtid = $moderation->move_thread($tid, $moveto, $method, $expire);
switch($method)
|
{
| {
|
case "copy": log_moderator_action($modlogdata, $lang->thread_copied); break;
| case "copy": log_moderator_action($modlogdata, $lang->thread_copied); break;
|
Zeile 929 | Zeile 1096 |
---|
// Viewing thread notes case "viewthreadnotes": if(!is_moderator($fid))
|
// Viewing thread notes case "viewthreadnotes": if(!is_moderator($fid))
|
{
| {
|
error_no_permission();
|
error_no_permission();
|
}
| }
|
// Make sure we are looking at a real thread here. if(!$thread)
|
// Make sure we are looking at a real thread here. if(!$thread)
|
{ error($lang->error_nomember); }
| { error($lang->error_nomember, $lang->error); }
$plugins->run_hooks('moderation_viewthreadnotes');
|
$lang->view_notes_for = $lang->sprintf($lang->view_notes_for, $thread['subject']);
$thread['notes'] = nl2br(htmlspecialchars_uni($thread['notes']));
| $lang->view_notes_for = $lang->sprintf($lang->view_notes_for, $thread['subject']);
$thread['notes'] = nl2br(htmlspecialchars_uni($thread['notes']));
|
Zeile 973 | Zeile 1142 |
---|
$modactions = ''; while($modaction = $db->fetch_array($query)) {
|
$modactions = ''; while($modaction = $db->fetch_array($query)) {
|
$modaction['dateline'] = my_date("jS M Y, G:i", $modaction['dateline']);
| $modaction['dateline'] = my_date('relative', $modaction['dateline']); $modaction['username'] = htmlspecialchars_uni($modaction['username']);
|
$modaction['profilelink'] = build_profile_link($modaction['username'], $modaction['uid']); $modaction['action'] = htmlspecialchars_uni($modaction['action']); $info = ''; if($modaction['tsubject']) {
|
$modaction['profilelink'] = build_profile_link($modaction['username'], $modaction['uid']); $modaction['action'] = htmlspecialchars_uni($modaction['action']); $info = ''; if($modaction['tsubject']) {
|
$info .= "<strong>$lang->thread</strong> <a href=\"".get_thread_link($modaction['tid'])."\">".htmlspecialchars_uni($modaction['tsubject'])."</a><br />";
| $modaction['tsubject'] = htmlspecialchars_uni($parser->parse_badwords($modaction['tsubject'])); $modaction['threadlink'] = get_thread_link($modaction['tid']); eval("\$info .= \"".$templates->get("moderation_threadnotes_modaction_thread")."\";");
|
} if($modaction['fname']) {
|
} if($modaction['fname']) {
|
$info .= "<strong>$lang->forum</strong> <a href=\"".get_forum_link($modaction['fid'])."\">".htmlspecialchars_uni($modaction['fname'])."</a><br />";
| $modaction['fname'] = htmlspecialchars_uni($modaction['fname']); $modaction['forumlink'] = get_forum_link($modaction['fid']); eval("\$info .= \"".$templates->get("moderation_threadnotes_modaction_forum")."\";");
|
} if($modaction['psubject'])
|
} if($modaction['psubject'])
|
{ $info .= "<strong>$lang->post</strong> <a href=\"".get_post_link($modaction['pid'])."#pid".$modaction['pid']."\">".htmlspecialchars_uni($modaction['psubject'])."</a>"; }
| {
$modaction['psubject'] = htmlspecialchars_uni($parser->parse_badwords($modaction['psubject'])); $modaction['postlink'] = get_post_link($modaction['pid']); eval("\$info .= \"".$templates->get("moderation_threadnotes_modaction_post")."\";"); }
|
eval("\$modactions .= \"".$templates->get("moderation_threadnotes_modaction")."\";"); $trow = alt_trow(); }
| eval("\$modactions .= \"".$templates->get("moderation_threadnotes_modaction")."\";"); $trow = alt_trow(); }
|
Zeile 1055 | Zeile 1232 |
---|
$delayedmods = ''; while($delayedmod = $db->fetch_array($query)) {
|
$delayedmods = ''; while($delayedmod = $db->fetch_array($query)) {
|
$delayedmod['dateline'] = my_date("jS M Y, G:i", $delayedmod['delaydateline']);
| $delayedmod['dateline'] = my_date('normal', $delayedmod['delaydateline'], "", 2); $delayedmod['username'] = htmlspecialchars_uni($delayedmod['username']);
|
$delayedmod['profilelink'] = build_profile_link($delayedmod['username'], $delayedmod['uid']); $delayedmod['action'] = $actions[$delayedmod['type']]; $info = ''; if(strpos($delayedmod['tids'], ',') === false) {
|
$delayedmod['profilelink'] = build_profile_link($delayedmod['username'], $delayedmod['uid']); $delayedmod['action'] = $actions[$delayedmod['type']]; $info = ''; if(strpos($delayedmod['tids'], ',') === false) {
|
$info .= "<strong>{$lang->thread}</strong> <a href=\"".get_thread_link($delayedmod['tids'])."\">{$thread['subject']}</a><br />";
| $delayed_thread['link'] = get_thread_link($delayedmod['tids']); $delayed_thread['subject'] = htmlspecialchars_uni($thread['subject']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_thread_single")."\";");
|
} else {
|
} else {
|
$info .= "<strong>{$lang->thread}</strong> {$lang->multiple_threads}<br />";
| eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_thread_multiple")."\";");
|
}
if($delayedmod['fname']) {
|
}
if($delayedmod['fname']) {
|
$info .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($delayedmod['fid'])."\">".htmlspecialchars_uni($delayedmod['fname'])."</a><br />";
| $delayedmod['link'] = get_forum_link($delayedmod['fid']); $delayedmod['fname'] = htmlspecialchars_uni($delayedmod['fname']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_forum")."\";");
|
} $delayedmod['inputs'] = my_unserialize($delayedmod['inputs']);
if($delayedmod['type'] == 'move') {
|
} $delayedmod['inputs'] = my_unserialize($delayedmod['inputs']);
if($delayedmod['type'] == 'move') {
|
$info .= "<strong>{$lang->new_forum}</strong> <a href=\"".get_forum_link($delayedmod['inputs']['new_forum'])."\">".htmlspecialchars_uni($forum_cache[$delayedmod['inputs']['new_forum']]['name'])."</a><br />";
| $delayedmod['link'] = get_forum_link($delayedmod['inputs']['new_forum']); $delayedmod['name'] = htmlspecialchars_uni($forum_cache[$delayedmod['inputs']['new_forum']]['name']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_new_forum")."\";");
|
if($delayedmod['inputs']['method'] == "redirect") {
|
if($delayedmod['inputs']['method'] == "redirect") {
|
$info .= "<strong>{$lang->leave_redirect_for}</strong> ".(int)$delayedmod['inputs']['redirect_expire']." {$lang->days}<br />";
| if((int)$delayedmod['inputs']['redirect_expire'] == 0) { $redirect_expire_bit = $lang->redirect_forever; } else { $redirect_expire_bit = (int)$delayedmod['inputs']['redirect_expire']." {$lang->days}"; }
eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_redirect")."\";");
|
} }
|
} }
|
else if($delayedmod['type'] == 'merge')
| elseif($delayedmod['type'] == 'merge')
|
{
|
{
|
$info .= "<strong>{$lang->new_subject}</strong> ".htmlspecialchars_uni($delayedmod['inputs']['subject'])."<br />"; $info .= "<strong>{$lang->thread_to_merge_with}</strong> <a href=\"".htmlspecialchars_uni($delayedmod['inputs']['threadurl'])."\">".htmlspecialchars_uni($delayedmod['inputs']['threadurl'])."</a><br />";
| $delayedmod['subject'] = htmlspecialchars_uni($delayedmod['inputs']['subject']); $delayedmod['threadurl'] = htmlspecialchars_uni($delayedmod['inputs']['threadurl']); eval("\$info .= \"".$templates->get("moderation_delayedmodaction_notes_merge")."\";");
|
}
eval("\$delayedmods .= \"".$templates->get("moderation_threadnotes_delayedmodaction")."\";"); $trow = alt_trow(); } if(!$delayedmods)
|
}
eval("\$delayedmods .= \"".$templates->get("moderation_threadnotes_delayedmodaction")."\";"); $trow = alt_trow(); } if(!$delayedmods)
|
{
| {
|
$cols = 4; eval("\$delayedmods = \"".$templates->get("moderation_delayedmodaction_error")."\";");
|
$cols = 4; eval("\$delayedmods = \"".$templates->get("moderation_delayedmodaction_error")."\";");
|
}
$plugins->run_hooks("moderation_threadnotes");
| }
$plugins->run_hooks("moderation_threadnotes");
|
eval("\$threadnotes = \"".$templates->get("moderation_threadnotes")."\";"); output_page($threadnotes);
|
eval("\$threadnotes = \"".$templates->get("moderation_threadnotes")."\";"); output_page($threadnotes);
|
break;
| break;
|
// Update the thread notes! case "do_threadnotes":
| // Update the thread notes! case "do_threadnotes":
|
Zeile 1110 | Zeile 1305 |
---|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
{ error_no_permission(); }
| { error_no_permission(); }
|
$plugins->run_hooks("moderation_do_threadnotes");
| $plugins->run_hooks("moderation_do_threadnotes");
|
Zeile 1123 | Zeile 1318 |
---|
$db->update_query("threads", $sqlarray, "tid='$tid'"); moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadnotesupdated); break;
|
$db->update_query("threads", $sqlarray, "tid='$tid'"); moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadnotesupdated); break;
|
|
|
// Let's look up the ip address of a post case "getip": add_breadcrumb($lang->nav_getip);
|
// Let's look up the ip address of a post case "getip": add_breadcrumb($lang->nav_getip);
|
if(!is_moderator($fid, "canviewips") || !$mybb->usergroup['issupermod'])
| if(!is_moderator($fid, "canviewips"))
|
{ error_no_permission(); }
| { error_no_permission(); }
|
Zeile 1135 | Zeile 1330 |
---|
$post['ipaddress'] = my_inet_ntop($db->unescape_binary($post['ipaddress'])); $hostname = @gethostbyaddr($post['ipaddress']); if(!$hostname || $hostname == $post['ipaddress'])
|
$post['ipaddress'] = my_inet_ntop($db->unescape_binary($post['ipaddress'])); $hostname = @gethostbyaddr($post['ipaddress']); if(!$hostname || $hostname == $post['ipaddress'])
|
{ $hostname = $lang->resolve_fail; }
$username = build_profile_link($post['username'], $post['uid']);
| { $hostname = $lang->resolve_fail; }
$post['username'] = htmlspecialchars_uni($post['username']); $username = build_profile_link($post['username'], $post['uid']);
|
// Moderator options $modoptions = ""; if($mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canuseipsearch'] == 1) { $ipaddress = $post['ipaddress'];
|
// Moderator options $modoptions = ""; if($mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canuseipsearch'] == 1) { $ipaddress = $post['ipaddress'];
|
eval("\$modoptions = \"".$templates->get("moderation_getip_modoptions")."\";"); }
| eval("\$modoptions = \"".$templates->get("moderation_getip_modoptions")."\";"); }
$plugins->run_hooks('moderation_getip');
|
|
|
eval("\$getip = \"".$templates->get("moderation_getip")."\";"); output_page($getip); break;
| if($modal) { eval("\$getip = \"".$templates->get("moderation_getip_modal", 1, 0)."\";"); echo $getip; exit; } else { eval("\$getip = \"".$templates->get("moderation_getip")."\";"); output_page($getip); break; }
|
// Let's look up the ip address of a PM case "getpmip": if($pmid <= 0) {
|
// Let's look up the ip address of a PM case "getpmip": if($pmid <= 0) {
|
error($lang->error_invalidpm);
| error($lang->error_invalidpm, $lang->error);
|
} add_breadcrumb($lang->nav_pms, "private.php"); $pm['subject'] = htmlspecialchars_uni($parser->parse_badwords($pm['subject']));
| } add_breadcrumb($lang->nav_pms, "private.php"); $pm['subject'] = htmlspecialchars_uni($parser->parse_badwords($pm['subject']));
|
Zeile 1166 | Zeile 1373 |
---|
if(!$mybb->usergroup['issupermod']) { error_no_permission();
|
if(!$mybb->usergroup['issupermod']) { error_no_permission();
|
}
| }
|
$pm['ipaddress'] = my_inet_ntop($db->unescape_binary($pm['ipaddress'])); $hostname = @gethostbyaddr($pm['ipaddress']); if(!$hostname || $hostname == $pm['ipaddress']) { $hostname = $lang->resolve_fail;
|
$pm['ipaddress'] = my_inet_ntop($db->unescape_binary($pm['ipaddress'])); $hostname = @gethostbyaddr($pm['ipaddress']); if(!$hostname || $hostname == $pm['ipaddress']) { $hostname = $lang->resolve_fail;
|
}
$user = get_user($pm['uid']); $pm['username'] = $user['username'];
| }
|
|
|
$username = build_profile_link($pm['username'], $pm['uid']);
| $name = $db->fetch_field($db->simple_select('users', 'username', "uid = {$pm['fromid']}"), 'username'); $username = build_profile_link($name, $pm['fromid']);
|
// Moderator options $modoptions = "";
| // Moderator options $modoptions = "";
|
Zeile 1188 | Zeile 1393 |
---|
eval("\$modoptions = \"".$templates->get("moderation_getip_modoptions")."\";"); }
|
eval("\$modoptions = \"".$templates->get("moderation_getip_modoptions")."\";"); }
|
eval("\$getpmip = \"".$templates->get("moderation_getpmip")."\";"); output_page($getpmip); break;
| $plugins->run_hooks('moderation_getpmip');
if($modal) { eval("\$getpmip = \"".$templates->get("moderation_getpmip_modal", 1, 0)."\";"); echo $getpmip; exit; } else { eval("\$getpmip = \"".$templates->get("moderation_getpmip")."\";"); output_page($getpmip); break; }
|
// Merge threads case "merge": add_breadcrumb($lang->nav_merge);
|
// Merge threads case "merge": add_breadcrumb($lang->nav_merge);
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
$plugins->run_hooks("moderation_merge");
| if(!is_moderator($fid, "canmanagethreads")) { error_no_permission(); }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
$plugins->run_hooks("moderation_merge");
|
eval("\$merge = \"".$templates->get("moderation_merge")."\";"); output_page($merge); break;
| eval("\$merge = \"".$templates->get("moderation_merge")."\";"); output_page($merge); break;
|
Zeile 1213 | Zeile 1434 |
---|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
verify_post_check($mybb->get_input('my_post_key'));
if(!is_moderator($fid, "canmanagethreads"))
|
{
| {
|
error_no_permission();
|
error_no_permission();
|
| }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error);
|
}
$plugins->run_hooks("moderation_do_merge");
| }
$plugins->run_hooks("moderation_do_merge");
|
Zeile 1236 | Zeile 1462 |
---|
}
if($postmatch[1])
|
}
if($postmatch[1])
|
{ $parameters['pid'] = $postmatch[1]; } } else { // Get thread to merge's tid the normal way
| { $parameters['pid'] = $postmatch[1]; } } else { // Get thread to merge's tid the normal way
|
$splitloc = explode(".php", $mybb->input['threadurl']); $temp = explode("&", my_substr($splitloc[1], 1));
| $splitloc = explode(".php", $mybb->input['threadurl']); $temp = explode("&", my_substr($splitloc[1], 1));
|
Zeile 1277 | Zeile 1503 |
---|
$mergethread = get_thread($mergetid); if(!$mergethread) {
|
$mergethread = get_thread($mergetid); if(!$mergethread) {
|
error($lang->error_badmergeurl);
| error($lang->error_badmergeurl, $lang->error);
|
} if($mergetid == $tid) { // sanity check
|
} if($mergetid == $tid) { // sanity check
|
error($lang->error_mergewithself);
| error($lang->error_mergewithself, $lang->error);
|
} if(!is_moderator($mergethread['fid'], "canmanagethreads")) {
| } if(!is_moderator($mergethread['fid'], "canmanagethreads")) {
|
Zeile 1290 | Zeile 1516 |
---|
if(isset($mybb->input['subject'])) { $subject = $mybb->get_input('subject');
|
if(isset($mybb->input['subject'])) { $subject = $mybb->get_input('subject');
|
} else
| } else
|
{ $subject = $thread['subject'];
|
{ $subject = $thread['subject'];
|
}
$moderation->merge_threads($mergetid, $tid, $subject);
| }
$moderation->merge_threads($mergetid, $tid, $subject);
|
log_moderator_action($modlogdata, $lang->thread_merged);
moderation_redirect(get_thread_link($tid), $lang->redirect_threadsmerged);
| log_moderator_action($modlogdata, $lang->thread_merged);
moderation_redirect(get_thread_link($tid), $lang->redirect_threadsmerged);
|
Zeile 1309 | Zeile 1535 |
---|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission();
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission();
|
}
| }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
|
$query = $db->query(" SELECT p.*, u.* FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid) WHERE tid='$tid'
|
$query = $db->query(" SELECT p.*, u.* FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid) WHERE tid='$tid'
|
ORDER BY dateline ASC
| ORDER BY dateline ASC, pid ASC
|
");
|
");
|
|
|
$numposts = $db->num_rows($query); if($numposts <= 1) {
|
$numposts = $db->num_rows($query); if($numposts <= 1) {
|
error($lang->error_cantsplitonepost);
| error($lang->error_cantsplitonepost, $lang->error);
|
}
$altbg = "trow1";
| }
$altbg = "trow1";
|
Zeile 1328 | Zeile 1561 |
---|
while($post = $db->fetch_array($query)) { $postdate = my_date('relative', $post['dateline']);
|
while($post = $db->fetch_array($query)) { $postdate = my_date('relative', $post['dateline']);
|
| $post['username'] = htmlspecialchars_uni($post['username']);
|
$parser_options = array( "allow_html" => $forum['allowhtml'],
| $parser_options = array( "allow_html" => $forum['allowhtml'],
|
Zeile 1340 | Zeile 1574 |
---|
if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0;
|
if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0;
|
}
| }
|
$message = $parser->parse_message($post['message'], $parser_options); eval("\$posts .= \"".$templates->get("moderation_split_post")."\";"); $altbg = alt_trow(); }
|
$message = $parser->parse_message($post['message'], $parser_options); eval("\$posts .= \"".$templates->get("moderation_split_post")."\";"); $altbg = alt_trow(); }
|
| clearinline($tid, 'thread');
|
$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");
$plugins->run_hooks("moderation_split");
| $forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");
$plugins->run_hooks("moderation_split");
|
Zeile 1363 | Zeile 1599 |
---|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission();
|
if(!is_moderator($fid, "canmanagethreads")) { error_no_permission();
|
}
| }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error); }
|
$plugins->run_hooks("moderation_do_split");
|
$plugins->run_hooks("moderation_do_split");
|
$mybb->input['splitpost'] = $mybb->get_input('splitpost', 2);
| $mybb->input['splitpost'] = $mybb->get_input('splitpost', MyBB::INPUT_ARRAY);
|
if(empty($mybb->input['splitpost'])) {
|
if(empty($mybb->input['splitpost'])) {
|
error($lang->error_nosplitposts);
| error($lang->error_nosplitposts, $lang->error);
|
} $query = $db->simple_select("posts", "COUNT(*) AS totalposts", "tid='{$tid}'"); $count = $db->fetch_array($query);
if($count['totalposts'] == 1)
|
} $query = $db->simple_select("posts", "COUNT(*) AS totalposts", "tid='{$tid}'"); $count = $db->fetch_array($query);
if($count['totalposts'] == 1)
|
{ error($lang->error_cantsplitonepost); }
| { error($lang->error_cantsplitonepost, $lang->error); }
|
if($count['totalposts'] == count($mybb->input['splitpost'])) {
|
if($count['totalposts'] == count($mybb->input['splitpost'])) {
|
error($lang->error_cantsplitall);
| error($lang->error_cantsplitall, $lang->error);
|
}
if(!empty($mybb->input['moveto']))
|
}
if(!empty($mybb->input['moveto']))
|
{ $moveto = $mybb->get_input('moveto', 1);
| { $moveto = $mybb->get_input('moveto', MyBB::INPUT_INT);
|
} else { $moveto = $fid;
|
} else { $moveto = $fid;
|
}
| }
|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
{ error($lang->error_invalidforum); }
| { error($lang->error_invalidforum, $lang->error); }
|
$pids = array();
// move the selected posts over $query = $db->simple_select("posts", "pid", "tid='$tid'"); while($post = $db->fetch_array($query))
|
$pids = array();
// move the selected posts over $query = $db->simple_select("posts", "pid", "tid='$tid'"); while($post = $db->fetch_array($query))
|
{
| {
|
if(isset($mybb->input['splitpost'][$post['pid']]) && $mybb->input['splitpost'][$post['pid']] == 1) { $pids[] = $post['pid']; } mark_reports($post['pid'], "post");
|
if(isset($mybb->input['splitpost'][$post['pid']]) && $mybb->input['splitpost'][$post['pid']] == 1) { $pids[] = $post['pid']; } mark_reports($post['pid'], "post");
|
}
| }
|
$newtid = $moderation->split_posts($pids, $tid, $moveto, $mybb->get_input('newsubject'));
| $newtid = $moderation->split_posts($pids, $tid, $moveto, $mybb->get_input('newsubject'));
|
Zeile 1422 | Zeile 1663 |
---|
// Delete Thread Subscriptions case "removesubscriptions":
|
// Delete Thread Subscriptions case "removesubscriptions":
|
| // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
if(!is_moderator($fid, "canmanagethreads"))
|
if(!is_moderator($fid, "canmanagethreads"))
|
{
| {
|
error_no_permission();
|
error_no_permission();
|
| }
if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error);
|
}
$plugins->run_hooks("moderation_removesubscriptions");
| }
$plugins->run_hooks("moderation_removesubscriptions");
|
Zeile 1439 | Zeile 1689 |
---|
// Delete Threads - Inline moderation case "multideletethreads": add_breadcrumb($lang->nav_multi_deletethreads);
|
// Delete Threads - Inline moderation case "multideletethreads": add_breadcrumb($lang->nav_multi_deletethreads);
|
if(!empty($mybb->input['searchid']))
| if(!empty($mybb->input['searchid']))
|
{ // From search page $threads = getids($mybb->get_input('searchid'), 'search');
| { // From search page $threads = getids($mybb->get_input('searchid'), 'search');
|
Zeile 1459 | Zeile 1709 |
---|
} if(count($threads) < 1) {
|
} if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$inlineids = implode("|", $threads); if($mybb->get_input('inlinetype') == 'search') {
|
}
$inlineids = implode("|", $threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1496 | Zeile 1746 |
---|
log_moderator_action($modlogdata, $lang->multi_deleted_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_deleted_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1532 | Zeile 1782 |
---|
if(count($threads) < 1) {
|
if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$moderation->open_threads($threads);
log_moderator_action($modlogdata, $lang->multi_opened_threads);
|
}
$moderation->open_threads($threads);
log_moderator_action($modlogdata, $lang->multi_opened_threads);
|
if($mybb->get_input('inlinetype') == 'search')
| if($mybb->get_input('inlinetype') == 'search')
|
{
|
{
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1574 | Zeile 1824 |
---|
} if(count($threads) < 1) {
|
} if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$moderation->close_threads($threads);
| }
$moderation->close_threads($threads);
|
Zeile 1582 | Zeile 1832 |
---|
log_moderator_action($modlogdata, $lang->multi_closed_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_closed_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1616 | Zeile 1866 |
---|
} if(count($threads) < 1) {
|
} if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$moderation->approve_threads($threads, $fid);
| }
$moderation->approve_threads($threads, $fid);
|
Zeile 1624 | Zeile 1874 |
---|
log_moderator_action($modlogdata, $lang->multi_approved_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_approved_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1635 | Zeile 1885 |
---|
break;
// Unapprove threads - Inline moderation
|
break;
// Unapprove threads - Inline moderation
|
case "multiunapprovethreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid']))
| case "multiunapprovethreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid']))
|
{ // From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canapproveunapprovethreads'))
|
{ // From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canapproveunapprovethreads'))
|
{ error_no_permission(); } } else {
| { error_no_permission(); } } else {
|
$threads = getids($fid, 'forum'); if(!is_moderator($fid, 'canapproveunapprovethreads')) {
| $threads = getids($fid, 'forum'); if(!is_moderator($fid, 'canapproveunapprovethreads')) {
|
Zeile 1658 | Zeile 1908 |
---|
} } if(count($threads) < 1)
|
} } if(count($threads) < 1)
|
{ error($lang->error_inline_nothreadsselected); }
| { error($lang->error_inline_nothreadsselected, $lang->error); }
|
$moderation->unapprove_threads($threads, $fid);
log_moderator_action($modlogdata, $lang->multi_unapproved_threads); if($mybb->get_input('inlinetype') == 'search')
|
$moderation->unapprove_threads($threads, $fid);
log_moderator_action($modlogdata, $lang->multi_unapproved_threads); if($mybb->get_input('inlinetype') == 'search')
|
{ clearinline($mybb->get_input('searchid', 1), 'search');
| { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1678 | Zeile 1928 |
---|
break;
// Restore threads - Inline moderation
|
break;
// Restore threads - Inline moderation
|
case "multirestorethreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid'])) { // From search page
| case "multirestorethreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid'])) { // From search page
|
$threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canrestorethreads'))
|
$threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canrestorethreads'))
|
{ error_no_permission(); } }
| { error_no_permission(); } }
|
else { $threads = getids($fid, 'forum');
| else { $threads = getids($fid, 'forum');
|
Zeile 1701 | Zeile 1951 |
---|
} } if(count($threads) < 1)
|
} } if(count($threads) < 1)
|
{ error($lang->error_inline_nothreadsselected); }
$moderation->restore_threads($threads, $fid);
| { error($lang->error_inline_nothreadsselected, $lang->error); }
$moderation->restore_threads($threads);
|
log_moderator_action($modlogdata, $lang->multi_restored_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_restored_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1731 | Zeile 1981 |
---|
// From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'cansoftdeletethreads'))
|
// From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'cansoftdeletethreads'))
|
{ error_no_permission(); } } else
| { error_no_permission(); } } else
|
{ $threads = getids($fid, 'forum'); if(!is_moderator($fid, 'cansoftdeletethreads'))
|
{ $threads = getids($fid, 'forum'); if(!is_moderator($fid, 'cansoftdeletethreads'))
|
{ error_no_permission(); } } if(count($threads) < 1) { error($lang->error_inline_nothreadsselected);
| { error_no_permission(); } } if(count($threads) < 1) { error($lang->error_inline_nothreadsselected, $lang->error);
|
}
|
}
|
$moderation->soft_delete_threads($threads, $fid);
| $moderation->soft_delete_threads($threads);
|
log_moderator_action($modlogdata, $lang->multi_soft_deleted_threads); if($mybb->get_input('inlinetype') == 'search')
|
log_moderator_action($modlogdata, $lang->multi_soft_deleted_threads); if($mybb->get_input('inlinetype') == 'search')
|
{ clearinline($mybb->get_input('searchid', 1), 'search'); } else {
| { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); } else {
|
clearinline($fid, 'forum'); } $cache->update_stats();
| clearinline($fid, 'forum'); } $cache->update_stats();
|
Zeile 1764 | Zeile 2014 |
---|
break;
// Stick threads - Inline moderation
|
break;
// Stick threads - Inline moderation
|
case "multistickthreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid'])) { // From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canstickunstickthreads')) { error_no_permission(); } } else { $threads = getids($fid, 'forum'); if(!is_moderator($fid, 'canstickunstickthreads')) { error_no_permission(); } }
| case "multistickthreads":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if(!empty($mybb->input['searchid'])) { // From search page $threads = getids($mybb->get_input('searchid'), 'search'); if(!is_moderator_by_tids($threads, 'canstickunstickthreads')) { error_no_permission(); } } else { $threads = getids($fid, 'forum'); if(!is_moderator($fid, 'canstickunstickthreads')) { error_no_permission(); } }
|
if(count($threads) < 1) {
|
if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$moderation->stick_threads($threads);
| }
$moderation->stick_threads($threads);
|
Zeile 1796 | Zeile 2046 |
---|
log_moderator_action($modlogdata, $lang->multi_stuck_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_stuck_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1830 | Zeile 2080 |
---|
} if(count($threads) < 1) {
|
} if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
}
$moderation->unstick_threads($threads);
| }
$moderation->unstick_threads($threads);
|
Zeile 1838 | Zeile 2088 |
---|
log_moderator_action($modlogdata, $lang->multi_unstuck_threads); if($mybb->get_input('inlinetype') == 'search') {
|
log_moderator_action($modlogdata, $lang->multi_unstuck_threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1871 | Zeile 2121 |
---|
if(count($threads) < 1) {
|
if(count($threads) < 1) {
|
error($lang->error_inline_nothreadsselected);
| error($lang->error_inline_nothreadsselected, $lang->error);
|
} $inlineids = implode("|", $threads); if($mybb->get_input('inlinetype') == 'search') {
|
} $inlineids = implode("|", $threads); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 1894 | Zeile 2144 |
---|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
$moveto = $mybb->get_input('moveto', 1);
| $moveto = $mybb->get_input('moveto', MyBB::INPUT_INT); $method = $mybb->get_input('method');
|
$threadlist = explode("|", $mybb->get_input('threads')); if(!is_moderator_by_tids($threadlist, 'canmanagethreads')) { error_no_permission();
|
$threadlist = explode("|", $mybb->get_input('threads')); if(!is_moderator_by_tids($threadlist, 'canmanagethreads')) { error_no_permission();
|
}
| }
|
foreach($threadlist as $tid) { $tids[] = (int)$tid;
| foreach($threadlist as $tid) { $tids[] = (int)$tid;
|
Zeile 1907 | Zeile 2159 |
---|
// Make sure moderator has permission to move to the new forum $newperms = forum_permissions($moveto); if(($newperms['canview'] == 0 || !is_moderator($moveto, 'canmanagethreads')) && !is_moderator_by_tids($tids, 'canmovetononmodforum'))
|
// Make sure moderator has permission to move to the new forum $newperms = forum_permissions($moveto); if(($newperms['canview'] == 0 || !is_moderator($moveto, 'canmanagethreads')) && !is_moderator_by_tids($tids, 'canmovetononmodforum'))
|
{ error_no_permission(); }
| { error($lang->error_movetononmodforum, $lang->error); }
|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '')
|
{ error($lang->error_invalidforum); }
$moderation->move_threads($tids, $moveto);
| { error($lang->error_invalidforum, $lang->error); }
$plugins->run_hooks('moderation_do_multimovethreads');
|
log_moderator_action($modlogdata, $lang->multi_moved_threads);
|
log_moderator_action($modlogdata, $lang->multi_moved_threads);
|
| $expire = 0; if($mybb->get_input('redirect_expire', MyBB::INPUT_INT) > 0) { $expire = TIME_NOW + ($mybb->get_input('redirect_expire', MyBB::INPUT_INT) * 86400); }
foreach($tids as $tid) { $moderation->move_thread($tid, $moveto, $method, $expire); }
|
moderation_redirect(get_forum_link($moveto), $lang->redirect_inline_threadsmoved); break;
| moderation_redirect(get_forum_link($moveto), $lang->redirect_inline_threadsmoved); break;
|
Zeile 1935 | Zeile 2196 |
---|
else { $posts = getids($tid, 'thread');
|
else { $posts = getids($tid, 'thread');
|
}
| }
|
if(count($posts) < 1) {
|
if(count($posts) < 1) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
} if(!is_moderator_by_pids($posts, "candeleteposts")) {
| } if(!is_moderator_by_pids($posts, "candeleteposts")) {
|
Zeile 1947 | Zeile 2208 |
---|
} $inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search')
|
} $inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search')
|
{ clearinline($mybb->get_input('searchid', 1), 'search'); }
| { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); }
|
else { clearinline($tid, 'thread');
|
else { clearinline($tid, 'thread');
|
}
| }
|
$return_url = htmlspecialchars_uni($mybb->get_input('url'));
| $return_url = htmlspecialchars_uni($mybb->get_input('url'));
|
Zeile 1982 | Zeile 2243 |
---|
while($threadid = $db->fetch_field($query, "tid")) { $tids[] = $threadid;
|
while($threadid = $db->fetch_field($query, "tid")) { $tids[] = $threadid;
|
} }
| } }
|
$deletecount = 0; foreach($postlist as $pid) {
| $deletecount = 0; foreach($postlist as $pid) {
|
Zeile 1996 | Zeile 2257 |
---|
// If we have multiple threads, we must be coming from the search if(!empty($tids))
|
// If we have multiple threads, we must be coming from the search if(!empty($tids))
|
{
| {
|
foreach($tids as $tid)
|
foreach($tids as $tid)
|
{ $moderation->delete_thread($tid); mark_reports($tid, "thread"); $url = get_forum_link($fid); }
| { $moderation->delete_thread($tid); mark_reports($tid, "thread"); $url = get_forum_link($fid); }
|
} // Otherwise we're just deleting from showthread.php else {
|
} // Otherwise we're just deleting from showthread.php else {
|
$query = $db->simple_select("posts", "*", "tid='$tid'");
| $query = $db->simple_select("posts", "pid", "tid = $tid");
|
$numposts = $db->num_rows($query); if(!$numposts) {
| $numposts = $db->num_rows($query); if(!$numposts) {
|
Zeile 2021 | Zeile 2282 |
---|
$url = get_thread_link($thread['tid']); } }
|
$url = get_thread_link($thread['tid']); } }
|
|
|
$lang->deleted_selective_posts = $lang->sprintf($lang->deleted_selective_posts, $deletecount); log_moderator_action($modlogdata, $lang->deleted_selective_posts); moderation_redirect($url, $lang->redirect_postsdeleted);
| $lang->deleted_selective_posts = $lang->sprintf($lang->deleted_selective_posts, $deletecount); log_moderator_action($modlogdata, $lang->deleted_selective_posts); moderation_redirect($url, $lang->redirect_postsdeleted);
|
Zeile 2030 | Zeile 2291 |
---|
// Merge posts - Inline moderation case "multimergeposts": add_breadcrumb($lang->nav_multi_mergeposts);
|
// Merge posts - Inline moderation case "multimergeposts": add_breadcrumb($lang->nav_multi_mergeposts);
|
if($mybb->get_input('inlinetype') == 'search') {
| if($mybb->get_input('inlinetype') == 'search') {
|
$posts = getids($mybb->get_input('searchid'), 'search'); } else { $posts = getids($tid, 'thread');
|
$posts = getids($mybb->get_input('searchid'), 'search'); } else { $posts = getids($tid, 'thread');
|
}
| }
|
// Add the selected posts from other threads foreach($mybb->cookies as $key => $value) { if(strpos($key, "inlinemod_thread") !== false && $key != "inlinemod_thread$tid")
|
// Add the selected posts from other threads foreach($mybb->cookies as $key => $value) { if(strpos($key, "inlinemod_thread") !== false && $key != "inlinemod_thread$tid")
|
{
| {
|
$inlinepostlist = explode("|", $mybb->cookies[$key]); foreach($inlinepostlist as $p) {
| $inlinepostlist = explode("|", $mybb->cookies[$key]); foreach($inlinepostlist as $p) {
|
Zeile 2058 | Zeile 2319 |
---|
// Remove the cookie once its data is retrieved my_unsetcookie($key); }
|
// Remove the cookie once its data is retrieved my_unsetcookie($key); }
|
}
if(empty($posts)) { error($lang->error_inline_nopostsselected); }
| }
if(count($posts) < 2) { if(empty($posts)) { error($lang->error_inline_nopostsselected, $lang->error); } error($lang->error_nomergeposts, $lang->error); }
|
if(!is_moderator_by_pids($posts, "canmanagethreads")) {
| if(!is_moderator_by_pids($posts, "canmanagethreads")) {
|
Zeile 2075 | Zeile 2340 |
---|
SELECT p.*, u.* FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid)
|
SELECT p.*, u.* FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid)
|
WHERE pid IN (".implode($posts, ",").") ORDER BY dateline ASC
| WHERE pid IN (".implode(",", $posts).") ORDER BY dateline ASC, pid ASC
|
"); $altbg = "trow1"; while($post = $db->fetch_array($query)) { $postdate = my_date('relative', $post['dateline']);
|
"); $altbg = "trow1"; while($post = $db->fetch_array($query)) { $postdate = my_date('relative', $post['dateline']);
|
|
|
$parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'],
| $parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'],
|
Zeile 2099 | Zeile 2364 |
---|
$message = $parser->parse_message($post['message'], $parser_options); eval("\$postlist .= \"".$templates->get("moderation_mergeposts_post")."\";"); $altbg = alt_trow();
|
$message = $parser->parse_message($post['message'], $parser_options); eval("\$postlist .= \"".$templates->get("moderation_mergeposts_post")."\";"); $altbg = alt_trow();
|
}
| }
|
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search')
|
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search')
|
{ clearinline($mybb->get_input('searchid', 1), 'search'); }
| { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); }
|
else { clearinline($tid, 'thread');
|
else { clearinline($tid, 'thread');
|
}
$return_url = htmlspecialchars_uni($mybb->get_input('url'));
| }
$return_url = htmlspecialchars_uni($mybb->get_input('url'));
|
eval("\$multimerge = \"".$templates->get("moderation_inline_mergeposts")."\";"); output_page($multimerge);
| eval("\$multimerge = \"".$templates->get("moderation_inline_mergeposts")."\";"); output_page($multimerge);
|
Zeile 2122 | Zeile 2387 |
---|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
$mergepost = $mybb->get_input('mergepost', 2); if(count($mergepost) <= 1) { error($lang->error_nomergeposts); }
| $mergepost = $mybb->get_input('mergepost', MyBB::INPUT_ARRAY); if(count($mergepost) < 2) { error($lang->error_nomergeposts, $lang->error); }
|
foreach($mergepost as $pid => $yes) { $postlist[] = (int)$pid;
|
foreach($mergepost as $pid => $yes) { $postlist[] = (int)$pid;
|
}
| }
|
if(!is_moderator_by_pids($postlist, "canmanagethreads"))
|
if(!is_moderator_by_pids($postlist, "canmanagethreads"))
|
{ error_no_permission(); }
$masterpid = $moderation->merge_posts($postlist, $tid, $mybb->input['sep']);
| { error_no_permission(); }
$masterpid = $moderation->merge_posts($postlist, $tid, $mybb->input['sep']);
|
mark_reports($postlist, "posts"); log_moderator_action($modlogdata, $lang->merged_selective_posts); moderation_redirect(get_post_link($masterpid)."#pid$masterpid", $lang->redirect_inline_postsmerged);
| mark_reports($postlist, "posts"); log_moderator_action($modlogdata, $lang->merged_selective_posts); moderation_redirect(get_post_link($masterpid)."#pid$masterpid", $lang->redirect_inline_postsmerged);
|
Zeile 2149 | Zeile 2414 |
---|
// Split posts - Inline moderation case "multisplitposts": add_breadcrumb($lang->nav_multi_splitposts);
|
// Split posts - Inline moderation case "multisplitposts": add_breadcrumb($lang->nav_multi_splitposts);
|
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search'); } else { $posts = getids($tid, 'thread'); }
if(count($posts) < 1) { error($lang->error_inline_nopostsselected); }
if(!is_moderator_by_pids($posts, "canmanagethreads")) { error_no_permission(); } $posts = array_map('intval', $posts); $pidin = implode(',', $posts);
// Make sure that we are not splitting a thread with one post // Select number of posts in each thread that the splitted post is in $query = $db->query(" SELECT DISTINCT p.tid, COUNT(q.pid) as count FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."posts q ON (p.tid=q.tid) WHERE p.pid IN ($pidin) GROUP BY p.tid, p.pid "); $threads = $pcheck = array(); while($tcheck = $db->fetch_array($query))
| if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search'); } else { $posts = getids($tid, 'thread'); }
if(count($posts) < 1) { error($lang->error_inline_nopostsselected, $lang->error); }
if(!is_moderator_by_pids($posts, "canmanagethreads")) { error_no_permission(); } $posts = array_map('intval', $posts); $pidin = implode(',', $posts);
// Make sure that we are not splitting a thread with one post // Select number of posts in each thread that the splitted post is in $query = $db->query(" SELECT DISTINCT p.tid, COUNT(q.pid) as count FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."posts q ON (p.tid=q.tid) WHERE p.pid IN ($pidin) GROUP BY p.tid, p.pid "); $threads = $pcheck = array(); while($tcheck = $db->fetch_array($query))
|
{ if((int)$tcheck['count'] <= 1) {
|
{ if((int)$tcheck['count'] <= 1) {
|
error($lang->error_cantsplitonepost);
| error($lang->error_cantsplitonepost, $lang->error);
|
} $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
| } $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
|
Zeile 2210 | Zeile 2475 |
---|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
error($lang->error_cantsplitall);
| error($lang->error_cantsplitall, $lang->error);
|
}
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search') {
|
}
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 2262 | Zeile 2527 |
---|
if(empty($posts)) {
|
if(empty($posts)) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
}
$pidin = implode(',', $posts);
// Make sure that we are not splitting a thread with one post // Select number of posts in each thread that the splitted post is in
|
}
$pidin = implode(',', $posts);
// Make sure that we are not splitting a thread with one post // Select number of posts in each thread that the splitted post is in
|
$query = $db->query(" SELECT DISTINCT p.tid, COUNT(q.pid) as count FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."posts q ON (p.tid=q.tid) WHERE p.pid IN ($pidin) GROUP BY p.tid, p.pid "); $pcheck = array(); while($tcheck = $db->fetch_array($query)) { if((int)$tcheck['count'] <= 1)
| $query = $db->query(" SELECT DISTINCT p.tid, COUNT(q.pid) as count FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."posts q ON (p.tid=q.tid) WHERE p.pid IN ($pidin) GROUP BY p.tid, p.pid "); $pcheck = array(); while($tcheck = $db->fetch_array($query)) { if((int)$tcheck['count'] <= 1)
|
{
|
{
|
error($lang->error_cantsplitonepost);
| error($lang->error_cantsplitonepost, $lang->error);
|
} $pcheck[] = $tcheck['tid']; // Save tids for below }
| } $pcheck[] = $tcheck['tid']; // Save tids for below }
|
Zeile 2304 | Zeile 2569 |
---|
} } if(count($pcheck2) != count($pcheck))
|
} } if(count($pcheck2) != count($pcheck))
|
{
| {
|
// One or more threads do not have posts after splitting
|
// One or more threads do not have posts after splitting
|
error($lang->error_cantsplitall); }
| error($lang->error_cantsplitall, $lang->error); }
|
if(isset($mybb->input['moveto']))
|
if(isset($mybb->input['moveto']))
|
{ $moveto = $mybb->get_input('moveto', 1); }
| { $moveto = $mybb->get_input('moveto', MyBB::INPUT_INT); }
|
else { $moveto = $fid;
| else { $moveto = $fid;
|
Zeile 2321 | Zeile 2586 |
---|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '') {
|
$newforum = get_forum($moveto); if(!$newforum || $newforum['type'] != "f" || $newforum['type'] == "f" && $newforum['linkto'] != '') {
|
error($lang->error_invalidforum);
| error($lang->error_invalidforum, $lang->error);
|
}
$newsubject = $mybb->get_input('newsubject');
| }
$newsubject = $mybb->get_input('newsubject');
|
Zeile 2329 | Zeile 2594 |
---|
$pid_list = implode(', ', $posts); $lang->split_selective_posts = $lang->sprintf($lang->split_selective_posts, $pid_list, $newtid);
|
$pid_list = implode(', ', $posts); $lang->split_selective_posts = $lang->sprintf($lang->split_selective_posts, $pid_list, $newtid);
|
log_moderator_action($modlogdata, $lang->split_selective_posts);
| log_moderator_action($modlogdata, $lang->split_selective_posts);
|
moderation_redirect(get_thread_link($newtid), $lang->redirect_threadsplit); break;
| moderation_redirect(get_thread_link($newtid), $lang->redirect_threadsplit); break;
|
Zeile 2349 | Zeile 2614 |
---|
if(count($posts) < 1) {
|
if(count($posts) < 1) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
}
if(!is_moderator_by_pids($posts, "canmanagethreads"))
| }
if(!is_moderator_by_pids($posts, "canmanagethreads"))
|
Zeile 2373 | Zeile 2638 |
---|
{ if((int)$tcheck['count'] <= 1) {
|
{ if((int)$tcheck['count'] <= 1) {
|
error($lang->error_cantsplitonepost);
| error($lang->error_cantsplitonepost, $lang->error);
|
} $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
| } $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
|
Zeile 2398 | Zeile 2663 |
---|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
error($lang->error_cantmoveall);
| error($lang->error_cantmoveall, $lang->error);
|
}
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search') {
|
}
$inlineids = implode("|", $posts); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else { clearinline($tid, 'thread'); } $forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");
|
} else { clearinline($tid, 'thread'); } $forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");
|
| $return_url = htmlspecialchars_uni($mybb->get_input('url'));
|
eval("\$moveposts = \"".$templates->get("moderation_inline_moveposts")."\";"); output_page($moveposts); break;
// Actually split the posts - Inline moderation case "do_multimoveposts":
|
eval("\$moveposts = \"".$templates->get("moderation_inline_moveposts")."\";"); output_page($moveposts); break;
// Actually split the posts - Inline moderation case "do_multimoveposts":
|
|
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
| $plugins->run_hooks("moderation_do_multimoveposts");
|
// explode at # sign in a url (indicates a name reference) and reassign to the url $realurl = explode("#", $mybb->get_input('threadurl'));
| // explode at # sign in a url (indicates a name reference) and reassign to the url $realurl = explode("#", $mybb->get_input('threadurl'));
|
Zeile 2427 | Zeile 2697 |
---|
// Are we using an SEO URL? if(substr($mybb->input['threadurl'], -4) == "html")
|
// Are we using an SEO URL? if(substr($mybb->input['threadurl'], -4) == "html")
|
{
| {
|
// Get thread to merge's tid the SEO way preg_match("#thread-([0-9]+)?#i", $mybb->input['threadurl'], $threadmatch); preg_match("#post-([0-9]+)?#i", $mybb->input['threadurl'], $postmatch);
|
// Get thread to merge's tid the SEO way preg_match("#thread-([0-9]+)?#i", $mybb->input['threadurl'], $threadmatch); preg_match("#post-([0-9]+)?#i", $mybb->input['threadurl'], $postmatch);
|
if($threadmatch[1])
| if(!empty($threadmatch[1]))
|
{ $parameters['tid'] = $threadmatch[1]; }
|
{ $parameters['tid'] = $threadmatch[1]; }
|
if($postmatch[1])
| if(!empty($postmatch[1]))
|
{ $parameters['pid'] = $postmatch[1]; }
| { $parameters['pid'] = $postmatch[1]; }
|
Zeile 2465 | Zeile 2735 |
---|
if(!empty($parameters['pid']) && empty($parameters['tid'])) {
|
if(!empty($parameters['pid']) && empty($parameters['tid'])) {
|
$query = $db->simple_select("posts", "*", "pid='".(int)$parameters['pid']."'");
| $query = $db->simple_select("posts", "tid", "pid='".(int)$parameters['pid']."'");
|
$post = $db->fetch_array($query); $newtid = $post['tid']; }
| $post = $db->fetch_array($query); $newtid = $post['tid']; }
|
Zeile 2481 | Zeile 2751 |
---|
$newthread = get_thread($newtid); if(!$newthread) {
|
$newthread = get_thread($newtid); if(!$newthread) {
|
error($lang->error_badmovepostsurl);
| error($lang->error_badmovepostsurl, $lang->error);
|
} if($newtid == $tid) { // sanity check
|
} if($newtid == $tid) { // sanity check
|
error($lang->error_movetoself);
| error($lang->error_movetoself, $lang->error);
|
}
$postlist = explode("|", $mybb->get_input('posts'));
| }
$postlist = explode("|", $mybb->get_input('posts'));
|
Zeile 2504 | Zeile 2774 |
---|
// Ensure all posts exist $posts = array(); if(!empty($plist))
|
// Ensure all posts exist $posts = array(); if(!empty($plist))
|
{
| {
|
$query = $db->simple_select('posts', 'pid', 'pid IN ('.implode(',', $plist).')'); while($pid = $db->fetch_field($query, 'pid')) {
| $query = $db->simple_select('posts', 'pid', 'pid IN ('.implode(',', $plist).')'); while($pid = $db->fetch_field($query, 'pid')) {
|
Zeile 2514 | Zeile 2784 |
---|
if(empty($posts)) {
|
if(empty($posts)) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
}
$pidin = implode(',', $posts);
| }
$pidin = implode(',', $posts);
|
Zeile 2533 | Zeile 2803 |
---|
{ if((int)$tcheck['count'] <= 1) {
|
{ if((int)$tcheck['count'] <= 1) {
|
error($lang->error_cantsplitonepost);
| error($lang->error_cantsplitonepost, $lang->error);
|
} $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
| } $threads[] = $pcheck[] = $tcheck['tid']; // Save tids for below }
|
Zeile 2558 | Zeile 2828 |
---|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
if(count($pcheck2) != count($pcheck)) { // One or more threads do not have posts after splitting
|
error($lang->error_cantmoveall);
| error($lang->error_cantmoveall, $lang->error);
|
}
$newtid = $moderation->split_posts($posts, $tid, $newthread['fid'], $db->escape_string($newthread['subject']), $newtid);
| }
$newtid = $moderation->split_posts($posts, $tid, $newthread['fid'], $db->escape_string($newthread['subject']), $newtid);
|
Zeile 2572 | Zeile 2842 |
---|
// Approve posts - Inline moderation case "multiapproveposts":
|
// Approve posts - Inline moderation case "multiapproveposts":
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search'); } else
| // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search'); } else
|
{ $posts = getids($tid, 'thread'); } if(count($posts) < 1)
|
{ $posts = getids($tid, 'thread'); } if(count($posts) < 1)
|
{ error($lang->error_inline_nopostsselected);
| { error($lang->error_inline_nopostsselected, $lang->error);
|
}
if(!is_moderator_by_pids($posts, "canapproveunapproveposts"))
| }
if(!is_moderator_by_pids($posts, "canapproveunapproveposts"))
|
Zeile 2598 | Zeile 2868 |
---|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
}
$moderation->approve_posts($pids);
| }
$moderation->approve_posts($pids);
|
log_moderator_action($modlogdata, $lang->multi_approve_posts); if($mybb->get_input('inlinetype') == 'search')
|
log_moderator_action($modlogdata, $lang->multi_approve_posts); if($mybb->get_input('inlinetype') == 'search')
|
{ clearinline($mybb->get_input('searchid', 1), 'search'); }
| { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); }
|
else { clearinline($tid, 'thread');
| else { clearinline($tid, 'thread');
|
Zeile 2615 | Zeile 2885 |
---|
break;
// Unapprove posts - Inline moderation
|
break;
// Unapprove posts - Inline moderation
|
case "multiunapproveposts":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
| case "multiunapproveposts":
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search');
|
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search');
|
} else
| } else
|
{ $posts = getids($tid, 'thread');
|
{ $posts = getids($tid, 'thread');
|
}
| }
|
if(count($posts) < 1) {
|
if(count($posts) < 1) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
} $pids = array();
|
} $pids = array();
|
|
|
if(!is_moderator_by_pids($posts, "canapproveunapproveposts")) { error_no_permission();
|
if(!is_moderator_by_pids($posts, "canapproveunapproveposts")) { error_no_permission();
|
}
| }
|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
}
| }
|
$moderation->unapprove_posts($pids);
log_moderator_action($modlogdata, $lang->multi_unapprove_posts); if($mybb->get_input('inlinetype') == 'search') {
|
$moderation->unapprove_posts($pids);
log_moderator_action($modlogdata, $lang->multi_unapprove_posts); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else { clearinline($tid, 'thread'); } moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_inline_postsunapproved);
|
} else { clearinline($tid, 'thread'); } moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_inline_postsunapproved);
|
break;
| break;
|
// Restore posts - Inline moderation case "multirestoreposts":
|
// Restore posts - Inline moderation case "multirestoreposts":
|
|
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
if($mybb->get_input('inlinetype') == 'search')
| if($mybb->get_input('inlinetype') == 'search')
|
{ $posts = getids($mybb->get_input('searchid'), 'search');
|
{ $posts = getids($mybb->get_input('searchid'), 'search');
|
} else { $posts = getids($tid, 'thread'); } if(count($posts) < 1)
| } else { $posts = getids($tid, 'thread'); } if(count($posts) < 1)
|
{
|
{
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
}
if(!is_moderator_by_pids($posts, "canrestoreposts"))
|
}
if(!is_moderator_by_pids($posts, "canrestoreposts"))
|
{
| {
|
error_no_permission(); }
| error_no_permission(); }
|
Zeile 2686 | Zeile 2956 |
---|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
foreach($posts as $pid) { $pids[] = (int)$pid;
|
}
| }
|
$moderation->restore_posts($pids);
log_moderator_action($modlogdata, $lang->multi_restore_posts);
|
$moderation->restore_posts($pids);
log_moderator_action($modlogdata, $lang->multi_restore_posts);
|
if($mybb->get_input('inlinetype') == 'search') { clearinline($mybb->get_input('searchid', 1), 'search'); } else {
| if($mybb->get_input('inlinetype') == 'search') { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); } else {
|
clearinline($tid, 'thread'); } moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_inline_postsrestored); break;
|
clearinline($tid, 'thread'); } moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_inline_postsrestored); break;
|
|
|
// Soft delete posts - Inline moderation case "multisoftdeleteposts":
|
// Soft delete posts - Inline moderation case "multisoftdeleteposts":
|
| |
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search');
|
// Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
if($mybb->get_input('inlinetype') == 'search') { $posts = getids($mybb->get_input('searchid'), 'search');
|
}
| }
|
else { $posts = getids($tid, 'thread');
|
else { $posts = getids($tid, 'thread');
|
}
| }
|
if(count($posts) < 1) {
|
if(count($posts) < 1) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
} $pids = array();
| } $pids = array();
|
Zeile 2733 | Zeile 3002 |
---|
}
$moderation->soft_delete_posts($pids);
|
}
$moderation->soft_delete_posts($pids);
|
| |
log_moderator_action($modlogdata, $lang->multi_soft_delete_posts);
|
log_moderator_action($modlogdata, $lang->multi_soft_delete_posts);
|
|
|
if($mybb->get_input('inlinetype') == 'search') {
|
if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
} else {
| } else {
|
Zeile 2750 | Zeile 3019 |
---|
require_once MYBB_ROOT."inc/functions_user.php";
$groups = explode(",", $mybb->settings['purgespammergroups']);
|
require_once MYBB_ROOT."inc/functions_user.php";
$groups = explode(",", $mybb->settings['purgespammergroups']);
|
if(!in_array($mybb->user['usergroup'], $groups))
| if(!is_member($groups))
|
{ error_no_permission(); }
|
{ error_no_permission(); }
|
$uid = $mybb->input['uid'];
| $uid = $mybb->get_input('uid', MyBB::INPUT_INT);
|
$user = get_user($uid);
|
$user = get_user($uid);
|
if(!$user['uid'] || !purgespammer_show($user['postnum'], $user['usergroup'], $user['uid']))
| if(!$user || !purgespammer_show($user['postnum'], $user['usergroup'], $user['uid']))
|
{ error($lang->purgespammer_invalid_user); }
| { error($lang->purgespammer_invalid_user); }
|
Zeile 2807 | Zeile 3076 |
---|
}
// Add the IP's to the banfilters
|
}
// Add the IP's to the banfilters
|
foreach(array($user['regip'], $user['lastip']) as $ip)
| if($mybb->settings['purgespammerbanip'] == 1)
|
{
|
{
|
$ip = my_inet_ntop($db->unescape_binary($ip)); $query = $db->simple_select("banfilters", "*", "type = '1' AND filter = '".$db->escape_string($ip)."'"); if($db->num_rows($query) == 0)
| foreach(array($user['regip'], $user['lastip']) as $ip)
|
{
|
{
|
$insert = array( "filter" => $db->escape_string($ip), "type" => 1, "dateline" => TIME_NOW ); $db->insert_query("banfilters", $insert);
| $ip = my_inet_ntop($db->unescape_binary($ip)); $query = $db->simple_select("banfilters", "type", "type = 1 AND filter = '".$db->escape_string($ip)."'"); if($db->num_rows($query) == 0) { $insert = array( "filter" => $db->escape_string($ip), "type" => 1, "dateline" => TIME_NOW ); $db->insert_query("banfilters", $insert); }
|
} }
// Clear the profile $userhandler->clear_profile($uid, $mybb->settings['purgespammerbangroup']);
|
} }
// Clear the profile $userhandler->clear_profile($uid, $mybb->settings['purgespammerbangroup']);
|
$cache->update_banned();
| |
$cache->update_bannedips();
|
$cache->update_bannedips();
|
| $cache->update_awaitingactivation();
|
// Update reports cache $cache->update_reportedcontent();
| // Update reports cache $cache->update_reportedcontent();
|
Zeile 2839 | Zeile 3111 |
---|
// Submit the user to stop forum spam if(!empty($mybb->settings['purgespammerapikey'])) {
|
// Submit the user to stop forum spam if(!empty($mybb->settings['purgespammerapikey'])) {
|
$sfs = @fetch_remote_file("http://stopforumspam.com/add.php?username=" . urlencode($user['username']) . "&ip_addr=" . urlencode($user['lastip']) . "&email=" . urlencode($user['email']) . "&api_key=" . urlencode($mybb->settings['purgespammerapikey']));
| $sfs = @fetch_remote_file("http://stopforumspam.com/add.php?username=" . urlencode($user['username']) . "&ip_addr=" . urlencode(my_inet_ntop($db->unescape_binary($user['lastip']))) . "&email=" . urlencode($user['email']) . "&api_key=" . urlencode($mybb->settings['purgespammerapikey']));
|
}
log_moderator_action(array('uid' => $uid, 'username' => $user['username']), $lang->purgespammer_modlog);
| }
log_moderator_action(array('uid' => $uid, 'username' => $user['username']), $lang->purgespammer_modlog);
|
Zeile 2853 | Zeile 3125 |
---|
redirect(get_profile_link($uid), $lang->purgespammer_success); } }
|
redirect(get_profile_link($uid), $lang->purgespammer_success); } }
|
else if($mybb->input['action'] == "purgespammer")
| elseif($mybb->input['action'] == "purgespammer")
|
{ $plugins->run_hooks("moderation_purgespammer_show");
add_breadcrumb($lang->purgespammer);
|
{ $plugins->run_hooks("moderation_purgespammer_show");
add_breadcrumb($lang->purgespammer);
|
$lang->purgespammer_purge = $lang->sprintf($lang->purgespammer_purge, $user['username']);
| $lang->purgespammer_purge = $lang->sprintf($lang->purgespammer_purge, htmlspecialchars_uni($user['username']));
|
if($mybb->settings['purgespammerbandelete'] == "ban") { $lang->purgespammer_purge_desc = $lang->sprintf($lang->purgespammer_purge_desc, $lang->purgespammer_ban);
| if($mybb->settings['purgespammerbandelete'] == "ban") { $lang->purgespammer_purge_desc = $lang->sprintf($lang->purgespammer_purge_desc, $lang->purgespammer_ban);
|
Zeile 2874 | Zeile 3146 |
---|
default: require_once MYBB_ROOT."inc/class_custommoderation.php"; $custommod = new CustomModeration;
|
default: require_once MYBB_ROOT."inc/class_custommoderation.php"; $custommod = new CustomModeration;
|
$tool = $custommod->tool_info($mybb->get_input('action', 1));
| $tool = $custommod->tool_info($mybb->get_input('action', MyBB::INPUT_INT));
|
if($tool !== false) { // Verify incoming POST request
| if($tool !== false) { // Verify incoming POST request
|
Zeile 2882 | Zeile 3154 |
---|
$options = my_unserialize($tool['threadoptions']);
|
$options = my_unserialize($tool['threadoptions']);
|
if($tool['groups'] != -1 && !is_member($tool['groups']))
| if(!is_member($tool['groups']))
|
{ error_no_permission();
|
{ error_no_permission();
|
| } if($thread['visible'] == -1) { error($lang->error_thread_deleted, $lang->error);
|
}
if(!empty($options['confirmation']) && empty($mybb->input['confirm']))
|
}
if(!empty($options['confirmation']) && empty($mybb->input['confirm']))
|
{
| {
|
add_breadcrumb($lang->confirm_execute_tool);
|
add_breadcrumb($lang->confirm_execute_tool);
|
|
|
$lang->confirm_execute_tool_desc = $lang->sprintf($lang->confirm_execute_tool_desc, htmlspecialchars_uni($tool['name']));
|
$lang->confirm_execute_tool_desc = $lang->sprintf($lang->confirm_execute_tool_desc, htmlspecialchars_uni($tool['name']));
|
| $action = $mybb->get_input('action', MyBB::INPUT_INT); $modtype = htmlspecialchars_uni($mybb->get_input('modtype')); $inlinetype = htmlspecialchars_uni($mybb->get_input('inlinetype')); $searchid = htmlspecialchars_uni($mybb->get_input('searchid')); $url = htmlspecialchars_uni($mybb->get_input('url'));
|
$plugins->run_hooks('moderation_confirmation');
eval('$page = "'.$templates->get('moderation_confirmation').'";');
| $plugins->run_hooks('moderation_confirmation');
eval('$page = "'.$templates->get('moderation_confirmation').'";');
|
Zeile 2900 | Zeile 3182 |
---|
output_page($page); exit; }
|
output_page($page); exit; }
|
| $tool['name'] = htmlspecialchars_uni($tool['name']);
|
if($tool['type'] == 't' && $mybb->get_input('modtype') == 'inlinethread') { if($mybb->get_input('inlinetype') == 'search') { $tids = getids($mybb->get_input('searchid'), 'search');
|
if($tool['type'] == 't' && $mybb->get_input('modtype') == 'inlinethread') { if($mybb->get_input('inlinetype') == 'search') { $tids = getids($mybb->get_input('searchid'), 'search');
|
}
| }
|
else { $tids = getids($fid, "forum");
|
else { $tids = getids($fid, "forum");
|
}
| }
|
if(count($tids) < 1) {
|
if(count($tids) < 1) {
|
error($lang->error_inline_nopostsselected); } if(!is_moderator_by_tids($tids, "canusecustomtools")) { error_no_permission(); }
$thread_options = my_unserialize($tool['threadoptions']); if($thread_options['movethread'] && $forum_cache[$thread_options['movethread']]['type'] != "f") { error($lang->error_movetocategory);
| error($lang->error_inline_nopostsselected, $lang->error);
|
}
|
}
|
$custommod->execute($mybb->get_input('action', 1), $tids); $lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($mybb->get_input('inlinetype') == 'search')
| if(!is_moderator_by_tids($tids, "canusecustomtools"))
|
{
|
{
|
clearinline($mybb->get_input('searchid', 1), 'search'); $lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']); $return_url = htmlspecialchars_uni($mybb->get_input('url')); redirect($return_url, $lang->redirect_customtool_search);
| error_no_permission(); }
$thread_options = my_unserialize($tool['threadoptions']); if($thread_options['movethread'] && $forum_cache[$thread_options['movethread']]['type'] != "f") { error($lang->error_movetocategory, $lang->error);
|
}
|
}
|
else
| $custommod->execute($mybb->get_input('action', MyBB::INPUT_INT), $tids); $lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($mybb->get_input('inlinetype') == 'search') { clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search'); $lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']); $return_url = htmlspecialchars_uni($mybb->get_input('url')); moderation_redirect($return_url, $lang->redirect_customtool_search); } else
|
{ clearinline($fid, "forum"); $lang->redirect_customtool_forum = $lang->sprintf($lang->redirect_customtool_forum, $tool['name']); redirect(get_forum_link($fid), $lang->redirect_customtool_forum);
|
{ clearinline($fid, "forum"); $lang->redirect_customtool_forum = $lang->sprintf($lang->redirect_customtool_forum, $tool['name']); redirect(get_forum_link($fid), $lang->redirect_customtool_forum);
|
} break;
| } break;
|
} elseif($tool['type'] == 't' && $mybb->get_input('modtype') == 'thread') { if(!is_moderator_by_tids($tid, "canusecustomtools"))
|
} elseif($tool['type'] == 't' && $mybb->get_input('modtype') == 'thread') { if(!is_moderator_by_tids($tid, "canusecustomtools"))
|
{
| {
|
error_no_permission(); }
$thread_options = my_unserialize($tool['threadoptions']); if($thread_options['movethread'] && $forum_cache[$thread_options['movethread']]['type'] != "f") {
|
error_no_permission(); }
$thread_options = my_unserialize($tool['threadoptions']); if($thread_options['movethread'] && $forum_cache[$thread_options['movethread']]['type'] != "f") {
|
error($lang->error_movetocategory);
| error($lang->error_movetocategory, $lang->error);
|
}
|
}
|
$ret = $custommod->execute($mybb->get_input('action', 1), $tid);
| $ret = $custommod->execute($mybb->get_input('action', MyBB::INPUT_INT), $tid);
|
$lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($ret == 'forum') { $lang->redirect_customtool_forum = $lang->sprintf($lang->redirect_customtool_forum, $tool['name']); moderation_redirect(get_forum_link($fid), $lang->redirect_customtool_forum);
|
$lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($ret == 'forum') { $lang->redirect_customtool_forum = $lang->sprintf($lang->redirect_customtool_forum, $tool['name']); moderation_redirect(get_forum_link($fid), $lang->redirect_customtool_forum);
|
}
| }
|
else { $lang->redirect_customtool_thread = $lang->sprintf($lang->redirect_customtool_thread, $tool['name']);
| else { $lang->redirect_customtool_thread = $lang->sprintf($lang->redirect_customtool_thread, $tool['name']);
|
Zeile 2973 | Zeile 3257 |
---|
break; } elseif($tool['type'] == 'p' && $mybb->get_input('modtype') == 'inlinepost')
|
break; } elseif($tool['type'] == 'p' && $mybb->get_input('modtype') == 'inlinepost')
|
{ if($mybb->get_input('inlinetype') == 'search')
| { if($mybb->get_input('inlinetype') == 'search')
|
{ $pids = getids($mybb->get_input('searchid'), 'search'); }
| { $pids = getids($mybb->get_input('searchid'), 'search'); }
|
Zeile 2985 | Zeile 3269 |
---|
if(count($pids) < 1) {
|
if(count($pids) < 1) {
|
error($lang->error_inline_nopostsselected);
| error($lang->error_inline_nopostsselected, $lang->error);
|
} if(!is_moderator_by_pids($pids, "canusecustomtools")) {
| } if(!is_moderator_by_pids($pids, "canusecustomtools")) {
|
Zeile 2995 | Zeile 3279 |
---|
// Get threads which are associated with the posts $tids = array(); $options = array(
|
// Get threads which are associated with the posts $tids = array(); $options = array(
|
'order_by' => 'dateline', 'order_dir' => 'asc'
| 'order_by' => 'dateline, pid',
|
);
|
);
|
$query = $db->simple_select("posts", "DISTINCT tid", "pid IN (".implode(',',$pids).")", $options);
| $query = $db->simple_select("posts", "DISTINCT tid, dateline", "pid IN (".implode(',',$pids).")", $options);
|
while($row = $db->fetch_array($query)) { $tids[] = $row['tid']; }
|
while($row = $db->fetch_array($query)) { $tids[] = $row['tid']; }
|
$ret = $custommod->execute($mybb->get_input('action', 1), $tids, $pids);
| $ret = $custommod->execute($mybb->get_input('action', MyBB::INPUT_INT), $tids, $pids);
|
$lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($mybb->get_input('inlinetype') == 'search') {
|
$lang->custom_tool = $lang->sprintf($lang->custom_tool, $tool['name']); log_moderator_action($modlogdata, $lang->custom_tool); if($mybb->get_input('inlinetype') == 'search') {
|
clearinline($mybb->get_input('searchid', 1), 'search');
| clearinline($mybb->get_input('searchid', MyBB::INPUT_INT), 'search');
|
$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']); $return_url = htmlspecialchars_uni($mybb->get_input('url'));
|
$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']); $return_url = htmlspecialchars_uni($mybb->get_input('url'));
|
redirect($return_url, $lang->redirect_customtool_search);
| moderation_redirect($return_url, $lang->redirect_customtool_search);
|
} else {
| } else {
|
Zeile 3036 | Zeile 3319 |
---|
break; }
|
break; }
|
// Some little handy functions for our inline moderation
| /** * Some little handy functions for our inline moderation * * @param int $id * @param string $type * * @return array */
|
function getids($id, $type) { global $mybb;
|
function getids($id, $type) { global $mybb;
|
|
|
$newids = array(); $cookie = "inlinemod_".$type.$id; if(isset($mybb->cookies[$cookie]))
| $newids = array(); $cookie = "inlinemod_".$type.$id; if(isset($mybb->cookies[$cookie]))
|
Zeile 3050 | Zeile 3340 |
---|
foreach($cookie_ids as $cookie_id) { if(empty($cookie_id))
|
foreach($cookie_ids as $cookie_id) { if(empty($cookie_id))
|
{
| {
|
continue; }
| continue; }
|
Zeile 3061 | Zeile 3351 |
---|
else { $newids[] = (int)$cookie_id;
|
else { $newids[] = (int)$cookie_id;
|
} } }
| } } }
|
return $newids; }
|
return $newids; }
|
| /** * @param int $id * @param string $type * * @return array */
|
function getallids($id, $type) { global $db, $mybb;
| function getallids($id, $type) { global $db, $mybb;
|
Zeile 3084 | Zeile 3380 |
---|
if(!is_array($removed_ids)) { $removed_ids = array();
|
if(!is_array($removed_ids)) { $removed_ids = array();
|
}
| }
|
}
// "Select all Threads in this forum" only supported by forumdisplay and search if($type == 'forum')
|
}
// "Select all Threads in this forum" only supported by forumdisplay and search if($type == 'forum')
|
{
| {
|
$query = $db->simple_select("threads", "tid", "fid='".(int)$id."'"); while($tid = $db->fetch_field($query, "tid")) {
| $query = $db->simple_select("threads", "tid", "fid='".(int)$id."'"); while($tid = $db->fetch_field($query, "tid")) {
|
Zeile 3101 | Zeile 3397 |
---|
$ids[] = $tid; } }
|
$ids[] = $tid; } }
|
else if($type == 'search')
| elseif($type == 'search')
|
{
|
{
|
$query = $db->simple_select("searchlog", "*", "sid='".$db->escape_string($id)."' AND uid='{$mybb->user['uid']}'", 1);
| $query = $db->simple_select("searchlog", "resulttype, posts, threads", "sid='".$db->escape_string($id)."' AND uid='{$mybb->user['uid']}'", 1);
|
$searchlog = $db->fetch_array($query); if($searchlog['resulttype'] == 'posts')
|
$searchlog = $db->fetch_array($query); if($searchlog['resulttype'] == 'posts')
|
{
| {
|
$ids = explode(',', $searchlog['posts']); } else { $ids = explode(',', $searchlog['threads']);
|
$ids = explode(',', $searchlog['posts']); } else { $ids = explode(',', $searchlog['threads']);
|
}
| }
|
if(is_array($ids)) {
| if(is_array($ids)) {
|
Zeile 3127 | Zeile 3423 |
---|
}
return $ids;
|
}
return $ids;
|
}
| }
|
|
|
| /** * @param int $id * @param string $type */
|
function clearinline($id, $type) { my_unsetcookie("inlinemod_".$type.$id);
|
function clearinline($id, $type) { my_unsetcookie("inlinemod_".$type.$id);
|
my_unsetcookie("inlinemod_".$type.$id."_removed"); }
| my_unsetcookie("inlinemod_{$type}{$id}_removed"); }
|
|
|
| /** * @param int $id * @param string $type */
|
function extendinline($id, $type) {
|
function extendinline($id, $type) {
|
my_setcookie("inlinemod_$type$id", '', TIME_NOW+3600); my_setcookie("inlinemod_$type$id_removed", '', TIME_NOW+3600);
| my_setcookie("inlinemod_{$type}{$id}", '', TIME_NOW+3600); my_setcookie("inlinemod_{$type}{$id}_removed", '', TIME_NOW+3600);
|
}
/**
| }
/**
|
Zeile 3147 | Zeile 3451 |
---|
* Note: If no posts are specified, this function will return true. It is the * responsibility of the calling script to error-check this case if necessary. *
|
* Note: If no posts are specified, this function will return true. It is the * responsibility of the calling script to error-check this case if necessary. *
|
* @param array Array of post IDs * @param string Permission to check * @returns bool True if moderator of all; false otherwise
| * @param array $posts Array of post IDs * @param string $permission Permission to check * @return bool True if moderator of all; false otherwise
|
*/ function is_moderator_by_pids($posts, $permission='')
|
*/ function is_moderator_by_pids($posts, $permission='')
|
{ global $db, $mybb;
| { global $db, $mybb;
|
// Speedy determination for supermods/admins and guests if($mybb->usergroup['issupermod'])
| // Speedy determination for supermods/admins and guests if($mybb->usergroup['issupermod'])
|
Zeile 3191 | Zeile 3495 |
---|
* Note: If no threads are specified, this function will return true. It is the * responsibility of the calling script to error-check this case if necessary. *
|
* Note: If no threads are specified, this function will return true. It is the * responsibility of the calling script to error-check this case if necessary. *
|
* @param array Array of thread IDs * @param string Permission to check * @returns bool True if moderator of all; false otherwise
| * @param array $threads Array of thread IDs * @param string $permission Permission to check * @return bool True if moderator of all; false otherwise
|
*/ function is_moderator_by_tids($threads, $permission='') {
| */ function is_moderator_by_tids($threads, $permission='') {
|
Zeile 3231 | Zeile 3535 |
---|
/** * Special redirect that takes a return URL into account
|
/** * Special redirect that takes a return URL into account
|
* @param string URL * @param string Message * @param string Title
| * @param string $url URL * @param string $message Message * @param string $title Title
|
*/ function moderation_redirect($url, $message="", $title="") { global $mybb; if(!empty($mybb->input['url'])) {
|
*/ function moderation_redirect($url, $message="", $title="") { global $mybb; if(!empty($mybb->input['url'])) {
|
redirect(htmlentities($mybb->input['url']), $message, $title);
| $url = htmlentities($mybb->input['url']);
|
}
|
}
|
| if(my_strpos($url, $mybb->settings['bburl'].'/') !== 0) { if(my_strpos($url, '/') === 0) { $url = my_substr($url, 1); } $url_segments = explode('/', $url); $url = $mybb->settings['bburl'].'/'.end($url_segments); }
|
redirect($url, $message, $title); }
| redirect($url, $message, $title); }
|