Vergleich editpost.php - 1.8.4 - 1.8.21

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 11Zeile 11
define("IN_MYBB", 1);
define('THIS_SCRIPT', 'editpost.php');


define("IN_MYBB", 1);
define('THIS_SCRIPT', 'editpost.php');


$templatelist = "editpost,previewpost,changeuserbox,codebuttons,smilieinsert,smilieinsert_getmore,smilieinsert_smilie,smilieinsert_smilie_empty,post_attachments_attachment_postinsert,post_attachments_attachment_mod_unapprove,postbit_attachments_thumbnails";
$templatelist .= ",editpost_delete,error_attacherror,forumdisplay_password_wrongpass,forumdisplay_password,editpost_reason,post_attachments_attachment_remove,post_attachments_update,post_subscription_method,postbit_online,postbit_away";
$templatelist .= ",postbit_avatar,postbit_find,postbit_pm,postbit_rep_button,postbit_www,postbit_email,postbit_reputation,postbit_warn,postbit_warninglevel,postbit_author_user,postbit_icon,postbit_userstar,postbit_offline,postbit_attachments_images";
$templatelist .= ",postbit_signature,postbit_classic,postbit,postbit_attachments_thumbnails_thumbnail,postbit_attachments_images_image,postbit_attachments_attachment,postbit_attachments_attachment_unapproved,post_attachments_update,postbit_attachments";
$templatelist .= ",posticons_icon,post_prefixselect_prefix,post_prefixselect_single,newthread_postpoll,editpost_disablesmilies,post_attachments_attachment_mod_approve,post_attachments_attachment_unapproved,post_attachments_new,postbit_gotopost";
$templatelist .= ",postbit_warninglevel_formatted,postbit_reputation_formatted_link,editpost_disablesmilies_hidden,attachment_icon,post_attachments_attachment,post_attachments_add,post_attachments,posticons,global_moderation_notice";


$templatelist = "editpost,previewpost,changeuserbox,codebuttons,post_attachments_attachment_postinsert,post_attachments_attachment_mod_unapprove,postbit_attachments_thumbnails,postbit_profilefield_multiselect_value";
$templatelist .= ",editpost_delete,forumdisplay_password_wrongpass,forumdisplay_password,editpost_reason,post_attachments_attachment_remove,post_attachments_update,post_subscription_method,postbit_profilefield_multiselect";
$templatelist .= ",postbit_avatar,postbit_find,postbit_pm,postbit_rep_button,postbit_www,postbit_email,postbit_reputation,postbit_warn,postbit_warninglevel,postbit_author_user,posticons";
$templatelist .= ",postbit_signature,postbit_classic,postbit,postbit_attachments_thumbnails_thumbnail,postbit_attachments_images_image,postbit_attachments_attachment,postbit_attachments_attachment_unapproved";
$templatelist .= ",posticons_icon,post_prefixselect_prefix,post_prefixselect_single,newthread_postpoll,editpost_disablesmilies,post_attachments_attachment_mod_approve,post_attachments_attachment_unapproved";
$templatelist .= ",postbit_warninglevel_formatted,postbit_reputation_formatted_link,editpost_signature,attachment_icon,post_attachments_attachment,post_attachments_add,post_attachments,editpost_postoptions";
$templatelist .= ",postbit_attachments_images,global_moderation_notice,post_attachments_new,postbit_attachments,postbit_online,postbit_away,postbit_offline,postbit_gotopost,postbit_userstar,postbit_icon";


require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";
require_once MYBB_ROOT."inc/functions_upload.php";


require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";
require_once MYBB_ROOT."inc/functions_upload.php";

 
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;


// Load global language phrases
$lang->load("editpost");


// Load global language phrases
$lang->load("editpost");

Zeile 46Zeile 49
	$post = get_post($pid);
}


	$post = get_post($pid);
}


if(!$post)

if(!$post || ($post['visible'] == -1 && $mybb->input['action'] != "restorepost"))

{
error($lang->error_invalidpost);
}

{
error($lang->error_invalidpost);
}

