Vergleich portal.php - 1.2.0 - 1.2.13

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 3Zeile 3
 * MyBB 1.2
* Copyright � 2006 MyBB Group, All Rights Reserved
*

 * MyBB 1.2
* Copyright � 2006 MyBB Group, All Rights Reserved
*

 * Website: http://www.mybboard.com
* License: http://www.mybboard.com/eula.html

 * Website: http://www.mybboard.net
* License: http://www.mybboard.net/eula.html

 *

 *

 * $Id: portal.php 2164 2006-08-30 06:17:49Z chris $

 * $Id: portal.php 3595 2008-01-09 00:10:57Z Tikitiki $

 */

define("IN_MYBB", 1);

 */

define("IN_MYBB", 1);



define("IN_PORTAL", 1);


// set the path to your forums directory here (without trailing slash)
$forumdir = "./";

// end editing



// set the path to your forums directory here (without trailing slash)
$forumdir = "./";

// end editing


if(!chdir($forumdir) && $forumdir)



$change_dir = "./";

if(!@chdir($forumdir) && !empty($forumdir))

{

{

	die("\$forumdir is invalid!");








	if(@is_dir($forumdir))
{
$change_dir = $forumdir;
}
else
{
die("\$forumdir is invalid!");
}

}


}


$templatelist = "portal_welcome,portal_welcome_membertext,portal_stats,portal_search,portal_whosonline_memberbit,portal_whosonline,portal_latestthreads_thread_lastpost,portal_latestthreads_thread,portal_latestthreads,portal_announcement_numcomments_no,portal_announcement,portal_announcement_numcomments,portal";

require_once "./global.php";

$templatelist = "portal_welcome,portal_welcome_membertext,portal_stats,portal_search,portal_whosonline_memberbit,portal_whosonline,portal_latestthreads_thread_lastpost,portal_latestthreads_thread,portal_latestthreads,portal_announcement_numcomments_no,portal_announcement,portal_announcement_numcomments,portal";

require_once $change_dir."/global.php";

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

global $theme, $templates;

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

global $theme, $templates;

 

// Fetch the current URL
$portal_url = get_current_location();


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


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

Zeile 70Zeile 82
	}

my_setcookie('loginattempts', 1);

	}

