Vergleich portal.php - 1.8.1 - 1.8.10

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 31Zeile 31
	}
}


	}
}


$templatelist = "portal,portal_welcome_membertext,portal_stats,portal_search,portal_whosonline_memberbit,portal_whosonline,portal_latestthreads_thread,portal_latestthreads,portal_announcement_numcomments_no,portal_announcement,portal_welcome";
$templatelist .= ",portal_welcome_guesttext,postbit_attachments_thumbnails_thumbnail,postbit_attachments_images_image,postbit_attachments_attachment,postbit_attachments_thumbnails,postbit_attachments_images,postbit_attachments,portal_pms";
$templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,portal_announcement_send_item,portal_announcement_icon,portal_announcement_avatar,portal_announcement_numcomments";


$templatelist = "portal,portal_welcome_membertext,portal_stats,portal_search,portal_whosonline_memberbit,portal_whosonline,portal_latestthreads_thread,portal_latestthreads,portal_announcement_numcomments_no";
$templatelist .= ",postbit_attachments_thumbnails_thumbnail,postbit_attachments_images_image,postbit_attachments_attachment,postbit_attachments_thumbnails,postbit_attachments_images,postbit_attachments";
$templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,portal_announcement_send_item";
$templatelist .= ",portal_stats_nobody,portal_announcement_avatar,portal_announcement_numcomments,portal_announcement_icon,portal_pms,portal_welcome,portal_announcement,portal_welcome_guesttext";


require_once $change_dir."/global.php";
require_once MYBB_ROOT."inc/functions_post.php";


require_once $change_dir."/global.php";
require_once MYBB_ROOT."inc/functions_post.php";

Zeile 51Zeile 52

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


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

 
$file_name = strtok(my_strtolower(basename($portal_url)), '?');





add_breadcrumb($lang->nav_portal, "portal.php");

add_breadcrumb($lang->nav_portal, $file_name);


$plugins->run_hooks("portal_start");



$plugins->run_hooks("portal_start");




$tunviewwhere = $unviewwhere = '';

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

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

{

{

	$unviewwhere = " AND fid NOT IN ($unviewable)";
$tunviewwhere = " AND t.fid NOT IN ($unviewable)";

	$unviewwhere = " AND fid NOT IN ($unviewable)";
$tunviewwhere = " AND t.fid NOT IN ($unviewable)";

}
else
{
$unviewwhere = '';
}

}






// get inactive forums
$inactive = get_inactive_forums();
if($inactive)
{


// get inactive forums
$inactive = get_inactive_forums();
if($inactive)
{

	$inactivewhere = " AND fid NOT IN ($inactive)";
$tinactivewhere = " AND t.fid NOT IN ($inactive)";
}
else
{
$inactivewhere = '';

	$unviewwhere .= " AND fid NOT IN ($inactive)";
$tunviewwhere .= " AND t.fid NOT IN ($inactive)";





}

}

 

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


$welcome = '';
// If user is known, welcome them


$welcome = '';
// If user is known, welcome them