Zeile 60Zeile 63
	error($lang->error_invalidthread);
}


	error($lang->error_invalidthread);
}


$thread['subject'] = htmlspecialchars_uni($thread['subject']);

$thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($thread['subject']));


// Get forum info
$fid = $post['fid'];


// Get forum info
$fid = $post['fid'];

Zeile 68Zeile 71

if($thread['visible'] == 0 && !is_moderator($fid, "canviewunapprove") || $thread['visible'] == -1 && !is_moderator($fid, "canviewdeleted") || ($thread['visible'] < -1 && $thread['uid'] != $mybb->user['uid']))
{


if($thread['visible'] == 0 && !is_moderator($fid, "canviewunapprove") || $thread['visible'] == -1 && !is_moderator($fid, "canviewdeleted") || ($thread['visible'] < -1 && $thread['uid'] != $mybb->user['uid']))
{

	error($lang->error_invalidthread);




	if($thread['visible'] == 0 && !($mybb->settings['showownunapproved'] && $thread['uid'] == $mybb->user['uid']))
{
error($lang->error_invalidthread);
}

}
if(!$forum || $forum['type'] != "f")
{

}
if(!$forum || $forum['type'] != "f")
{

Zeile 128Zeile 134
		{
error_no_permission();
}

		{
error_no_permission();
}

		// User can't delete unapproved post
if($post['visible'] == 0)

		// User can't delete unapproved post unless allowed for own
if($post['visible'] == 0 && !($mybb->settings['showownunapproved'] && $post['uid'] == $mybb->user['uid']))

		{
error_no_permission();
}

		{
error_no_permission();
}

Zeile 170Zeile 176
			error($lang->edit_time_limit);
}
// User can't edit unapproved post

			error($lang->edit_time_limit);
}
// User can't edit unapproved post

		if($post['visible'] == 0 || $post['visible'] == -1)

		if(($post['visible'] == 0 && !($mybb->settings['showownunapproved'] && $post['uid'] == $mybb->user['uid'])) || $post['visible'] == -1)

		{
error_no_permission();
}

		{
error_no_permission();
}

Zeile 182Zeile 188

if((empty($_POST) && empty($_FILES)) && $mybb->get_input('processed', MyBB::INPUT_INT) == '1')
{


if((empty($_POST) && empty($_FILES)) && $mybb->get_input('processed', MyBB::INPUT_INT) == '1')
{

	error($lang->error_cannot_upload_php_post);

	error($lang->error_empty_post_input);

}

$attacherror = '';

}

$attacherror = '';

Zeile 191Zeile 197
	// 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 there's an attachment, check it and upload it
if($_FILES['attachment']['size'] > 0 && $forumpermissions['canpostattachments'] != 0)

	if($pid)


	{

	{

		$query = $db->simple_select("attachments", "aid", "filename='".$db->escape_string($_FILES['attachment']['name'])."' AND pid='{$pid}'");
$updateattach = $db->fetch_field($query, "aid");

$update_attachment = false;
if($updateattach > 0 && $mybb->get_input('updateattachment') && ($mybb->usergroup['caneditattachments'] || $forumpermissions['caneditattachments']))
{
$update_attachment = true;
}
$attachedfile = upload_attachment($_FILES['attachment'], $update_attachment);
}
if(!empty($attachedfile['error']))
{
eval("\$attacherror = \"".$templates->get("error_attacherror")."\";");
$mybb->input['action'] = "editpost";

		$attachwhere = "pid='{$pid}'";














	}

	}

 
	else
{
$attachwhere = "posthash='".$db->escape_string($mybb->get_input('posthash'))."'";
}

$ret = add_attachments($pid, $forumpermissions, $attachwhere, "editpost");

if(!empty($ret['errors']))
{
$errors = $ret['errors'];
}

// Do we have attachment errors?
if(!empty($errors))
{
$attacherror = inline_error($errors);
}

// If we were dealing with an attachment but didn't click 'Update Post', force the post edit page again.

	if(!isset($mybb->input['submit']))

	if(!isset($mybb->input['submit']))

	{

	{

		$mybb->input['action'] = "editpost";
}
}

		$mybb->input['action'] = "editpost";
}
}