my_setcookie('loginattempts', 1);

	$db->delete_query(TABLE_PREFIX."sessions", "ip='".$session->ipaddress."' AND sid != '".$session->sid."'");

	$db->delete_query(TABLE_PREFIX."sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'");

	$newsession = array(
"uid" => $user['uid'],
"loginattempts" => 1,

	$newsession = array(
"uid" => $user['uid'],
"loginattempts" => 1,

Zeile 80Zeile 92
	// Temporarily set the cookie remember option for the login cookies
$mybb->user['remember'] = $user['remember'];


	// Temporarily set the cookie remember option for the login cookies
$mybb->user['remember'] = $user['remember'];


	my_setcookie("mybbuser", $user['uid']."_".$user['loginkey']);
my_setcookie("sid", $session->sid, -1);

	my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true);
my_setcookie("sid", $session->sid, -1, true);


if(function_exists("loggedIn"))
{


if(function_exists("loggedIn"))
{

Zeile 95Zeile 107

$plugins->run_hooks("portal_start");



$plugins->run_hooks("portal_start");


 
// First validate announcement fids:
$mybb->settings['portal_announcementsfid'] = explode(',', $mybb->settings['portal_announcementsfid']);
if(is_array($mybb->settings['portal_announcementsfid']))
{
foreach($mybb->settings['portal_announcementsfid'] as $fid)
{
$fid_array[] = intval($fid);
}
$mybb->settings['portal_announcementsfid'] = implode(',', $fid_array);
}


// get forums user cannot view
$unviewable = get_unviewable_forums();
if($unviewable)


// get forums user cannot view
$unviewable = get_unviewable_forums();
if($unviewable)

{

{

	$unviewwhere = " AND fid NOT IN ($unviewable)";
}
// If user is known, welcome them

	$unviewwhere = " AND fid NOT IN ($unviewable)";
}
// If user is known, welcome them

Zeile 114Zeile 136
			if(!$messages['pms_new'])
{
$messages['pms_new'] = 0;

			if(!$messages['pms_new'])
{
$messages['pms_new'] = 0;

			}

			}

			// the SUM() thing returns "" instead of 0
if($messages['pms_unread'] == "")
{

			// the SUM() thing returns "" instead of 0
if($messages['pms_unread'] == "")
{

Zeile 133Zeile 155
			$query = $db->simple_select(TABLE_PREFIX."threads", "COUNT(tid) AS newann", "dateline>'".$mybb->user['lastvisit']."' AND fid IN (".$mybb->settings['portal_announcementsfid'].") $unviewwhere");
$newann = $db->fetch_field($query, "newann");
if(!$newthreads)

			$query = $db->simple_select(TABLE_PREFIX."threads", "COUNT(tid) AS newann", "dateline>'".$mybb->user['lastvisit']."' AND fid IN (".$mybb->settings['portal_announcementsfid'].") $unviewwhere");
$newann = $db->fetch_field($query, "newann");
if(!$newthreads)

			{

			{

				$newthreads = 0;

				$newthreads = 0;

			}

			}

			if(!$newann)
{
$newann = 0;
}

			if(!$newann)
{
$newann = 0;
}

		}
else

		}
else

		{
$newposts = 0;
$newthreads = 0;

		{
$newposts = 0;
$newthreads = 0;

Zeile 160Zeile 182
		if($newthreads == 1)
{
$lang->new_threads = $lang->new_thread;

		if($newthreads == 1)
{
$lang->new_threads = $lang->new_thread;

		}
else
{

		}
else
{

			$lang->new_threads = sprintf($lang->new_threads, $newthreads);
}
if($newposts == 1)

			$lang->new_threads = sprintf($lang->new_threads, $newthreads);
}
if($newposts == 1)

Zeile 177Zeile 199

}
else


}
else

	{

	{

		$lang->guest_welcome_registration = sprintf($lang->guest_welcome_registration, $mybb->settings['bburl'] . '/member.php?action=register');
$mybb->user['username'] = $lang->guest;
eval("\$welcometext = \"".$templates->get("portal_welcome_guesttext")."\";");

		$lang->guest_welcome_registration = sprintf($lang->guest_welcome_registration, $mybb->settings['bburl'] . '/member.php?action=register');
$mybb->user['username'] = $lang->guest;
eval("\$welcometext = \"".$templates->get("portal_welcome_guesttext")."\";");

Zeile 191Zeile 213
}
// Get Forum Statistics
if($mybb->settings['portal_showstats'] != "no")

}
// Get Forum Statistics
if($mybb->settings['portal_showstats'] != "no")

{

{

	$stats = $cache->read("stats");

	$stats = $cache->read("stats");

	$threadsnum = $stats['numthreads'];
$postsnum = $stats['numposts'];
$membersnum = $stats['numusers'];

	$stats['numthreads'] = my_number_format($stats['numthreads']);
$stats['numposts'] = my_number_format($stats['numposts']);
$stats['numusers'] = my_number_format($stats['numusers']);

	if(!$stats['lastusername'])
{
$newestmember = "<b>" . $lang->no_one . "</b>";
}
else

	if(!$stats['lastusername'])
{
$newestmember = "<b>" . $lang->no_one . "</b>";
}
else

	{

	{

		$newestmember = build_profile_link($stats['lastusername'], $stats['lastuid']);
}
eval("\$stats = \"".$templates->get("portal_stats")."\";");
}
// Search box
if($mybb->settings['portal_showsearch'] != "no")

		$newestmember = build_profile_link($stats['lastusername'], $stats['lastuid']);
}
eval("\$stats = \"".$templates->get("portal_stats")."\";");
}
// Search box
if($mybb->settings['portal_showsearch'] != "no")

{

{

	eval("\$search = \"".$templates->get("portal_search")."\";");
}
// Get the online users

	eval("\$search = \"".$templates->get("portal_search")."\";");
}
// Get the online users

Zeile 228Zeile 250
	");
while($user = $db->fetch_array($query))
{

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

 
		// Create a key to test if this user is a search bot.
$botkey = strtolower(str_replace("bot=", '', $user['sid']));


		if($user['uid'] == "0")
{

		if($user['uid'] == "0")
{

			$guestcount++;








			++$guestcount;
}
elseif(strpos($user['sid'], "bot=") !== false && $session->bots[$botkey])
{
// The user is a search bot.
$onlinemembers .= $comma.format_name($session->bots[$botkey], $session->botgroup);
$comma = ", ";
++$botcount;

		}
else
{
if($doneusers[$user['uid']] < $user['time'] || !$doneusers[$user['uid']])

		}
else
{
if($doneusers[$user['uid']] < $user['time'] || !$doneusers[$user['uid']])

			{

			{				

				$doneusers[$user['uid']] = $user['time'];

				$doneusers[$user['uid']] = $user['time'];

				$membercount++;
if($user['invisible'] != "yes" || $mybb->usergroup['canviewwolinvis'] == "yes")




















				
// If the user is logged in anonymously, update the count for that.
if($user['invisible'] == "yes")
{
++$anoncount;
}
else
{
++$membercount;
}

if($user['invisible'] == "yes")
{
$invisiblemark = "*";
}
else
{
$invisiblemark = '';
}

if(($user['invisible'] == "yes" && ($mybb->usergroup['canviewwolinvis'] == "yes" || $user['uid'] == $mybb->user['uid'])) || $user['invisible'] != "yes")

				{

				{

					if($user['invisible'] == "yes")
{
$invisiblemark = "*";
}
else
{
$invisiblemark = '';
}

 
					$user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);

					$user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);

 
					$user['profilelink'] = get_profile_link($user['uid']);

					eval("\$onlinemembers .= \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";");
$comma = ", ";
}
}
}
}

					eval("\$onlinemembers .= \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";");
$comma = ", ";
}
}
}
}

	$onlinecount = $membercount + $guestcount + $anoncount;














	
$onlinecount = $membercount + $guestcount + $botcount;

// If we can see invisible users add them to the count
if($mybb->usergroup['canviewwolinvis'] == "yes")
{
$onlinecount += $anoncount;
}

// If we can't see invisible users but the user is an invisible user incriment the count by one
if($mybb->usergroup['canviewwolinvis'] != "yes" && $mybb->user['invisible'] == "yes")
{
++$onlinecount;
}


// Most users online
$mostonline = $cache->read("mostonline");


// Most users online
$mostonline = $cache->read("mostonline");

Zeile 270Zeile 327
	$recorddate = my_date($mybb->settings['dateformat'], $mostonline['time']);
$recordtime = my_date($mybb->settings['timeformat'], $mostonline['time']);


	$recorddate = my_date($mybb->settings['dateformat'], $mostonline['time']);
$recordtime = my_date($mybb->settings['timeformat'], $mostonline['time']);


	$lang->online_users = sprintf($lang->online_users, $onlinecount);








	if($onlinecount == 1)
{
$lang->online_users = $lang->online_user;
}
else
{
$lang->online_users = sprintf($lang->online_users, $onlinecount);
}

	$lang->online_counts = sprintf($lang->online_counts, $membercount, $guestcount);
eval("\$whosonline = \"".$templates->get("portal_whosonline")."\";");
}

	$lang->online_counts = sprintf($lang->online_counts, $membercount, $guestcount);
eval("\$whosonline = \"".$templates->get("portal_whosonline")."\";");
}