Zeile 88Zeile 84
	if($mybb->user['uid'] != 0)
{
// Get number of new posts, threads, announcements

	if($mybb->user['uid'] != 0)
{
// Get number of new posts, threads, announcements

		$query = $db->simple_select("posts", "COUNT(pid) AS newposts", "visible=1 AND dateline>'".$mybb->user['lastvisit']."'{$unviewwhere}{$inactivewhere}");

		$query = $db->simple_select("posts", "COUNT(pid) AS newposts", "visible=1 AND dateline>'".$mybb->user['lastvisit']."'{$unviewwhere}");

		$newposts = $db->fetch_field($query, "newposts");
if($newposts)
{
// If there aren't any new posts, there is no point in wasting two more queries

		$newposts = $db->fetch_field($query, "newposts");
if($newposts)
{
// If there aren't any new posts, there is no point in wasting two more queries

			$query = $db->simple_select("threads", "COUNT(tid) AS newthreads", "visible=1 AND dateline>'".$mybb->user['lastvisit']."'{$unviewwhere}{$inactivewhere}");

			$query = $db->simple_select("threads", "COUNT(tid) AS newthreads", "visible=1 AND dateline>'".$mybb->user['lastvisit']."'{$unviewwhere}");

			$newthreads = $db->fetch_field($query, "newthreads");

$newann = 0;

			$newthreads = $db->fetch_field($query, "newthreads");

$newann = 0;

Zeile 205Zeile 201
	$stats['numusers'] = my_number_format($stats['numusers']);
if(!$stats['lastusername'])
{

	$stats['numusers'] = my_number_format($stats['numusers']);
if(!$stats['lastusername'])
{

		$newestmember = "<strong>" . $lang->nobody . "</strong>";

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

	}
else
{

	}
else
{

Zeile 241Zeile 237
	$guestcount = $membercount = $botcount = $anoncount = 0;
$onlinemembers = '';
$doneusers = array();

	$guestcount = $membercount = $botcount = $anoncount = 0;
$onlinemembers = '';
$doneusers = array();

	$query = $db->query("

	$query = $db->query("

		SELECT s.sid, s.ip, s.uid, s.time, s.location, u.username, u.invisible, u.usergroup, u.displaygroup
FROM ".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)

		SELECT s.sid, s.ip, s.uid, s.time, s.location, u.username, u.invisible, u.usergroup, u.displaygroup
FROM ".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)

Zeile 274Zeile 270
				$doneusers[$user['uid']] = $user['time'];

// If the user is logged in anonymously, update the count for that.

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

// If the user is logged in anonymously, update the count for that.

				if($user['invisible'] == 1)

				if($user['invisible'] == 1)

				{
++$anoncount;
}

if($user['invisible'] == 1)

				{
++$anoncount;
}

if($user['invisible'] == 1)

				{

				{

					$invisiblemark = "*";

					$invisiblemark = "*";

				}

				}

				else
{
$invisiblemark = '';

				else
{
$invisiblemark = '';

				}


				}


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

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

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

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

					$user['profilelink'] = get_profile_link($user['uid']);
eval("\$onlinemembers .= \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";");
$comma = $lang->comma;
}

					$user['profilelink'] = get_profile_link($user['uid']);
eval("\$onlinemembers .= \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";");
$comma = $lang->comma;
}

			}
}
}

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

			}
}
}

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


// If we can see invisible users add them to the count
if($mybb->usergroup['canviewwolinvis'] == 1)


// If we can see invisible users add them to the count
if($mybb->usergroup['canviewwolinvis'] == 1)

Zeile 321Zeile 317
		$mostonline['numusers'] = $onlinecount;
$mostonline['time'] = $time;
$cache->update("mostonline", $mostonline);

		$mostonline['numusers'] = $onlinecount;
$mostonline['time'] = $time;
$cache->update("mostonline", $mostonline);

	}

	}

	$recordcount = $mostonline['numusers'];
$recorddate = my_date('relative', $mostonline['time']);

if($onlinecount == 1)
{
$lang->online_users = $lang->online_user;

	$recordcount = $mostonline['numusers'];
$recorddate = my_date('relative', $mostonline['time']);

if($onlinecount == 1)
{
$lang->online_users = $lang->online_user;

	}

	}

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

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

