Vergleich inc/functions_post.php - 1.8.8 - 1.8.20

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 90Zeile 90
			break;
case 3: // Announcement
global $announcementarray, $message;

			break;
case 3: // Announcement
global $announcementarray, $message;

			$parser_options['allow_html'] = $announcementarray['allowhtml'];

			$parser_options['allow_html'] = $mybb->settings['announcementshtml'] && $announcementarray['allowhtml'];

			$parser_options['allow_mycode'] = $announcementarray['allowmycode'];
$parser_options['allow_smilies'] = $announcementarray['allowsmilies'];
$parser_options['allow_imgcode'] = 1;

			$parser_options['allow_mycode'] = $announcementarray['allowmycode'];
$parser_options['allow_smilies'] = $announcementarray['allowsmilies'];
$parser_options['allow_imgcode'] = 1;

Zeile 110Zeile 110
			$parser_options['allow_imgcode'] = $forum['allowimgcode'];
$parser_options['allow_videocode'] = $forum['allowvideocode'];
$parser_options['filter_badwords'] = 1;

			$parser_options['allow_imgcode'] = $forum['allowimgcode'];
$parser_options['allow_videocode'] = $forum['allowvideocode'];
$parser_options['filter_badwords'] = 1;


if(!$post['username'])
{
$post['username'] = $lang->guest;
}

if($post['userusername'])
{
$parser_options['me_username'] = $post['userusername'];
}
else
{
$parser_options['me_username'] = $post['username'];
}

 
			break;

			break;

 
	}

if(!$post['username'])
{
$post['username'] = $lang->guest; // htmlspecialchars_uni'd below
}

if($post['userusername'])
{
$parser_options['me_username'] = $post['userusername'];
}
else
{
$parser_options['me_username'] = $post['username'];

	}

$post['username'] = htmlspecialchars_uni($post['username']);

	}

$post['username'] = htmlspecialchars_uni($post['username']);

	$post['userusername'] = htmlspecialchars_uni($post['userusername']);

	$post['userusername'] = htmlspecialchars_uni($post['userusername']);