Zeile 219Zeile 230
{
// 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'));





	$mybb->input['attachmentaid'] = $mybb->get_input('attachmentaid', MyBB::INPUT_INT);
if($mybb->input['attachmentact'] == "remove")
{

	$mybb->input['attachmentaid'] = $mybb->get_input('attachmentaid', MyBB::INPUT_INT);
if($mybb->input['attachmentact'] == "remove")
{

Zeile 228Zeile 239
	elseif($mybb->get_input('attachmentact') == "approve" && is_moderator($fid, 'canapproveunapproveattachs'))
{
$update_sql = array("visible" => 1);

	elseif($mybb->get_input('attachmentact') == "approve" && is_moderator($fid, 'canapproveunapproveattachs'))
{
$update_sql = array("visible" => 1);

		$db->update_query("attachments", $update_sql, "aid='{$mybb->input['attachmentaid']}'");

		$db->update_query("attachments", $update_sql, "aid='{$mybb->input['attachmentaid']}'");

		update_thread_counters($post['tid'], array('attachmentcount' => "+1"));
}
elseif($mybb->get_input('attachmentact') == "unapprove" && is_moderator($fid, 'canapproveunapproveattachs'))

		update_thread_counters($post['tid'], array('attachmentcount' => "+1"));
}
elseif($mybb->get_input('attachmentact') == "unapprove" && is_moderator($fid, 'canapproveunapproveattachs'))

	{

	{

		$update_sql = array("visible" => 0);
$db->update_query("attachments", $update_sql, "aid='{$mybb->input['attachmentaid']}'");
update_thread_counters($post['tid'], array('attachmentcount' => "-1"));
}

		$update_sql = array("visible" => 0);
$db->update_query("attachments", $update_sql, "aid='{$mybb->input['attachmentaid']}'");
update_thread_counters($post['tid'], array('attachmentcount' => "-1"));
}

 

if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1)
{
header("Content-type: application/json; charset={$lang->settings['charset']}");
echo json_encode(array("success" => true));
exit();
}


	if(!isset($mybb->input['submit']))
{
$mybb->input['action'] = "editpost";

	if(!isset($mybb->input['submit']))
{
$mybb->input['action'] = "editpost";

Zeile 291Zeile 310
					header("Content-type: application/json; charset={$lang->settings['charset']}");
if(is_moderator($fid, "canviewdeleted"))
{

					header("Content-type: application/json; charset={$lang->settings['charset']}");
if(is_moderator($fid, "canviewdeleted"))
{

						echo json_encode(array("data" => '1'));

						echo json_encode(array("data" => '1', "first" => '1'));

					}
else
{

					}
else
{

Zeile 346Zeile 365
					header("Content-type: application/json; charset={$lang->settings['charset']}");
if(is_moderator($fid, "canviewdeleted"))
{

					header("Content-type: application/json; charset={$lang->settings['charset']}");
if(is_moderator($fid, "canviewdeleted"))
{

						echo json_encode(array("data" => '1'));

						echo json_encode(array("data" => '1', "first" => '0'));

					}
else
{

					}
else
{

Zeile 382Zeile 401
		$query = $db->simple_select("posts", "pid", "tid='{$tid}'", array("limit" => 1, "order_by" => "dateline", "order_dir" => "asc"));
$firstcheck = $db->fetch_array($query);
if($firstcheck['pid'] == $pid)

		$query = $db->simple_select("posts", "pid", "tid='{$tid}'", array("limit" => 1, "order_by" => "dateline", "order_dir" => "asc"));
$firstcheck = $db->fetch_array($query);
if($firstcheck['pid'] == $pid)

		{

		{

			$firstpost = 1;
}
else

			$firstpost = 1;
}
else

Zeile 404Zeile 423
				if($mybb->input['ajax'] == 1)
{
header("Content-type: application/json; charset={$lang->settings['charset']}");

				if($mybb->input['ajax'] == 1)
{
header("Content-type: application/json; charset={$lang->settings['charset']}");

					echo json_encode(array("data" => '1'));

					echo json_encode(array("data" => '1', "first" => '1'));

				}
else
{

				}
else
{

Zeile 430Zeile 449
				if($mybb->input['ajax'] == 1)
{
header("Content-type: application/json; charset={$lang->settings['charset']}");

				if($mybb->input['ajax'] == 1)
{
header("Content-type: application/json; charset={$lang->settings['charset']}");

					echo json_encode(array("data" => '1'));

					echo json_encode(array("data" => '1', "first" => '0'));

				}
else
{

				}
else
{

Zeile 484Zeile 503
		$postoptions['subscriptionmethod'] = 0;
}
if(!isset($postoptions['disablesmilies']))

		$postoptions['subscriptionmethod'] = 0;
}
if(!isset($postoptions['disablesmilies']))

	{

	{

		$postoptions['disablesmilies'] = 0;
}


		$postoptions['disablesmilies'] = 0;
}


Zeile 557Zeile 576
		$posticons = get_post_icons();
}


		$posticons = get_post_icons();
}


 
	$mybb->user['username'] = htmlspecialchars_uni($mybb->user['username']);

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

$deletebox = '';

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

$deletebox = '';

Zeile 657Zeile 677
		$subject = $mybb->get_input('subject');
$reason = htmlspecialchars_uni($mybb->get_input('editreason'));
}

		$subject = $mybb->get_input('subject');
$reason = htmlspecialchars_uni($mybb->get_input('editreason'));
}

 

$previewmessage = $message;
$previewsubject = $subject;
$message = htmlspecialchars_uni($message);
$subject = htmlspecialchars_uni($subject);


if(!isset($post_errors))
{
$post_errors = '';
}



if(!isset($post_errors))
{
$post_errors = '';
}


	$postoptions_subscriptionmethod_dont = $postoptions_subscriptionmethod_none = $postoptions_subscriptionmethod_email = $postoptions_subscriptionmethod_pm = '';

	$subscribe = $nonesubscribe = $emailsubscribe = $pmsubscribe = '';

	$postoptionschecked = array('signature' => '', 'disablesmilies' => '');


	$postoptionschecked = array('signature' => '', 'disablesmilies' => '');


	if(isset($mybb->input['previewpost']) || $post_errors)

	if(!empty($mybb->input['previewpost']) || $post_errors)

	{
// Set up posthandler.
require_once MYBB_ROOT."inc/datahandlers/post.php";

	{
// Set up posthandler.
require_once MYBB_ROOT."inc/datahandlers/post.php";

Zeile 680Zeile 705
			"subject" => $mybb->get_input('subject'),
"icon" => $mybb->get_input('icon', MyBB::INPUT_INT),
"uid" => $post['uid'],

			"subject" => $mybb->get_input('subject'),
"icon" => $mybb->get_input('icon', MyBB::INPUT_INT),
"uid" => $post['uid'],

 
			"username" => $post['username'],

			"edit_uid" => $mybb->user['uid'],
"message" => $mybb->get_input('message'),
);

			"edit_uid" => $mybb->user['uid'],
"message" => $mybb->get_input('message'),
);

Zeile 717Zeile 743
		}
else
{

		}
else
{

			$previewmessage = $message;
$previewsubject = $subject;
$message = htmlspecialchars_uni($message);
$subject = htmlspecialchars_uni($subject);

 

$postoptions = $mybb->get_input('postoptions', MyBB::INPUT_ARRAY);

if(isset($postoptions['signature']) && $postoptions['signature'] == 1)
{
$postoptionschecked['signature'] = " checked=\"checked\"";


$postoptions = $mybb->get_input('postoptions', MyBB::INPUT_ARRAY);

if(isset($postoptions['signature']) && $postoptions['signature'] == 1)
{
$postoptionschecked['signature'] = " checked=\"checked\"";

			}

if(isset($postoptions['subscriptionmethod']) && $postoptions['subscriptionmethod'] == "none")
{
$postoptions_subscriptionmethod_none = "checked=\"checked\"";
}
else if(isset($postoptions['subscriptionmethod']) && $postoptions['subscriptionmethod'] == "email")
{
$postoptions_subscriptionmethod_email = "checked=\"checked\"";
}
else if(isset($postoptions['subscriptionmethod']) && $postoptions['subscriptionmethod'] == "pm")
{
$postoptions_subscriptionmethod_pm = "checked=\"checked\"";
}
else
{
$postoptions_subscriptionmethod_dont = "checked=\"checked\"";

 
			}

if(isset($postoptions['disablesmilies']) && $postoptions['disablesmilies'] == 1)
{
$postoptionschecked['disablesmilies'] = " checked=\"checked\"";
}

			}

if(isset($postoptions['disablesmilies']) && $postoptions['disablesmilies'] == 1)
{
$postoptionschecked['disablesmilies'] = " checked=\"checked\"";
}

		}
}

if(isset($mybb->input['previewpost']))




			
$subscription_method = get_subscription_method($tid, $postoptions);
${$subscription_method.'subscribe'} = "checked=\"checked\" ";
}
}

if(!empty($mybb->input['previewpost']))

	{
if(!$post['uid'])
{
$query = $db->simple_select('posts', 'username, dateline', "pid='{$pid}'");

	{
if(!$post['uid'])
{
$query = $db->simple_select('posts', 'username, dateline', "pid='{$pid}'");

			$postinfo = $db->fetch_array($query);
}

			$postinfo = $db->fetch_array($query);
}

		else
{
// Figure out the poster's other information.

		else
{
// Figure out the poster's other information.

Zeile 777Zeile 785

$query = $db->simple_select("attachments", "*", "pid='{$pid}'");
while($attachment = $db->fetch_array($query))


$query = $db->simple_select("attachments", "*", "pid='{$pid}'");
while($attachment = $db->fetch_array($query))

		{

		{

			$attachcache[0][$attachment['aid']] = $attachment;
}


			$attachcache[0][$attachment['aid']] = $attachment;
}


Zeile 796Zeile 804
		eval("\$preview = \"".$templates->get("previewpost")."\";");
}
else if(!$post_errors)

		eval("\$preview = \"".$templates->get("previewpost")."\";");
}
else if(!$post_errors)

	{
$message = htmlspecialchars_uni($message);
$subject = htmlspecialchars_uni($subject);


	{




		$preview = '';

		$preview = '';





		if($post['includesig'] != 0)

		if($post['includesig'] != 0)

		{

		{

			$postoptionschecked['signature'] = " checked=\"checked\"";
}


			$postoptionschecked['signature'] = " checked=\"checked\"";
}


		if($post['smilieoff'] == 1)
{
$postoptionschecked['disablesmilies'] = " checked=\"checked\"";
}

$query = $db->simple_select("threadsubscriptions", "notification", "tid='{$tid}' AND uid='{$mybb->user['uid']}'");
if($db->num_rows($query) > 0)

		if($post['smilieoff'] == 1)







		{

		{

			$notification = $db->fetch_field($query, 'notification');

if($notification == 0)
{
$postoptions_subscriptionmethod_none = "checked=\"checked\"";
}
else if($notification == 1)
{
$postoptions_subscriptionmethod_email = "checked=\"checked\"";
}
else if($notification == 2)
{
$postoptions_subscriptionmethod_pm = "checked=\"checked\"";
}
else
{
$postoptions_subscriptionmethod_dont = "checked=\"checked\"";
}
}
}

			$postoptionschecked['disablesmilies'] = " checked=\"checked\"";
}

$subscription_method = get_subscription_method($tid, $postoptions);
${$subscription_method.'subscribe'} = "checked=\"checked\" ";
}
















// Generate thread prefix selector if this is the first post of the thread
if($thread['firstpost'] == $pid)


// Generate thread prefix selector if this is the first post of the thread
if($thread['firstpost'] == $pid)

Zeile 844Zeile 829
			$mybb->input['threadprefix'] = $thread['prefix'];
}


			$mybb->input['threadprefix'] = $thread['prefix'];
}


		$prefixselect = build_prefix_select($forum['fid'], $mybb->get_input('threadprefix', MyBB::INPUT_INT));

		$prefixselect = build_prefix_select($forum['fid'], $mybb->get_input('threadprefix', MyBB::INPUT_INT), 0, $thread['prefix']);

	}
else
{

	}
else
{

Zeile 872Zeile 857

$time = TIME_NOW;
if($firstcheck['pid'] == $pid && $forumpermissions['canpostpolls'] != 0 && $thread['poll'] < 1 && (is_moderator($fid, "canmanagepolls") || $thread['dateline'] > ($time-($mybb->settings['polltimelimit']*60*60)) || $mybb->settings['polltimelimit'] == 0))


$time = TIME_NOW;
if($firstcheck['pid'] == $pid && $forumpermissions['canpostpolls'] != 0 && $thread['poll'] < 1 && (is_moderator($fid, "canmanagepolls") || $thread['dateline'] > ($time-($mybb->settings['polltimelimit']*60*60)) || $mybb->settings['polltimelimit'] == 0))

	{

	{

		$lang->max_options = $lang->sprintf($lang->max_options, $mybb->settings['maxpolloptions']);

		$lang->max_options = $lang->sprintf($lang->max_options, $mybb->settings['maxpolloptions']);

		$numpolloptions = "2";

		$numpolloptions = $mybb->get_input('numpolloptions', MyBB::INPUT_INT);

		$postpollchecked = '';

		$postpollchecked = '';

 
		
if($numpolloptions < 1)
{
$numpolloptions = 2;
}

if($mybb->get_input('postpoll', MyBB::INPUT_INT) == 1)
{
$postpollchecked = 'checked="checked"';
}


		eval("\$pollbox = \"".$templates->get("newthread_postpoll")."\";");

		eval("\$pollbox = \"".$templates->get("newthread_postpoll")."\";");

	}

	}

	else
{
$pollbox = '';

	else
{
$pollbox = '';

 
	}

// Hide signature option if no permission
$signature = '';
if($mybb->usergroup['canusesig'] == 1 && !$mybb->user['suspendsignature'])
{
eval("\$signature = \"".$templates->get('editpost_signature')."\";");

	}

// Can we disable smilies or are they disabled already?
$disablesmilies = '';
if($forum['allowsmilies'] != 0)

	}

// Can we disable smilies or are they disabled already?
$disablesmilies = '';
if($forum['allowsmilies'] != 0)

	{

	{

		eval("\$disablesmilies = \"".$templates->get("editpost_disablesmilies")."\";");
}

		eval("\$disablesmilies = \"".$templates->get("editpost_disablesmilies")."\";");
}

	else




$postoptions = '';
if(!empty($signature) || !empty($disablesmilies))

	{

	{

		eval("\$disablesmilies = \"".$templates->get("editpost_disablesmilies_hidden")."\";");

		eval("\$postoptions = \"".$templates->get("editpost_postoptions")."\";");

	}

$moderation_notice = '';

	}

$moderation_notice = '';

Zeile 912Zeile 917
			eval('$moderation_notice = "'.$templates->get('global_moderation_notice').'";');
}
}

			eval('$moderation_notice = "'.$templates->get('global_moderation_notice').'";');
}
}

 

$php_max_upload_filesize = return_bytes(ini_get('max_upload_filesize'));
$php_post_max_size = return_bytes(ini_get('post_max_size'));

if ($php_max_upload_filesize != 0 && $php_post_max_size != 0)
{
$php_max_upload_size = min($php_max_upload_filesize, $php_post_max_size);
}
else
{
$php_max_upload_size = max($php_max_upload_filesize, $php_post_max_size);
}

$php_max_file_uploads = (int)ini_get('max_file_uploads');
eval("\$post_javascript = \"".$templates->get("post_javascript")."\";");


$plugins->run_hooks("editpost_end");



$plugins->run_hooks("editpost_end");