Vergleich moderation.php - 1.4.3 - 1.4.5

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 6Zeile 6
 * Website: http://www.mybboard.net
* License: http://www.mybboard.net/about/license
*

 * Website: http://www.mybboard.net
* License: http://www.mybboard.net/about/license
*

 * $Id: moderation.php 4176 2008-09-03 13:50:09Z Tikitiki $

 * $Id: moderation.php 4308 2009-01-14 03:58:30Z Tikitiki $

 */

define("IN_MYBB", 1);

 */

define("IN_MYBB", 1);

Zeile 95Zeile 95
else
{
eval("\$loginbox = \"".$templates->get("loginbox")."\";");

else
{
eval("\$loginbox = \"".$templates->get("loginbox")."\";");

 
}

if($mybb->request_method != "post" && $mybb->input['action'] != "getip")
{
error_no_permission();

}

// Begin!

}

// Begin!

Zeile 164Zeile 169

// Remove redirects to a specific thread
case "removeredirects":


// Remove redirects to a specific thread
case "removeredirects":


// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);



// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);


		if(!is_moderator($fid, "canmanagethreads"))

		if(!is_moderator($fid, "canmanagethreads"))

		{

		{

			error_no_permission();
}

$plugins->run_hooks("moderation_removeredirects");

			error_no_permission();
}

$plugins->run_hooks("moderation_removeredirects");





		$moderation->remove_redirects($tid);

log_moderator_action($modlogdata, $lang->redirects_removed);

		$moderation->remove_redirects($tid);

log_moderator_action($modlogdata, $lang->redirects_removed);

Zeile 185Zeile 190
	case "deletethread":

add_breadcrumb($lang->nav_deletethread);

	case "deletethread":

add_breadcrumb($lang->nav_deletethread);


if(!is_moderator($fid, "candeleteposts"))
{
if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();
}


if(!is_moderator($fid, "candeleteposts"))
{
if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();
}

		}

$plugins->run_hooks("moderation_deletethread");

		}

$plugins->run_hooks("moderation_deletethread");

Zeile 232Zeile 237
	// Delete the poll from a thread confirmation page
case "deletepoll":
add_breadcrumb($lang->nav_deletepoll);

	// Delete the poll from a thread confirmation page
case "deletepoll":
add_breadcrumb($lang->nav_deletepoll);


if(!is_moderator($fid, "candeleteposts"))
{
if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();
}
}



if(!is_moderator($fid, "candeleteposts"))
{
if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();
}
}


		$plugins->run_hooks("moderation_deletepoll");

$query = $db->simple_select("polls", "*", "tid='$tid'");

		$plugins->run_hooks("moderation_deletepoll");

$query = $db->simple_select("polls", "*", "tid='$tid'");

Zeile 253Zeile 258
		eval("\$deletepoll = \"".$templates->get("moderation_deletepoll")."\";");
output_page($deletepoll);
break;

		eval("\$deletepoll = \"".$templates->get("moderation_deletepoll")."\";");
output_page($deletepoll);
break;





	// Delete the actual poll here!
case "do_deletepoll":

	// Delete the actual poll here!
case "do_deletepoll":





		// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);


		// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);


