Vergleich newthread.php - 1.8.26 - 1.8.39

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 23Zeile 23
require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";
require_once MYBB_ROOT."inc/functions_user.php";

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

 
require_once MYBB_ROOT."inc/functions_upload.php";


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


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

Zeile 35Zeile 36
{
$thread = get_thread($mybb->input['tid']);


{
$thread = get_thread($mybb->input['tid']);


	$query = $db->simple_select("posts", "*", "tid='".$mybb->get_input('tid', MyBB::INPUT_INT)."' AND visible='-2'", array('order_by' => 'dateline', 'limit' => 1));

	$query = $db->simple_select("posts", "*", "tid='".$mybb->input['tid']."' AND visible='-2'", array('order_by' => 'dateline, pid', 'limit' => 1));

	$post = $db->fetch_array($query);


	$post = $db->fetch_array($query);


	if(!$thread['tid'] || !$post['pid'] || $thread['visible'] != -2 || $thread['uid'] != $mybb->user['uid'])

	if(!$thread || !$post || $thread['visible'] != -2 || $thread['uid'] != $mybb->user['uid'])

	{
error($lang->invalidthread);
}

	{
error($lang->invalidthread);
}

Zeile 94Zeile 95
check_forum_password($forum['fid']);

// If MyCode is on for this forum and the MyCode editor is enabled in the Admin CP, draw the code buttons and smilie inserter.

check_forum_password($forum['fid']);

// If MyCode is on for this forum and the MyCode editor is enabled in the Admin CP, draw the code buttons and smilie inserter.

 
$codebuttons = '';
$smilieinserter = '';

if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && (!$mybb->user['uid'] || $mybb->user['showcodebuttons'] != 0))
{
$codebuttons = build_mycode_inserter("message", $forum['allowsmilies']);

if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && (!$mybb->user['uid'] || $mybb->user['showcodebuttons'] != 0))
{
$codebuttons = build_mycode_inserter("message", $forum['allowsmilies']);

Zeile 102Zeile 105
		$smilieinserter = build_clickable_smilies();
}
}

		$smilieinserter = build_clickable_smilies();
}
}

 

$posticons = '';


// Does this forum allow post icons? If so, fetch the post icons.
if($forum['allowpicons'] != 0)
{
$posticons = get_post_icons();


// Does this forum allow post icons? If so, fetch the post icons.
if($forum['allowpicons'] != 0)
{
$posticons = get_post_icons();

}


}