if(!$postcounter)
{ // Used to show the # of the post


if(!$postcounter)
{ // Used to show the # of the post

Zeile 154Zeile 154
	else
{
$post_extra_style = "margin-top: 5px;";

	else
{
$post_extra_style = "margin-top: 5px;";

	}

	}


if(!$altbg)
{ // Define the alternate background colour if this is the first post
$altbg = "trow1";
}
$postcounter++;


if(!$altbg)
{ // Define the alternate background colour if this is the first post
$altbg = "trow1";
}
$postcounter++;





	// Format the post date and time using my_date
$post['postdate'] = my_date('relative', $post['dateline']);

// Dont want any little 'nasties' in the subject
$post['subject'] = $parser->parse_badwords($post['subject']);

	// Format the post date and time using my_date
$post['postdate'] = my_date('relative', $post['dateline']);

// Dont want any little 'nasties' in the subject
$post['subject'] = $parser->parse_badwords($post['subject']);





	// Pm's have been htmlspecialchars_uni()'ed already.
if($post_type != 2)
{

	// Pm's have been htmlspecialchars_uni()'ed already.
if($post_type != 2)
{

Zeile 183Zeile 183
	$post['subject_title'] = $post['subject'];

// Get the usergroup

	$post['subject_title'] = $post['subject'];

// Get the usergroup

	if($post['userusername'])
{
if(!$post['displaygroup'])
{
$post['displaygroup'] = $post['usergroup'];
}
$usergroup = $groupscache[$post['displaygroup']];
}

	if($post['usergroup'])
{
$usergroup = usergroup_permissions($post['usergroup']);
}





	else
{

	else
{

		$usergroup = $groupscache[1];















		$usergroup = usergroup_permissions(1);
}

// Fetch display group data.
$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

if(!$post['displaygroup'])
{
$post['displaygroup'] = $post['usergroup'];
}

$displaygroup = usergroup_displaygroup($post['displaygroup']);
if(is_array($displaygroup))
{
$usergroup = array_merge($usergroup, $displaygroup);

	}

if(!is_array($titlescache))

	}

if(!is_array($titlescache))

	{

	{

		$cached_titles = $cache->read("usertitles");
if(!empty($cached_titles))
{

		$cached_titles = $cache->read("usertitles");
if(!empty($cached_titles))
{

Zeile 222Zeile 232
		if(!empty($mybb->user['language']))
{
$language = $mybb->user['language'];

		if(!empty($mybb->user['language']))
{
$language = $mybb->user['language'];

		}


		}


		$usergroup['image'] = str_replace("{lang}", $language, $usergroup['image']);
$usergroup['image'] = str_replace("{theme}", $theme['imgdir'], $usergroup['image']);
eval("\$post['groupimage'] = \"".$templates->get("postbit_groupimage")."\";");

		$usergroup['image'] = str_replace("{lang}", $language, $usergroup['image']);
$usergroup['image'] = str_replace("{theme}", $theme['imgdir'], $usergroup['image']);
eval("\$post['groupimage'] = \"".$templates->get("postbit_groupimage")."\";");

Zeile 330Zeile 340
			eval("\$post['button_find'] = \"".$templates->get("postbit_find")."\";");
}


			eval("\$post['button_find'] = \"".$templates->get("postbit_find")."\";");
}


		if($mybb->settings['enablepms'] == 1 && $post['receivepms'] != 0 && $mybb->usergroup['cansendpms'] == 1 && my_strpos(",".$post['ignorelist'].",", ",".$mybb->user['uid'].",") === false)

		if($mybb->settings['enablepms'] == 1 && $post['uid'] != $mybb->user['uid'] && (($post['receivepms'] != 0 && $usergroup['canusepms'] != 0 && $mybb->usergroup['cansendpms'] == 1 && my_strpos(",".$post['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1))

		{
eval("\$post['button_pm'] = \"".$templates->get("postbit_pm")."\";");
}

		{
eval("\$post['button_pm'] = \"".$templates->get("postbit_pm")."\";");
}

Zeile 356Zeile 366
			$post['button_www'] = "";
}


			$post['button_www'] = "";
}


		if($post['hideemail'] != 1 && $mybb->usergroup['cansendemail'] == 1)

		if($post['hideemail'] != 1 && $post['uid'] != $mybb->user['uid'] && $mybb->usergroup['cansendemail'] == 1)

		{
eval("\$post['button_email'] = \"".$templates->get("postbit_email")."\";");
}

		{
eval("\$post['button_email'] = \"".$templates->get("postbit_email")."\";");
}

Zeile 503Zeile 513
		eval("\$post['user_details'] = \"".$templates->get("postbit_author_guest")."\";");
}


		eval("\$post['user_details'] = \"".$templates->get("postbit_author_guest")."\";");
}


 
	$post['input_editreason'] = '';

	$post['button_edit'] = '';
$post['button_quickdelete'] = '';
$post['button_quickrestore'] = '';

	$post['button_edit'] = '';
$post['button_quickdelete'] = '';
$post['button_quickrestore'] = '';

Zeile 536Zeile 547
		{
$forumpermissions = forum_permissions($fid);
}

		{
$forumpermissions = forum_permissions($fid);
}

		



		// Figure out if we need to show an "edited by" message
if($post['edituid'] != 0 && $post['edittime'] != 0 && $post['editusername'] != "" && (($mybb->settings['showeditedby'] != 0 && $usergroup['cancp'] == 0) || ($mybb->settings['showeditedbyadmin'] != 0 && $usergroup['cancp'] == 1)))

		// Figure out if we need to show an "edited by" message
if($post['edituid'] != 0 && $post['edittime'] != 0 && $post['editusername'] != "" && (($mybb->settings['showeditedby'] != 0 && $usergroup['cancp'] == 0) || ($mybb->settings['showeditedbyadmin'] != 0 && $usergroup['cancp'] == 1)))

		{

		{

			$post['editdate'] = my_date('relative', $post['edittime']);
$post['editnote'] = $lang->sprintf($lang->postbit_edited, $post['editdate']);
$post['editusername'] = htmlspecialchars_uni($post['editusername']);

			$post['editdate'] = my_date('relative', $post['edittime']);
$post['editnote'] = $lang->sprintf($lang->postbit_edited, $post['editdate']);
$post['editusername'] = htmlspecialchars_uni($post['editusername']);

Zeile 552Zeile 563
				eval("\$editreason = \"".$templates->get("postbit_editedby_editreason")."\";");
}
eval("\$post['editedmsg'] = \"".$templates->get("postbit_editedby")."\";");

				eval("\$editreason = \"".$templates->get("postbit_editedby_editreason")."\";");
}
eval("\$post['editedmsg'] = \"".$templates->get("postbit_editedby")."\";");

		}

		}


$time = TIME_NOW;
if((is_moderator($fid, "caneditposts") || ($forumpermissions['caneditposts'] == 1 && $mybb->user['uid'] == $post['uid'] && $thread['closed'] != 1 && ($mybb->usergroup['edittimelimit'] == 0 || $mybb->usergroup['edittimelimit'] != 0 && $post['dateline'] > ($time-($mybb->usergroup['edittimelimit']*60))))) && $mybb->user['uid'] != 0)


$time = TIME_NOW;
if((is_moderator($fid, "caneditposts") || ($forumpermissions['caneditposts'] == 1 && $mybb->user['uid'] == $post['uid'] && $thread['closed'] != 1 && ($mybb->usergroup['edittimelimit'] == 0 || $mybb->usergroup['edittimelimit'] != 0 && $post['dateline'] > ($time-($mybb->usergroup['edittimelimit']*60))))) && $mybb->user['uid'] != 0)

		{


		{
eval("\$post['input_editreason'] = \"".$templates->get("postbit_editreason")."\";");

			eval("\$post['button_edit'] = \"".$templates->get("postbit_edit")."\";");
}


			eval("\$post['button_edit'] = \"".$templates->get("postbit_edit")."\";");
}


Zeile 565Zeile 577
		if($mybb->user['uid'] == $post['uid'] && $thread['closed'] == 0)
{
if($forumpermissions['candeletethreads'] == 1 && $postcounter == 1)

		if($mybb->user['uid'] == $post['uid'] && $thread['closed'] == 0)
{
if($forumpermissions['candeletethreads'] == 1 && $postcounter == 1)

			{

			{

				$can_delete_thread = 1;

				$can_delete_thread = 1;

			}

			}

			else if($forumpermissions['candeleteposts'] == 1 && $postcounter != 1)
{
$can_delete_post = 1;

			else if($forumpermissions['candeleteposts'] == 1 && $postcounter != 1)
{
$can_delete_post = 1;

Zeile 578Zeile 590
		if($mybb->user['uid'] != 0)
{
if((is_moderator($fid, "candeleteposts") || is_moderator($fid, "cansoftdeleteposts") || $can_delete_post == 1) && $postcounter != 1)

		if($mybb->user['uid'] != 0)
{
if((is_moderator($fid, "candeleteposts") || is_moderator($fid, "cansoftdeleteposts") || $can_delete_post == 1) && $postcounter != 1)

			{

			{

				$postbit_qdelete = $lang->postbit_qdelete_post;

				$postbit_qdelete = $lang->postbit_qdelete_post;

				$display = '';

				$display = '';

				if($post['visible'] == -1)
{
$display = "none";

				if($post['visible'] == -1)
{
$display = "none";

Zeile 591Zeile 603
			{
$postbit_qdelete = $lang->postbit_qdelete_thread;
$display = '';

			{
$postbit_qdelete = $lang->postbit_qdelete_thread;
$display = '';

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

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

				{
$display = "none";
}

				{
$display = "none";
}

Zeile 631Zeile 643
		// Inline moderation stuff
if($ismod)
{

		// Inline moderation stuff
if($ismod)
{

			if(isset($mybb->cookies[$inlinecookie]) && my_strpos($mybb->cookies[$inlinecookie], "|".$post['pid']."|"))

			if(isset($mybb->cookies[$inlinecookie]) && my_strpos($mybb->cookies[$inlinecookie], "|".$post['pid']."|") !== false)

			{
$inlinecheck = "checked=\"checked\"";
$inlinecount++;

			{
$inlinecheck = "checked=\"checked\"";
$inlinecount++;

Zeile 644Zeile 656
			eval("\$post['inlinecheck'] = \"".$templates->get("postbit_inlinecheck")."\";");

if($post['visible'] == 0)

			eval("\$post['inlinecheck'] = \"".$templates->get("postbit_inlinecheck")."\";");

if($post['visible'] == 0)

			{

			{

				$invisiblepost = 1;
}
}

				$invisiblepost = 1;
}
}

Zeile 660Zeile 672
		if($forum['open'] != 0 && ($thread['closed'] != 1 || is_moderator($forum['fid'], "canpostclosedthreads")) && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1))
{
eval("\$post['button_quote'] = \"".$templates->get("postbit_quote")."\";");

		if($forum['open'] != 0 && ($thread['closed'] != 1 || is_moderator($forum['fid'], "canpostclosedthreads")) && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1))
{
eval("\$post['button_quote'] = \"".$templates->get("postbit_quote")."\";");

		}


		}


		if($forumpermissions['canpostreplys'] != 0 && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1) && ($thread['closed'] != 1 || is_moderator($fid, "canpostclosedthreads")) && $mybb->settings['multiquote'] != 0 && $forum['open'] != 0 && !$post_type)
{
eval("\$post['button_multiquote'] = \"".$templates->get("postbit_multiquote")."\";");
}

if($mybb->user['uid'] != "0")

		if($forumpermissions['canpostreplys'] != 0 && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1) && ($thread['closed'] != 1 || is_moderator($fid, "canpostclosedthreads")) && $mybb->settings['multiquote'] != 0 && $forum['open'] != 0 && !$post_type)
{
eval("\$post['button_multiquote'] = \"".$templates->get("postbit_multiquote")."\";");
}

if($mybb->user['uid'] != "0")

		{

		{

			eval("\$post['button_report'] = \"".$templates->get("postbit_report")."\";");
}
}

			eval("\$post['button_report'] = \"".$templates->get("postbit_report")."\";");
}
}

Zeile 684Zeile 696
	$post['iplogged'] = '';
$show_ips = $mybb->settings['logip'];
$ipaddress = my_inet_ntop($db->unescape_binary($post['ipaddress']));

	$post['iplogged'] = '';
$show_ips = $mybb->settings['logip'];
$ipaddress = my_inet_ntop($db->unescape_binary($post['ipaddress']));





	// Show post IP addresses... PMs now can have IP addresses too as of 1.8!
if($post_type == 2)
{

	// Show post IP addresses... PMs now can have IP addresses too as of 1.8!
if($post_type == 2)
{

Zeile 701Zeile 713
			else if($show_ips == "hide" && (is_moderator($fid, "canviewips") || $mybb->usergroup['issupermod']))
{
$action = 'getip';

			else if($show_ips == "hide" && (is_moderator($fid, "canviewips") || $mybb->usergroup['issupermod']))
{
$action = 'getip';

 
				$javascript = 'getIP';


				if($post_type == 2)
{
$action = 'getpmip';

				if($post_type == 2)
{
$action = 'getpmip';

 
					$javascript = 'getPMIP';

				}

				}

 


				eval("\$post['iplogged'] = \"".$templates->get("postbit_iplogged_hiden")."\";");
}
}

				eval("\$post['iplogged'] = \"".$templates->get("postbit_iplogged_hiden")."\";");
}
}

 
	}

$post['poststatus'] = '';
if(!$post_type && $post['visible'] != 1)
{
if(is_moderator($fid, "canviewdeleted") && $postcounter != 1 && $post['visible'] == -1)
{
$status_type = $lang->postbit_post_deleted;
}
else if(is_moderator($fid, "canviewunapprove") && $postcounter != 1 && $post['visible'] == 0)
{
$status_type = $lang->postbit_post_unapproved;
}
else if(is_moderator($fid, "canviewdeleted") && $postcounter == 1 && $post['visible'] == -1)
{
$status_type = $lang->postbit_thread_deleted;
}
else if(is_moderator($fid, "canviewunapprove") && $postcounter == 1 && $post['visible'] == 0)
{
$status_type = $lang->postbit_thread_unapproved;
}

eval("\$post['poststatus'] = \"".$templates->get("postbit_status")."\";");

	}

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

	}

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

Zeile 787Zeile 826
		$post['icon'] = "";
}


		$post['icon'] = "";
}


	$post_visibility = $ignore_bit = '';

	$post_visibility = $ignore_bit = $deleted_bit = '';

	switch($post_type)
{
case 1: // Message preview

	switch($post_type)
{
case 1: // Message preview

Zeile 813Zeile 852
						$ignored_users[$uid] = 1;
}
}

						$ignored_users[$uid] = 1;
}
}

 
			}

// Has this post been deleted but can be viewed? Hide this post
if($post['visible'] == -1 && is_moderator($fid, "canviewdeleted"))
{
$deleted_message = $lang->sprintf($lang->postbit_deleted_post_user, $post['username']);
eval("\$deleted_bit = \"".$templates->get("postbit_deleted")."\";");
$post_visibility = "display: none;";
}

// Is the user (not moderator) logged in and have unapproved posts?
if($mybb->user['uid'] && $post['visible'] == 0 && $post['uid'] == $mybb->user['uid'] && !is_moderator($fid, "canviewunapprove"))
{
$ignored_message = $lang->sprintf($lang->postbit_post_under_moderation, $post['username']);
eval("\$ignore_bit = \"".$templates->get("postbit_ignored")."\";");
$post_visibility = "display: none;";

			}

// Is this author on the ignore list of the current user? Hide this post

			}

// Is this author on the ignore list of the current user? Hide this post

			if(is_array($ignored_users) && $post['uid'] != 0 && isset($ignored_users[$post['uid']]) && $ignored_users[$post['uid']] == 1)

			if(is_array($ignored_users) && $post['uid'] != 0 && isset($ignored_users[$post['uid']]) && $ignored_users[$post['uid']] == 1 && empty($deleted_bit))

			{
$ignored_message = $lang->sprintf($lang->postbit_currently_ignoring_user, $post['username']);
eval("\$ignore_bit = \"".$templates->get("postbit_ignored")."\";");

			{
$ignored_message = $lang->sprintf($lang->postbit_currently_ignoring_user, $post['username']);
eval("\$ignore_bit = \"".$templates->get("postbit_ignored")."\";");

Zeile 824Zeile 879
			}
break;
}

			}
break;
}


if($mybb->settings['postlayout'] == "classic")
{
eval("\$postbit = \"".$templates->get("postbit_classic")."\";");
}
else


if($forumpermissions['canviewdeletionnotice'] == 1 && $post['visible'] == -1 && $post_type == 0 && !is_moderator($fid, "canviewdeleted"))





	{

	{

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

		eval("\$postbit = \"".$templates->get("postbit_deleted_member")."\";");

	}

	}

 
	else
{
if($mybb->settings['postlayout'] == "classic")
{
eval("\$postbit = \"".$templates->get("postbit_classic")."\";");
}
else
{
eval("\$postbit = \"".$templates->get("postbit")."\";");
}
}


	$GLOBALS['post'] = "";

return $postbit;
}

	$GLOBALS['post'] = "";

return $postbit;
}





/**
* Fetch the attachments for a specific post and parse inline [attachment=id] code.
* Note: assumes you have $attachcache, an array of attachments set up.

/**
* Fetch the attachments for a specific post and parse inline [attachment=id] code.
* Note: assumes you have $attachcache, an array of attachments set up.

Zeile 856Zeile 919
	{
$forumpermissions = forum_permissions($post['fid']);
}

	{
$forumpermissions = forum_permissions($post['fid']);
}

	



	if(isset($attachcache[$id]) && is_array($attachcache[$id]))
{ // This post has 1 or more attachments
foreach($attachcache[$id] as $aid => $attachment)

	if(isset($attachcache[$id]) && is_array($attachcache[$id]))
{ // This post has 1 or more attachments
foreach($attachcache[$id] as $aid => $attachment)

Zeile 881Zeile 944
				{
$attachment['dateuploaded'] = $attachment['dateline'];
}

				{
$attachment['dateuploaded'] = $attachment['dateline'];
}

				$attachdate = my_date('relative', $attachment['dateuploaded']);

				$attachdate = my_date('normal', $attachment['dateuploaded']);

				// Support for [attachment=id] code
if(stripos($post['message'], "[attachment=".$attachment['aid']."]") !== false)
{

				// Support for [attachment=id] code
if(stripos($post['message'], "[attachment=".$attachment['aid']."]") !== false)
{

Zeile 965Zeile 1028
			eval("\$post['attachments'] = \"".$templates->get("postbit_attachments")."\";");
}
}

			eval("\$post['attachments'] = \"".$templates->get("postbit_attachments")."\";");
}
}

 
}

/**
* Returns bytes count from human readable string
* Used to parse ini_get human-readable values to int
*
* @param string $val Human-readable value
*/
function return_bytes($val) {
$val = trim($val);
if ($val == "")
{
return 0;
}

$last = strtolower($val[strlen($val)-1]);
switch($last)
{
case 'g':
$val *= 1024;
case 'm':
$val *= 1024;
case 'k':
$val *= 1024;
}

return intval($val);

}

}