Zeile 265Zeile 270
			error($lang->redirect_pollnotdeleted);
}
if(!is_moderator($fid, "candeleteposts"))

			error($lang->redirect_pollnotdeleted);
}
if(!is_moderator($fid, "candeleteposts"))

		{

		{

			if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();

			if($permissions['candeletethreads'] != 1 || $mybb->user['uid'] != $thread['uid'])
{
error_no_permission();

Zeile 277Zeile 282
		{
error($lang->error_invalidpoll);
}

		{
error($lang->error_invalidpoll);
}





		$plugins->run_hooks("moderation_do_deletepoll");

$lang->poll_deleted = $lang->sprintf($lang->poll_deleted, $thread['subject']);

		$plugins->run_hooks("moderation_do_deletepoll");

$lang->poll_deleted = $lang->sprintf($lang->poll_deleted, $thread['subject']);

Zeile 290Zeile 295

// Approve a thread
case "approvethread":


// Approve a thread
case "approvethread":


// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canopenclosethreads"))


// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canopenclosethreads"))

		{
error_no_permission();
}

		{
error_no_permission();
}

Zeile 307Zeile 312
		log_moderator_action($modlogdata, $lang->thread_approved);

$moderation->approve_threads($tid, $fid);

		log_moderator_action($modlogdata, $lang->thread_approved);

$moderation->approve_threads($tid, $fid);





		moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadapproved);
break;

		moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_threadapproved);
break;





	// Unapprove a thread
case "unapprovethread":

	// Unapprove a thread
case "unapprovethread":





		// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canopenclosethreads"))

		// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canopenclosethreads"))

		{
error_no_permission();
}

		{
error_no_permission();
}

		$query = $db->simple_select("threads", "*", "tid='$tid'");
$thread = $db->fetch_array($query);

$plugins->run_hooks("moderation_unapprovethread");

		$query = $db->simple_select("threads", "*", "tid='$tid'");
$thread = $db->fetch_array($query);

$plugins->run_hooks("moderation_unapprovethread");





		$lang->thread_unapproved = $lang->sprintf($lang->thread_unapproved, $thread['subject']);
log_moderator_action($modlogdata, $lang->thread_unapproved);


		$lang->thread_unapproved = $lang->sprintf($lang->thread_unapproved, $thread['subject']);
log_moderator_action($modlogdata, $lang->thread_unapproved);


Zeile 337Zeile 342
	// Delete selective posts in a thread
case "deleteposts":
add_breadcrumb($lang->nav_deleteposts);

	// Delete selective posts in a thread
case "deleteposts":
add_breadcrumb($lang->nav_deleteposts);

		if(!is_moderator($fid, "candeleteposts"))
{
error_no_permission();
}
$posts = "";
$query = $db->query("
SELECT p.*, u.*
FROM ".TABLE_PREFIX."posts p

		if(!is_moderator($fid, "candeleteposts"))
{
error_no_permission();
}
$posts = "";
$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

			LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid)
WHERE tid='$tid'
ORDER BY dateline ASC

Zeile 393Zeile 398

$deletethread = "1";
$deletepost = $mybb->input['deletepost'];


$deletethread = "1";
$deletepost = $mybb->input['deletepost'];

		$query = $db->simple_select("posts", "*", "tid='$tid'");

		$query = $db->simple_select("posts", "*", "tid='$tid'");

		while($post = $db->fetch_array($query))
{
if($deletepost[$post['pid']] == 1)

		while($post = $db->fetch_array($query))
{
if($deletepost[$post['pid']] == 1)

Zeile 487Zeile 492
		}

foreach($mergepost as $pid => $yes)

		}

foreach($mergepost as $pid => $yes)

		{
$plist[] = intval($pid);
}
$moderation->merge_posts($plist, $tid, $mybb->input['sep']);


		{
$plist[] = intval($pid);
}
$moderation->merge_posts($plist, $tid, $mybb->input['sep']);


		mark_reports($plist, "posts");
log_moderator_action($modlogdata, $lang->merged_selective_posts);
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_mergeposts);

		mark_reports($plist, "posts");
log_moderator_action($modlogdata, $lang->merged_selective_posts);
moderation_redirect(get_thread_link($thread['tid']), $lang->redirect_mergeposts);

Zeile 507Zeile 512

$plugins->run_hooks("moderation_move");