// If we have a currently logged in user then fetch the change user box.
if($mybb->user['uid'] != 0)
{

// If we have a currently logged in user then fetch the change user box.
if($mybb->user['uid'] != 0)
{

Zeile 118Zeile 123

// Otherwise we have a guest, determine the "username" and get the login box.
else


// Otherwise we have a guest, determine the "username" and get the login box.
else

{

{

	if(!isset($mybb->input['previewpost']) && $mybb->input['action'] != "do_newthread")
{
$username = '';

	if(!isset($mybb->input['previewpost']) && $mybb->input['action'] != "do_newthread")
{
$username = '';

Zeile 128Zeile 133
		$username = htmlspecialchars_uni($mybb->get_input('username'));
}
eval("\$loginbox = \"".$templates->get("loginbox")."\";");

		$username = htmlspecialchars_uni($mybb->get_input('username'));
}
eval("\$loginbox = \"".$templates->get("loginbox")."\";");

}

}


// If we're not performing a new thread insert and not editing a draft then we're posting a new thread.
if($mybb->input['action'] != "do_newthread" && $mybb->input['action'] != "editdraft")


// If we're not performing a new thread insert and not editing a draft then we're posting a new thread.
if($mybb->input['action'] != "do_newthread" && $mybb->input['action'] != "editdraft")

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

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


// Previewing a post, overwrite the action to the new thread action.
if(!empty($mybb->input['previewpost']))


// Previewing a post, overwrite the action to the new thread action.
if(!empty($mybb->input['previewpost']))

Zeile 157Zeile 162
$maximageserror = $attacherror = '';

// Handle attachments if we've got any.

$maximageserror = $attacherror = '';

// Handle attachments if we've got any.

if($mybb->settings['enableattachments'] == 1 && ($mybb->get_input('newattachment') || $mybb->get_input('updateattachment') || ((($mybb->input['action'] == "do_newthread" && $mybb->get_input('submit')) || ($mybb->input['action'] == "newthread" && isset($mybb->input['previewpost'])) || isset($mybb->input['savedraft'])) && $_FILES['attachments'])))





if($mybb->settings['enableattachments'] == 1 && 
($mybb->get_input('newattachment') || $mybb->get_input('updateattachment') ||
((($mybb->input['action'] == "do_newthread" && $mybb->get_input('submit')) ||
($mybb->input['action'] == "newthread" && isset($mybb->input['previewpost'])) ||
isset($mybb->input['savedraft'])) && isset($_FILES['attachments']))))

{
// 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 167Zeile 176
		$attachwhere = "pid='{$pid}'";
}
else

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

	{

	{

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

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

	}

require_once MYBB_ROOT."inc/functions_upload.php";


	}




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

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

 

if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1)
{
if(isset($ret['success']))
{
$attachment = array('aid'=>'{1}', 'icon'=>'{2}', 'filename'=>'{3}', 'size'=>'{4}');
if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && $mybb->user['showcodebuttons'] != 0)
{
eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";");
}
eval("\$attach_rem_options = \"".$templates->get("post_attachments_attachment_remove")."\";");
$attach_mod_options = '';
eval("\$attemplate = \"".$templates->get("post_attachments_attachment")."\";");
$ret['template'] = $attemplate;

$query = $db->simple_select("attachments", "SUM(filesize) AS ausage", "uid='".$mybb->user['uid']."'");
$usage = $db->fetch_array($query);
$ret['usage'] = get_friendly_size($usage['ausage']);
}

header("Content-type: application/json; charset={$lang->settings['charset']}");
echo json_encode($ret);
exit();
}


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


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

Zeile 182Zeile 213

// If we were dealing with an attachment but didn't click 'Post Thread' or 'Save as Draft', force the new thread page again.
if(!$mybb->get_input('submit') && !$mybb->get_input('savedraft'))


// If we were dealing with an attachment but didn't click 'Post Thread' or 'Save as Draft', force the new thread page again.
if(!$mybb->get_input('submit') && !$mybb->get_input('savedraft'))

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

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

}


}


detect_attachmentact();


detect_attachmentact();


// Are we removing an attachment from the thread?
if($mybb->settings['enableattachments'] == 1 && $mybb->get_input('attachmentaid', MyBB::INPUT_INT) && $mybb->get_input('attachmentact') == "remove")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

// Are we removing an attachment from the thread?
if($mybb->settings['enableattachments'] == 1 && $mybb->get_input('attachmentaid', MyBB::INPUT_INT) && $mybb->get_input('attachmentact') == "remove")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


require_once MYBB_ROOT."inc/functions_upload.php";




	remove_attachment($pid, $mybb->get_input('posthash'), $mybb->get_input('attachmentaid', MyBB::INPUT_INT));

	remove_attachment($pid, $mybb->get_input('posthash'), $mybb->get_input('attachmentaid', MyBB::INPUT_INT));

 


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

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

	}


	}


	if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1)
{

	if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1)
{

 
		$query = $db->simple_select("attachments", "SUM(filesize) AS ausage", "uid='".$mybb->user['uid']."'");
$usage = $db->fetch_array($query);


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

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

		echo json_encode(array("success" => true));

		echo json_encode(array("success" => true, "usage" => get_friendly_size($usage['ausage'])));

		exit();
}
}

		exit();
}
}