Zeile 278Zeile 342
// Latest forum discussions
if($mybb->settings['portal_showdiscussions'] != "no" && $mybb->settings['portal_showdiscussionsnum'])
{

// Latest forum discussions
if($mybb->settings['portal_showdiscussions'] != "no" && $mybb->settings['portal_showdiscussionsnum'])
{

	$altbg = "trow1";

	$altbg = alt_trow();

	$threadlist = '';
$query = $db->query("
SELECT t.*, u.username

	$threadlist = '';
$query = $db->query("
SELECT t.*, u.username

Zeile 316Zeile 380
}

// Get latest news announcements

}

// Get latest news announcements

// First validate announcement fids:
$mybb->settings['portal_announcementsfid'] = explode(',', $mybb->settings['portal_announcementsfid']);
foreach($mybb->settings['portal_announcementsfid'] as $fid)
{
$fid_array[] = intval($fid);
}
$mybb->settings['portal_announcementsfid'] = implode(',', $fid_array);
// And get them!

 
$query = $db->simple_select(TABLE_PREFIX."forums", "*", "fid IN (".$mybb->settings['portal_announcementsfid'].")");
while($forumrow = $db->fetch_array($query))
{

$query = $db->simple_select(TABLE_PREFIX."forums", "*", "fid IN (".$mybb->settings['portal_announcementsfid'].")");
while($forumrow = $db->fetch_array($query))
{

Zeile 353Zeile 409
	$attachcache[$attachment['pid']][$attachment['aid']] = $attachment;
}


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


foreach($forum as $fid => $forumrow)

if(is_array($forum))

{

{

    $forumpermissions[$fid] = forum_permissions($fid);




	foreach($forum as $fid => $forumrow)
{
$forumpermissions[$fid] = forum_permissions($fid);
}

}

}





$icon_cache = $cache->read("posticons");

$announcements = '';

$icon_cache = $cache->read("posticons");

$announcements = '';

Zeile 382Zeile 441
	if($announcement['icon'] > 0 && $icon_cache[$announcement['icon']])
{
$icon = $icon_cache[$announcement['icon']];

	if($announcement['icon'] > 0 && $icon_cache[$announcement['icon']])
{
$icon = $icon_cache[$announcement['icon']];

		$icon = "<img src=\"{$icon[path]}\" alt=\"{$icon[name]}\" />";
}
else
{

		$icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";
}
else
{

		$icon = "&nbsp;";
}
if($announcement['avatar'] != '')

		$icon = "&nbsp;";
}
if($announcement['avatar'] != '')

Zeile 394Zeile 453
		if($avatar_dimensions[0] && $avatar_dimensions[1])
{
$avatar_width_height = "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";

		if($avatar_dimensions[0] && $avatar_dimensions[1])
{
$avatar_width_height = "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";

		}		





		}
if (!stristr($announcement['avatar'], 'http://'))
{
$announcement['avatar'] = $mybb->settings['bburl'] . '/' . $announcement['avatar'];
}

		$avatar = "<td class=\"trow1\" width=\"1\" align=\"center\" valign=\"top\"><img src=\"$announcement[avatar]\" alt=\"0\" {$avatar_width_height} /></td>";
}
else

		$avatar = "<td class=\"trow1\" width=\"1\" align=\"center\" valign=\"top\"><img src=\"$announcement[avatar]\" alt=\"0\" {$avatar_width_height} /></td>";
}
else

Zeile 413Zeile 476
		eval("\$numcomments = \"".$templates->get("portal_announcement_numcomments_no")."\";");
$lastcomment = '';
}

		eval("\$numcomments = \"".$templates->get("portal_announcement_numcomments_no")."\";");