Zeile 354Zeile 350
		SELECT t.tid, t.fid, t.uid, t.lastpost, t.lastposteruid, t.lastposter, t.subject, t.replies, t.views, u.username
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=t.uid)

		SELECT t.tid, t.fid, t.uid, t.lastpost, t.lastposteruid, t.lastposter, t.subject, t.replies, t.views, u.username
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=t.uid)

		WHERE 1=1 {$excludeforums}{$tunviewwhere}{$tinactivewhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%'

		WHERE 1=1 {$excludeforums}{$tunviewwhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%'

		ORDER BY t.lastpost DESC
LIMIT 0, ".$mybb->settings['portal_showdiscussionsnum']

		ORDER BY t.lastpost DESC
LIMIT 0, ".$mybb->settings['portal_showdiscussionsnum']

	);

	);

	while($thread = $db->fetch_array($query))
{
$forumpermissions[$thread['fid']] = forum_permissions($thread['fid']);

// Make sure we can view this thread

	while($thread = $db->fetch_array($query))
{
$forumpermissions[$thread['fid']] = forum_permissions($thread['fid']);

// Make sure we can view this thread

		if($forumpermissions[$thread['fid']]['canview'] == 0 || $forumpermissions[$thread['fid']]['canviewthreads'] == 0 || (isset($forumpermissions[$thread['fid']]['canonlyviewownthreads']) && $forumpermissions[$thread['fid']]['canonlyviewownthreads'] == 1 && $thread['uid'] != $mybb->user['uid']))

		if(isset($forumpermissions[$thread['fid']]['canonlyviewownthreads']) && $forumpermissions[$thread['fid']]['canonlyviewownthreads'] == 1 && $thread['uid'] != $mybb->user['uid'])

		{
continue;
}

$lastpostdate = my_date('relative', $thread['lastpost']);

		{
continue;
}

$lastpostdate = my_date('relative', $thread['lastpost']);

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

		$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);

// Don't link to guest's profiles (they have no profile).
if($thread['lastposteruid'] == 0)
{

		$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);

// Don't link to guest's profiles (they have no profile).
if($thread['lastposteruid'] == 0)
{

			$lastposterlink = $thread['lastposter'];

			$lastposterlink = $lastposter;

		}
else
{

		}
else
{

			$lastposterlink = build_profile_link($thread['lastposter'], $thread['lastposteruid']);

			$lastposterlink = build_profile_link($lastposter, $thread['lastposteruid']);

		}
if(my_strlen($thread['subject']) > 25)
{

		}
if(my_strlen($thread['subject']) > 25)
{

Zeile 418Zeile 415
				$fid_array[] = (int)$fid;
}
unset($fid);

				$fid_array[] = (int)$fid;
}
unset($fid);





			$announcementsfids = implode(',', $fid_array);


			$announcementsfids = implode(',', $fid_array);


			$annfidswhere = " AND t.fid IN (".$announcementsfids.")";

			$annfidswhere = " AND t.fid IN ($announcementsfids)";

		}
}


		}
}


Zeile 432Zeile 429
		{
$forum[$fid] = $f;
}

		{
$forum[$fid] = $f;
}

	}


	}


	$query = $db->simple_select("threads t", "COUNT(t.tid) AS threads", "t.visible='1'{$annfidswhere}{$tunviewwhere} AND t.closed NOT LIKE 'moved|%'", array('limit' => 1));
$announcementcount = $db->fetch_field($query, "threads");


	$query = $db->simple_select("threads t", "COUNT(t.tid) AS threads", "t.visible='1'{$annfidswhere}{$tunviewwhere} AND t.closed NOT LIKE 'moved|%'", array('limit' => 1));
$announcementcount = $db->fetch_field($query, "threads");


Zeile 443Zeile 440
		$numannouncements = 10; // Default back to 10
}


		$numannouncements = 10; // Default back to 10
}


	$page = $mybb->get_input('page', 1);

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

	$pages = $announcementcount / $numannouncements;
$pages = ceil($pages);

if($page > $pages || $page <= 0)

	$pages = $announcementcount / $numannouncements;
$pages = ceil($pages);

if($page > $pages || $page <= 0)

	{

	{

		$page = 1;
}

if($page)
{
$start = ($page-1) * $numannouncements;

		$page = 1;
}

if($page)
{
$start = ($page-1) * $numannouncements;

	}

	}

	else
{
$start = 0;
$page = 1;
}


	else
{
$start = 0;
$page = 1;
}


	$multipage = multipage($announcementcount, $numannouncements, $page, 'portal.php');


	$multipage = multipage($announcementcount, $numannouncements, $page, $file_name);


	$pids = '';
$tids = '';
$comma = '';

	$pids = '';
$tids = '';
$comma = '';