Zeile 233Zeile 267
	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("newthread_do_newthread_start");

	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("newthread_do_newthread_start");





	// If this isn't a logged in user, then we need to do some special validation.
if($mybb->user['uid'] == 0)
{

	// If this isn't a logged in user, then we need to do some special validation.
if($mybb->user['uid'] == 0)
{

Zeile 300Zeile 334
	if(!$mybb->get_input('savedraft') && !$pid)
{
$query = $db->simple_select("posts p", "p.pid", "$user_check AND p.fid='{$forum['fid']}' AND p.subject='".$db->escape_string($mybb->get_input('subject'))."' AND p.message='".$db->escape_string($mybb->get_input('message'))."' AND p.dateline>".(TIME_NOW-600));

	if(!$mybb->get_input('savedraft') && !$pid)
{
$query = $db->simple_select("posts p", "p.pid", "$user_check AND p.fid='{$forum['fid']}' AND p.subject='".$db->escape_string($mybb->get_input('subject'))."' AND p.message='".$db->escape_string($mybb->get_input('message'))."' AND p.dateline>".(TIME_NOW-600));

		$duplicate_check = $db->fetch_field($query, "pid");
if($duplicate_check)

		if($db->num_rows($query) > 0)


		{
error($lang->error_post_already_submitted);
}

		{
error($lang->error_post_already_submitted);
}

Zeile 567Zeile 600
					LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
WHERE p.pid IN ({$quoted_posts}) {$unviewable_forums} {$inactiveforums} {$onlyusforums} {$visible_where}

					LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
WHERE p.pid IN ({$quoted_posts}) {$unviewable_forums} {$inactiveforums} {$onlyusforums} {$visible_where}

					ORDER BY p.dateline

					ORDER BY p.dateline, p.pid

				");
while($quoted_post = $db->fetch_array($query))
{

				");
while($quoted_post = $db->fetch_array($query))
{

Zeile 614Zeile 647
	}

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

	}

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

	{

	{

		$quoted_ids = htmlspecialchars_uni($mybb->get_input('quoted_ids'));
}


		$quoted_ids = htmlspecialchars_uni($mybb->get_input('quoted_ids'));
}


Zeile 645Zeile 678
		}
$subscription_method = get_subscription_method($tid, $postoptions);
$numpolloptions = $mybb->get_input('numpolloptions', MyBB::INPUT_INT);

		}
$subscription_method = get_subscription_method($tid, $postoptions);
$numpolloptions = $mybb->get_input('numpolloptions', MyBB::INPUT_INT);

	}


	}


	// Editing a draft thread
else if($mybb->input['action'] == "editdraft" && $mybb->user['uid'])
{

	// Editing a draft thread
else if($mybb->input['action'] == "editdraft" && $mybb->user['uid'])
{

Zeile 667Zeile 700
			$posticons = get_post_icons();
}
$subscription_method = get_subscription_method($tid); // Subscription method doesn't get saved in drafts

			$posticons = get_post_icons();
}
$subscription_method = get_subscription_method($tid); // Subscription method doesn't get saved in drafts

 
		$numpolloptions = "2";

	}

// Otherwise, this is our initial visit to this page.

	}

// Otherwise, this is our initial visit to this page.