$lastcomment = '';
}

 
	
$plugins->run_hooks("portal_announcement");

$parser_options = array(
"allow_html" => $forum[$announcement['fid']]['allowhtml'],
"allow_mycode" => $forum[$announcement['fid']]['allowmycode'],
"allow_smilies" => $forum[$announcement['fid']]['allowsmilies'],
"allow_imgcode" => $forum[$announcement['fid']]['allowimgcode']
);
if($announcement['smilieoff'] == "yes")
{
$parser_options['allow_smilies'] = "no";
}

$message = $parser->parse_message($announcement['message'], $parser_options);


	if(is_array($attachcache[$announcement['pid']]))
{ // This post has 1 or more attachments
$validationcount = 0;

	if(is_array($attachcache[$announcement['pid']]))
{ // This post has 1 or more attachments
$validationcount = 0;

Zeile 421Zeile 500
		{
if($attachment['visible'])
{ // There is an attachment thats visible!

		{
if($attachment['visible'])
{ // There is an attachment thats visible!

				$attachment['name'] = htmlspecialchars_uni($attachment['name']);

				$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

				$attachment['filesize'] = get_friendly_size($attachment['filesize']);
$ext = get_extension($attachment['filename']);
if($ext == "jpeg" || $ext == "gif" || $ext == "bmp" || $ext == "png" || $ext == "jpg")

				$attachment['filesize'] = get_friendly_size($attachment['filesize']);
$ext = get_extension($attachment['filename']);
if($ext == "jpeg" || $ext == "gif" || $ext == "bmp" || $ext == "png" || $ext == "jpg")

Zeile 434Zeile 513
				}
$attachment['icon'] = get_attachment_icon($ext);
// Support for [attachment=id] code

				}
$attachment['icon'] = get_attachment_icon($ext);
// Support for [attachment=id] code

				if(stripos($announcement['message'], "[attachment=".$attachment['aid']."]") !== false)

				if(stripos($message, "[attachment=".$attachment['aid']."]") !== false)

				{
if($attachment['thumbnail'] != "SMALL" && $attachment['thumbnail'] != '')
{ // We have a thumbnail to show (and its not the "SMALL" enough image

				{
if($attachment['thumbnail'] != "SMALL" && $attachment['thumbnail'] != '')
{ // We have a thumbnail to show (and its not the "SMALL" enough image

Zeile 444Zeile 523
					{
// Image is small enough to show - no thumbnail
eval("\$attbit = \"".$templates->get("postbit_attachments_images_image")."\";");

					{
// Image is small enough to show - no thumbnail
eval("\$attbit = \"".$templates->get("postbit_attachments_images_image")."\";");

					}
else
{

					}
else
{

						// Show standard link to attachment
eval("\$attbit = \"".$templates->get("postbit_attachments_attachment")."\";");

						// Show standard link to attachment
eval("\$attbit = \"".$templates->get("postbit_attachments_attachment")."\";");

					}
$announcement['message'] = preg_replace("#\[attachment=".$attachment['aid']."]#si", $attbit, $announcement['message']);

					}
$message = preg_replace("#\[attachment=".$attachment['aid']."]#si", $attbit, $message);

				}
else
{

				}
else
{

Zeile 468Zeile 547
					{
// Image is small enough to show - no thumbnail
eval("\$post['imagelist'] .= \"".$templates->get("postbit_attachments_images_image")."\";");

					{
// Image is small enough to show - no thumbnail
eval("\$post['imagelist'] .= \"".$templates->get("postbit_attachments_images_image")."\";");

					}

					}

					else
{
eval("\$post['attachmentlist'] .= \"".$templates->get("postbit_attachments_attachment")."\";");
}
}

					else
{
eval("\$post['attachmentlist'] .= \"".$templates->get("postbit_attachments_attachment")."\";");
}
}

			}

			}

			else
{
$validationcount++;

			else
{
$validationcount++;

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

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


$plugins->run_hooks("portal_announcement");

$parser_options = array(
"allow_html" => $forum[$announcement['fid']]['allow_html'],
"allow_mycode" => $forum[$announcement['fid']]['allow_mycode'],
"allow_smilies" => $forum[$announcement['fid']]['allowsmilies'],
"allow_imgcode" => $forum[$announcement['fid']]['allowimgcode']
);
if($announcement['smilieoff'] == "yes")
{
$parser_options['allow_smilies'] = "no";
}

$message = $parser->parse_message($announcement['message'], $parser_options);

 

eval("\$announcements .= \"".$templates->get("portal_announcement")."\";");
unset($post);


eval("\$announcements .= \"".$templates->get("portal_announcement")."\";");
unset($post);