Zeile 478Zeile 475
		LIMIT {$start}, {$numannouncements}"
);
while($getid = $db->fetch_array($query))

		LIMIT {$start}, {$numannouncements}"
);
while($getid = $db->fetch_array($query))

	{

	{

		$attachmentcount[$getid['tid']] = $getid['attachmentcount'];
foreach($attachmentcount as $tid => $attach_count)
{
if($attach_count > 0)
{
$pids .= ",'{$getid['pid']}'";

		$attachmentcount[$getid['tid']] = $getid['attachmentcount'];
foreach($attachmentcount as $tid => $attach_count)
{
if($attach_count > 0)
{
$pids .= ",'{$getid['pid']}'";

			}

			}


$posts[$getid['tid']] = $getid;
}


$posts[$getid['tid']] = $getid;
}

Zeile 506Zeile 503
		}

if(is_array($forum))

		}

if(is_array($forum))

		{

		{

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

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

Zeile 519Zeile 516
			SELECT t.*, t.username AS threadusername, u.username, u.avatar, u.avatardimensions
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

			SELECT t.*, t.username AS threadusername, u.username, u.avatar, u.avatardimensions
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

			WHERE t.tid IN (0{$tids}){$annfidswhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%'

			WHERE t.tid IN (0{$tids}){$annfidswhere}{$tunviewwhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%'

			ORDER BY t.dateline DESC
LIMIT 0, {$numannouncements}"
);
while($announcement = $db->fetch_array($query))
{
// Make sure we can view this announcement

			ORDER BY t.dateline DESC
LIMIT 0, {$numannouncements}"
);
while($announcement = $db->fetch_array($query))
{
// Make sure we can view this announcement

			if($forumpermissions[$announcement['fid']]['canview'] == 0 || $forumpermissions[$announcement['fid']]['canviewthreads'] == 0 || (isset($forumpermissions[$announcement['fid']]['canonlyviewownthreads']) && $forumpermissions[$announcement['fid']]['canonlyviewownthreads'] == 1 && $announcement['uid'] != $mybb->user['uid']))

			if(isset($forumpermissions[$announcement['fid']]['canonlyviewownthreads']) && $forumpermissions[$announcement['fid']]['canonlyviewownthreads'] == 1 && $announcement['uid'] != $mybb->user['uid'])

			{
continue;
}

			{
continue;
}

Zeile 537Zeile 534
			$announcement['threadlink'] = get_thread_link($announcement['tid']);
$announcement['forumlink'] = get_forum_link($announcement['fid']);
$announcement['forumname'] = $forum_cache[$announcement['fid']]['name'];

			$announcement['threadlink'] = get_thread_link($announcement['tid']);
$announcement['forumlink'] = get_forum_link($announcement['fid']);
$announcement['forumname'] = $forum_cache[$announcement['fid']]['name'];

 

$announcement['username'] = htmlspecialchars_uni($announcement['username']);
$announcement['threadusername'] = htmlspecialchars_uni($announcement['threadusername']);


if($announcement['uid'] == 0)
{


if($announcement['uid'] == 0)
{

				$profilelink = htmlspecialchars_uni($announcement['threadusername']);

				$profilelink = $announcement['threadusername'];

			}
else
{

			}
else
{

Zeile 556Zeile 556
			{
$icon = $icon_cache[$announcement['icon']];
$icon['path'] = str_replace("{theme}", $theme['imgdir'], $icon['path']);

			{
$icon = $icon_cache[$announcement['icon']];
$icon['path'] = str_replace("{theme}", $theme['imgdir'], $icon['path']);

 
				$icon['path'] = htmlspecialchars_uni($icon['path']);
$icon['name'] = htmlspecialchars_uni($icon['name']);

				eval("\$icon = \"".$templates->get("portal_announcement_icon")."\";");
}
else

				eval("\$icon = \"".$templates->get("portal_announcement_icon")."\";");
}
else

Zeile 563Zeile 565
				$icon = "&nbsp;";
}


				$icon = "&nbsp;";
}


			$useravatar = format_avatar(htmlspecialchars_uni($announcement['avatar']), $announcement['avatardimensions']);

			$useravatar = format_avatar($announcement['avatar'], $announcement['avatardimensions']);

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

$anndate = my_date('relative', $announcement['dateline']);

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

$anndate = my_date('relative', $announcement['dateline']);