Zeile 741Zeile 775
		if($new_thread['uid'] == 0)
{
$valid_username = $posthandler->verify_author();

		if($new_thread['uid'] == 0)
{
$valid_username = $posthandler->verify_author();

		}

		}

		else
{
$valid_username = true;

		else
{
$valid_username = true;

Zeile 820Zeile 854
	{
$message = htmlspecialchars_uni($mybb->get_input('message'));
$subject = htmlspecialchars_uni($mybb->get_input('subject'));

	{
$message = htmlspecialchars_uni($mybb->get_input('message'));
$subject = htmlspecialchars_uni($mybb->get_input('subject'));

	}

	}


// Generate thread prefix selector
if(!$mybb->get_input('threadprefix', MyBB::INPUT_INT))


// Generate thread prefix selector
if(!$mybb->get_input('threadprefix', MyBB::INPUT_INT))

Zeile 852Zeile 886
		eval("\$postoptions = \"".$templates->get("newthread_postoptions")."\";");
$bgcolor = "trow2";
$bgcolor2 = "trow1";

		eval("\$postoptions = \"".$templates->get("newthread_postoptions")."\";");
$bgcolor = "trow2";
$bgcolor2 = "trow1";

	}

	}

	else

	else

	{

	{

		$bgcolor = "trow1";
$bgcolor2 = "trow2";
}

		$bgcolor = "trow1";
$bgcolor2 = "trow2";
}

Zeile 867Zeile 901
		if(isset($modoptions['closethread']) && $modoptions['closethread'] == 1)
{
$closecheck = "checked=\"checked\"";

		if(isset($modoptions['closethread']) && $modoptions['closethread'] == 1)
{
$closecheck = "checked=\"checked\"";

		}

		}

		else
{
$closecheck = '';

		else
{
$closecheck = '';

Zeile 882Zeile 916
		}

$closeoption = '';

		}

$closeoption = '';

		if(is_moderator($thread['fid'], "canopenclosethreads"))

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

		{
eval("\$closeoption = \"".$templates->get("newreply_modoptions_close")."\";");
}

$stickoption = '';

		{
eval("\$closeoption = \"".$templates->get("newreply_modoptions_close")."\";");
}

$stickoption = '';

		if(is_moderator($thread['fid'], "canstickunstickthreads"))

		if(is_moderator($fid, "canstickunstickthreads"))

		{
eval("\$stickoption = \"".$templates->get("newreply_modoptions_stick")."\";");
}

		{
eval("\$stickoption = \"".$templates->get("newreply_modoptions_stick")."\";");
}

Zeile 932Zeile 966
			$attachment['size'] = get_friendly_size($attachment['filesize']);
$attachment['icon'] = get_attachment_icon(get_extension($attachment['filename']));
$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

			$attachment['size'] = get_friendly_size($attachment['filesize']);
$attachment['icon'] = get_attachment_icon(get_extension($attachment['filename']));
$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);





			if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && (!$mybb->user['uid'] || $mybb->user['showcodebuttons'] != 0))
{
eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";");

			if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && (!$mybb->user['uid'] || $mybb->user['showcodebuttons'] != 0))
{
eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";");

Zeile 964Zeile 998
		else
{
$friendlyquota = get_friendly_size($mybb->usergroup['attachquota']*1024);

		else
{
$friendlyquota = get_friendly_size($mybb->usergroup['attachquota']*1024);

		}

		}

		$lang->attach_quota = $lang->sprintf($lang->attach_quota, $friendlyquota);

		$lang->attach_quota = $lang->sprintf($lang->attach_quota, $friendlyquota);

		