$plugins->run_hooks("moderation_move");


		$forumselect = build_forum_jump("", '', 1, '', 0, '', "moveto");

		$forumselect = build_forum_jump("", '', 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 561Zeile 566
		{
case "copy":
log_moderator_action($modlogdata, $lang->thread_copied);

		{
case "copy":
log_moderator_action($modlogdata, $lang->thread_copied);

				break;

				break;

			default:
case "move":
case "redirect":

			default:
case "move":
case "redirect":

Zeile 626Zeile 631

// Update the thread notes!
case "do_threadnotes":


// Update the thread notes!
case "do_threadnotes":


// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canmanagethreads"))
{
error_no_permission();
}

$plugins->run_hooks("moderation_do_threadnotes");


// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canmanagethreads"))
{
error_no_permission();
}

$plugins->run_hooks("moderation_do_threadnotes");


log_moderator_action($modlogdata, $lang->thread_notes_edited);
$sqlarray = array(


log_moderator_action($modlogdata, $lang->thread_notes_edited);
$sqlarray = array(

Zeile 685Zeile 690
		break;

// Lets get those threads together baby! (Merge threads)

		break;

// Lets get those threads together baby! (Merge threads)

	case "do_merge":

// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canmanagethreads"))

	case "do_merge":

// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!is_moderator($fid, "canmanagethreads"))

		{
error_no_permission();
}

		{
error_no_permission();
}

Zeile 822Zeile 827
			eval("\$posts .= \"".$templates->get("moderation_split_post")."\";");
$altbg = alt_trow();
}

			eval("\$posts .= \"".$templates->get("moderation_split_post")."\";");
$altbg = alt_trow();
}

		$forumselect = build_forum_jump("", $fid, 1, '', 0, '', "moveto");

		$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");


$plugins->run_hooks("moderation_split");



$plugins->run_hooks("moderation_split");


Zeile 1058Zeile 1063
		break;

// Approve threads - Inline moderation

		break;

// Approve threads - Inline moderation

	case "multiapprovethreads":

// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!empty($mybb->input['searchid']))
{
// From search page
$threads = getids($mybb->input['searchid'], 'search');
if(!is_moderator_by_tids($threads, 'canmanagethreads'))
{
error_no_permission();
}
}
else
{
$threads = getids($fid, 'forum');
if(!is_moderator($fid, 'canmanagethreads'))
{
error_no_permission();
}
}
if(count($threads) < 1)
{
error($lang->error_inline_nothreadsselected);
}

$moderation->approve_threads($threads, $fid);

	case "multiapprovethreads":

// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

if(!empty($mybb->input['searchid']))
{
// From search page
$threads = getids($mybb->input['searchid'], 'search');
if(!is_moderator_by_tids($threads, 'canmanagethreads'))
{
error_no_permission();
}
}
else
{
$threads = getids($fid, 'forum');
if(!is_moderator($fid, 'canmanagethreads'))
{
error_no_permission();
}
}
if(count($threads) < 1)
{
error($lang->error_inline_nothreadsselected);
}

$moderation->approve_threads($threads, $fid);


log_moderator_action($modlogdata, $lang->multi_approved_threads);
if($mybb->input['inlinetype'] == 'search')


log_moderator_action($modlogdata, $lang->multi_approved_threads);
if($mybb->input['inlinetype'] == 'search')

Zeile 1262Zeile 1267
		{
clearinline($fid, 'forum');
}

		{
clearinline($fid, 'forum');
}

		$forumselect = build_forum_jump("", '', 1, '', 0, '', "moveto");

		$forumselect = build_forum_jump("", '', 1, '', 0, true, '', "moveto");

		$return_url = htmlspecialchars_uni($mybb->input['url']);
eval("\$movethread = \"".$templates->get("moderation_inline_movethreads")."\";");
output_page($movethread);

		$return_url = htmlspecialchars_uni($mybb->input['url']);
eval("\$movethread = \"".$templates->get("moderation_inline_movethreads")."\";");
output_page($movethread);

Zeile 1352Zeile 1357
		{
error_no_permission();
}

		{
error_no_permission();
}

 
		$postlist = array_map('intval', $postlist);
$pids = implode(',', $postlist);

$tids = array();
if($pids)
{
$query = $db->simple_select("threads", "tid", "firstpost IN({$pids})");
while($tid = $db->fetch_field($query, "tid"))
{
$tids[] = $tid;
}
}


		$deletecount = 0;
foreach($postlist as $pid)

		$deletecount = 0;
foreach($postlist as $pid)

		{

		{

			$pid = intval($pid);
$moderation->delete_post($pid);
$plist[] = $pid;
$deletecount++;

			$pid = intval($pid);
$moderation->delete_post($pid);
$plist[] = $pid;
$deletecount++;

		}
$query = $db->simple_select("posts", "*", "tid='$tid'");
$numposts = $db->num_rows($query);
if(!$numposts)
{
$moderation->delete_thread($tid);
mark_reports($tid, "thread");
$url = get_forum_link($fid);
}





		}

// If we have multiple threads, we must be coming from the search
if(!empty($tids))
{
foreach($tids as $tid)
{
$moderation->delete_thread($tid);
mark_reports($tid, "thread");
$url = get_forum_link($fid);
}
}
// Otherwise we're just deleting from showthread.php

		else
{

		else
{

			mark_reports($plist, "posts");
$url = get_thread_link($thread['tid']);












			$query = $db->simple_select("posts", "*", "tid='$tid'");
$numposts = $db->num_rows($query);
if(!$numposts)
{
$moderation->delete_thread($tid);
mark_reports($tid, "thread");
$url = get_forum_link($fid);
}
else
{
mark_reports($plist, "posts");
$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 1381Zeile 1415
	// 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->input['inlinetype'] == 'search')
{
$posts = getids($mybb->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();

		
if($mybb->input['inlinetype'] == 'search')
{
$posts = getids($mybb->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();

		}
$inlineids = implode("|", $posts);
if($mybb->input['inlinetype'] == 'search')

		}
$inlineids = implode("|", $posts);
if($mybb->input['inlinetype'] == 'search')

Zeile 1423Zeile 1457
		$postlist = explode("|", $mybb->input['posts']);

if(!is_moderator_by_pids($postlist, "canmanagethreads"))

		$postlist = explode("|", $mybb->input['posts']);

if(!is_moderator_by_pids($postlist, "canmanagethreads"))

		{
error_no_permission();
}


		{
error_no_permission();
}


		foreach($postlist as $pid)
{
$pid = intval($pid);

		foreach($postlist as $pid)
{
$pid = intval($pid);

Zeile 1469Zeile 1503
		// 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

		// 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, ".TABLE_PREFIX."posts q)
WHERE p.tid=q.tid AND p.pid IN ($pidin)


			FROM ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."posts q ON (p.tid=q.tid)
WHERE p.pid IN ($pidin)

			GROUP BY p.pid

			GROUP BY p.pid

			");

		");

		$threads = $pcheck = array();
while($tcheck = $db->fetch_array($query))
{

		$threads = $pcheck = array();
while($tcheck = $db->fetch_array($query))
{

Zeile 1515Zeile 1550
		{
clearinline($tid, 'thread');
}

		{
clearinline($tid, 'thread');
}

		$forumselect = build_forum_jump("", $fid, 1, '', 0, '', "moveto");

		$forumselect = build_forum_jump("", $fid, 1, '', 0, true, '', "moveto");

		eval("\$splitposts = \"".$templates->get("moderation_inline_splitposts")."\";");
output_page($splitposts);
break;

		eval("\$splitposts = \"".$templates->get("moderation_inline_splitposts")."\";");
output_page($splitposts);
break;

Zeile 1683Zeile 1718
				if($mybb->input['inlinetype'] == 'search')
{
clearinline($mybb->input['searchid'], 'search');

				if($mybb->input['inlinetype'] == 'search')
{
clearinline($mybb->input['searchid'], 'search');

					$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']);
redirect($mybb->input['url'], $lang->redirect_customtool_search);


					$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']);					
$return_url = htmlspecialchars_uni($mybb->input['url']);
redirect($return_url, $lang->redirect_customtool_search);

				}
else
{

				}
else
{

Zeile 1754Zeile 1790
				{
clearinline($mybb->input['searchid'], 'search');
$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']);

				{
clearinline($mybb->input['searchid'], 'search');
$lang->redirect_customtool_search = $lang->sprintf($lang->redirect_customtool_search, $tool['name']);

					redirect($mybb->input['url'], $lang->redirect_customtool_search);


					$return_url = htmlspecialchars_uni($mybb->input['url']);
redirect($return_url, $lang->redirect_customtool_search);

				}
else
{

				}
else
{

Zeile 1906Zeile 1943
	global $mybb;
if(!empty($mybb->input['url']))
{

	global $mybb;
if(!empty($mybb->input['url']))
{

		redirect($mybb->input['url'], $message, $title);

		redirect(htmlentities($mybb->input['url']), $message, $title);

	}
redirect($url, $message, $title);
}

	}
redirect($url, $message, $title);
}