$link_viewattachments = '';

		if($usage['ausage'] !== NULL)

		if($usage['ausage'] !== NULL)

		{

		{

			$friendlyusage = get_friendly_size($usage['ausage']);
$lang->attach_usage = $lang->sprintf($lang->attach_usage, $friendlyusage);
eval("\$link_viewattachments = \"".$templates->get("post_attachments_viewlink")."\";");

			$friendlyusage = get_friendly_size($usage['ausage']);
$lang->attach_usage = $lang->sprintf($lang->attach_usage, $friendlyusage);
eval("\$link_viewattachments = \"".$templates->get("post_attachments_viewlink")."\";");

Zeile 977Zeile 1012
		{
$lang->attach_usage = "";
}

		{
$lang->attach_usage = "";
}

		



$attach_add_options = '';

		if($mybb->settings['maxattachments'] == 0 || ($mybb->settings['maxattachments'] != 0 && $attachcount < $mybb->settings['maxattachments']) && !isset($noshowattach))
{
eval("\$attach_add_options = \"".$templates->get("post_attachments_add")."\";");
}


		if($mybb->settings['maxattachments'] == 0 || ($mybb->settings['maxattachments'] != 0 && $attachcount < $mybb->settings['maxattachments']) && !isset($noshowattach))
{
eval("\$attach_add_options = \"".$templates->get("post_attachments_add")."\";");
}


 
		$attach_update_options = '';

		if(($mybb->usergroup['caneditattachments'] || $forumpermissions['caneditattachments']) && $attachcount > 0)
{
eval("\$attach_update_options = \"".$templates->get("post_attachments_update")."\";");

		if(($mybb->usergroup['caneditattachments'] || $forumpermissions['caneditattachments']) && $attachcount > 0)
{
eval("\$attach_update_options = \"".$templates->get("post_attachments_update")."\";");

Zeile 995Zeile 1032
		eval("\$attachbox = \"".$templates->get("post_attachments")."\";");

$bgcolor = alt_trow();

		eval("\$attachbox = \"".$templates->get("post_attachments")."\";");

$bgcolor = alt_trow();

	}





	}
else
{
$attachbox = '';
}





 
	$savedraftbutton = '';

	if($mybb->user['uid'])
{
eval("\$savedraftbutton = \"".$templates->get("post_savedraftbutton", 1, 0)."\";");

	if($mybb->user['uid'])
{
eval("\$savedraftbutton = \"".$templates->get("post_savedraftbutton", 1, 0)."\";");

Zeile 1021Zeile 1063

// Generate a hidden list of items for our captcha
$captcha = $post_captcha->build_hidden_captcha();


// Generate a hidden list of items for our captcha
$captcha = $post_captcha->build_hidden_captcha();

			}
}

			}
}


if(!$correct)


if(!$correct)

		{
if($post_captcha->type == 1)
{

		{
if($post_captcha->type == captcha::DEFAULT_CAPTCHA)
{

				$post_captcha->build_captcha();

				$post_captcha->build_captcha();

			}
elseif(in_array($post_captcha->type, array(4, 5, 8)))

			}
elseif(in_array($post_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3)))

			{
$post_captcha->build_recaptcha();
}

			{
$post_captcha->build_recaptcha();
}

			elseif(in_array($post_captcha->type, array(6, 7)))

			elseif(in_array($post_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)))

			{
$post_captcha->build_hcaptcha();
}
}

			{
$post_captcha->build_hcaptcha();
}
}

		else if($correct && (in_array($post_captcha->type, array(4, 5, 8))))

		else if($correct && (in_array($post_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3))))

		{
$post_captcha->build_recaptcha();

		{
$post_captcha->build_recaptcha();

		}
else if($correct && (in_array($post_captcha->type, array(6, 7))))
{

		}
else if($correct && (in_array($post_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE))))
{

			$post_captcha->build_hcaptcha();

			$post_captcha->build_hcaptcha();

		}


		}


		if($post_captcha->html)
{
$captcha = $post_captcha->html;
}
}

		if($post_captcha->html)
{
$captcha = $post_captcha->html;
}
}

 

$pollbox = '';


if($forumpermissions['canpostpolls'] != 0)
{


if($forumpermissions['canpostpolls'] != 0)
{

Zeile 1069Zeile 1113
			$forum['rulestitle'] = $lang->sprintf($lang->forum_rules, $forum['name']);
}


			$forum['rulestitle'] = $lang->sprintf($lang->forum_rules, $forum['name']);
}


		if(!$parser)

		if(empty($parser))

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

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

		}


		}


		$rules_parser = array(
"allow_html" => 1,
"allow_mycode" => 1,

		$rules_parser = array(
"allow_html" => 1,
"allow_mycode" => 1,

Zeile 1123Zeile 1167
		}
}


		}
}


	$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_upload_size = get_php_upload_limit();












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


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