Vergleich forumdisplay.php - 1.8.20 - 1.8.23

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 282Zeile 282
	$inviscount = 0;
$onlinemembers = '';
$doneusers = array();

	$inviscount = 0;
$onlinemembers = '';
$doneusers = array();

 

$query = $db->simple_select("sessions", "COUNT(DISTINCT ip) AS guestcount", "uid = 0 AND time > $timecut AND location1 = $fid AND nopermission != 1");
$guestcount = $db->fetch_field($query, 'guestcount');


$query = $db->query("


$query = $db->query("

		SELECT s.ip, s.uid, u.username, s.time, u.invisible, u.usergroup, u.usergroup, u.displaygroup
FROM ".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)
WHERE s.time > '$timecut' AND location1='$fid' AND nopermission != 1



		SELECT
s.ip, s.uid, u.username, s.time, u.invisible, u.usergroup, u.usergroup, u.displaygroup
FROM
".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)
WHERE s.uid != 0 AND s.time > $timecut AND location1 = $fid AND nopermission != 1

		ORDER BY u.username ASC, s.time DESC
");

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

		ORDER BY u.username ASC, s.time DESC
");

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

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

		if(empty($doneusers[$user['uid']]) || $doneusers[$user['uid']] < $user['time'])

		{

		{

			++$guestcount;
}
else
{
if(empty($doneusers[$user['uid']]) || $doneusers[$user['uid']] < $user['time'])

			$doneusers[$user['uid']] = $user['time'];
++$membercount;
if($user['invisible'] == 1)



			{

			{

				$doneusers[$user['uid']] = $user['time'];
++$membercount;
if($user['invisible'] == 1)
{
$invisiblemark = "*";
++$inviscount;
}
else
{
$invisiblemark = '';
}

				$invisiblemark = "*";
++$inviscount;
}
else
{
$invisiblemark = '';
}









				if($user['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $user['uid'] == $mybb->user['uid'])
{
$user['username'] = format_name(htmlspecialchars_uni($user['username']), $user['usergroup'], $user['displaygroup']);
$user['profilelink'] = build_profile_link($user['username'], $user['uid']);
eval("\$onlinemembers .= \"".$templates->get("forumdisplay_usersbrowsing_user", 1, 0)."\";");
$comma = $lang->comma;
}
}

			if($user['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $user['uid'] == $mybb->user['uid'])
{
$user['username'] = format_name(htmlspecialchars_uni($user['username']), $user['usergroup'], $user['displaygroup']);
$user['profilelink'] = build_profile_link($user['username'], $user['uid']);
eval("\$onlinemembers .= \"".$templates->get("forumdisplay_usersbrowsing_user", 1, 0)."\";");
$comma = $lang->comma;
}


		}

		}

	}


	}


	$guestsonline = '';
if($guestcount)

	$guestsonline = '';
if($guestcount)

	{

	{

		$guestsonline = $lang->sprintf($lang->users_browsing_forum_guests, $guestcount);
}

$invisonline = '';
if($mybb->user['invisible'] == 1)

		$guestsonline = $lang->sprintf($lang->users_browsing_forum_guests, $guestcount);
}

$invisonline = '';
if($mybb->user['invisible'] == 1)

	{

	{

		// the user was counted as invisible user --> correct the inviscount
$inviscount -= 1;

		// the user was counted as invisible user --> correct the inviscount
$inviscount -= 1;

	}

	}

	if($inviscount && $mybb->usergroup['canviewwolinvis'] != 1)

	if($inviscount && $mybb->usergroup['canviewwolinvis'] != 1)

	{

	{

		$invisonline = $lang->sprintf($lang->users_browsing_forum_invis, $inviscount);

		$invisonline = $lang->sprintf($lang->users_browsing_forum_invis, $inviscount);

	}


	}



$onlinesep = '';
if($invisonline != '' && $onlinemembers)
{
$onlinesep = $lang->comma;


$onlinesep = '';
if($invisonline != '' && $onlinemembers)
{
$onlinesep = $lang->comma;

	}


	}


	$onlinesep2 = '';
if($invisonline != '' && $guestcount || $onlinemembers && $guestcount)
{

	$onlinesep2 = '';
if($invisonline != '' && $guestcount || $onlinemembers && $guestcount)
{

Zeile 360Zeile 358
// Do we have any forum rules to show for this forum?
$forumrules = '';
if($foruminfo['rulestype'] != 0 && $foruminfo['rules'])

// Do we have any forum rules to show for this forum?
$forumrules = '';
if($foruminfo['rulestype'] != 0 && $foruminfo['rules'])

{

{

	if(!$foruminfo['rulestitle'])
{
$foruminfo['rulestitle'] = $lang->sprintf($lang->forum_rules, $foruminfo['name']);

	if(!$foruminfo['rulestitle'])
{
$foruminfo['rulestitle'] = $lang->sprintf($lang->forum_rules, $foruminfo['name']);

Zeile 387Zeile 385
$bgcolor = "trow1";

// Set here to fetch only approved/deleted topics (and then below for a moderator we change this).

$bgcolor = "trow1";

// Set here to fetch only approved/deleted topics (and then below for a moderator we change this).

 
$visible_states = array("1");


if($fpermissions['canviewdeletionnotice'] != 0)
{

if($fpermissions['canviewdeletionnotice'] != 0)
{

	$visibleonly = "AND visible IN (-1,1)";
$tvisibleonly = "AND t.visible IN (-1,1)";
}
else
{
$visibleonly = "AND visible='1'";
$tvisibleonly = "AND t.visible='1'";

	$visible_states[] = "-1";







}

// Check if the active user is a moderator and get the inline moderation tools.

}

// Check if the active user is a moderator and get the inline moderation tools.

Zeile 407Zeile 401
	$inlinemod = '';
$inlinecookie = "inlinemod_forum".$fid;


	$inlinemod = '';
$inlinecookie = "inlinemod_forum".$fid;


	if(is_moderator($fid, "canviewdeleted") == true || is_moderator($fid, "canviewunapprove") == true)

	if(is_moderator($fid, "canviewdeleted") == true)

	{

	{

		if(is_moderator($fid, "canviewunapprove") == true && is_moderator($fid, "canviewdeleted") == false)
{
$visibleonly = "AND visible IN (0,1)";
$tvisibleonly = "AND t.visible IN (0,1)";
}
elseif(is_moderator($fid, "canviewdeleted") == true && is_moderator($fid, "canviewunapprove") == false)
{
$visibleonly = "AND visible IN (-1,1)";
$tvisibleonly = "AND t.visible IN (-1,1)";
}
else
{
$visibleonly = " AND visible IN (-1,0,1)";
$tvisibleonly = " AND t.visible IN (-1,0,1)";
}

		$visible_states[] = "-1";















	}

	}

}





	if(is_moderator($fid, "canviewunapprove") == true)
{
$visible_states[] = "0";
}
}

else

else

{

{

	$inlinemod = $inlinemodcol = '';
$ismod = false;
}

	$inlinemod = $inlinemodcol = '';
$ismod = false;
}

 

$visible_condition = "visible IN (".implode(',', array_unique($visible_states)).")";
$visibleonly = "AND ".$visible_condition;

// Allow viewing own unapproved threads for logged in users
if($mybb->user['uid'] && $mybb->settings['showownunapproved'])
{
$visible_condition .= " OR (t.visible=0 AND t.uid=".(int)$mybb->user['uid'].")";
}

$tvisibleonly = "AND (t.".$visible_condition.")";


if(is_moderator($fid, "caneditposts") || $fpermissions['caneditposts'] == 1)
{


if(is_moderator($fid, "caneditposts") || $fpermissions['caneditposts'] == 1)
{

Zeile 612Zeile 607
if($fpermissions['canviewthreads'] != 0)
{
// How many threads are there?

if($fpermissions['canviewthreads'] != 0)
{
// How many threads are there?

	$query = $db->simple_select("threads", "COUNT(tid) AS threads", "fid = '$fid' $useronly $visibleonly $datecutsql $prefixsql");

	$query = $db->simple_select("threads t", "COUNT(tid) AS threads", "fid = '$fid' $tuseronly $tvisibleonly $datecutsql2 $prefixsql2");

	$threadcount = $db->fetch_field($query, "threads");
}


	$threadcount = $db->fetch_field($query, "threads");
}


Zeile 758Zeile 753
	// See if this announcement has been read in our announcement array
$cookie = array();
if(isset($mybb->cookies['mybb']['announcements']))

	// See if this announcement has been read in our announcement array
$cookie = array();
if(isset($mybb->cookies['mybb']['announcements']))

	{

	{

		$cookie = my_unserialize(stripslashes($mybb->cookies['mybb']['announcements']));
}


		$cookie = my_unserialize(stripslashes($mybb->cookies['mybb']['announcements']));
}


Zeile 770Zeile 765
		{
$new_class = ' class="subject_new"';
$folder = "newfolder";

		{
$new_class = ' class="subject_new"';
$folder = "newfolder";

		}

		}

		else
{
$new_class = ' class="subject_old"';
$folder = "folder";

		else
{
$new_class = ' class="subject_old"';
$folder = "folder";

		}

		}


// Mmm, eat those announcement cookies if they're older than our last visit
if(isset($cookie[$announcement['aid']]) && $cookie[$announcement['aid']] < $mybb->user['lastvisit'])
{
unset($cookie[$announcement['aid']]);
}


// Mmm, eat those announcement cookies if they're older than our last visit
if(isset($cookie[$announcement['aid']]) && $cookie[$announcement['aid']] < $mybb->user['lastvisit'])
{
unset($cookie[$announcement['aid']]);
}





		$announcement['announcementlink'] = get_announcement_link($announcement['aid']);
$announcement['subject'] = $parser->parse_badwords($announcement['subject']);
$announcement['subject'] = htmlspecialchars_uni($announcement['subject']);
$postdate = my_date('relative', $announcement['startdate']);


		$announcement['announcementlink'] = get_announcement_link($announcement['aid']);
$announcement['subject'] = $parser->parse_badwords($announcement['subject']);
$announcement['subject'] = htmlspecialchars_uni($announcement['subject']);
$postdate = my_date('relative', $announcement['startdate']);


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


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


		$announcement['profilelink'] = build_profile_link($announcement['username'], $announcement['uid']);

if($mybb->settings['allowthreadratings'] != 0 && $foruminfo['allowtratings'] != 0 && $fpermissions['canviewthreads'] != 0)

		$announcement['profilelink'] = build_profile_link($announcement['username'], $announcement['uid']);

if($mybb->settings['allowthreadratings'] != 0 && $foruminfo['allowtratings'] != 0 && $fpermissions['canviewthreads'] != 0)

		{

		{

			eval("\$rating = \"".$templates->get("forumdisplay_announcement_rating")."\";");
$lpbackground = "trow2";

			eval("\$rating = \"".$templates->get("forumdisplay_announcement_rating")."\";");
$lpbackground = "trow2";

		}
else

		}
else

		{
$rating = '';
$lpbackground = "trow1";

		{
$rating = '';
$lpbackground = "trow1";

		}

		}


if($ismod)
{


if($ismod)
{

Zeile 810Zeile 805
		else
{
$modann = '';

		else
{
$modann = '';

		}


		}


		$plugins->run_hooks("forumdisplay_announcement");
eval("\$announcements .= \"".$templates->get("forumdisplay_announcements_announcement")."\";");
$bgcolor = alt_trow();

		$plugins->run_hooks("forumdisplay_announcement");
eval("\$announcements .= \"".$templates->get("forumdisplay_announcements_announcement")."\";");
$bgcolor = alt_trow();

Zeile 844Zeile 839
if($fpermissions['canviewthreads'] != 0)
{
$plugins->run_hooks("forumdisplay_get_threads");

if($fpermissions['canviewthreads'] != 0)
{
$plugins->run_hooks("forumdisplay_get_threads");


// Allow viewing unapproved threads for logged in users
if($mybb->user['uid'] && $mybb->settings['showownunapproved'])
{
$tvisibleonly .= " OR (t.fid='$fid' AND t.uid=".$mybb->user['uid'].")";
}

 

// Start Getting Threads
$query = $db->query("


// Start Getting Threads
$query = $db->query("

Zeile 892Zeile 881
			}
}
}

			}
}
}

 

$args = array(
'threadcache' => &$threadcache,
'tids' => &$tids
);

$plugins->run_hooks("forumdisplay_before_thread", $args);


if($mybb->settings['allowthreadratings'] != 0 && $foruminfo['allowtratings'] != 0 && $mybb->user['uid'] && !empty($threadcache) && $ratings == true)
{


if($mybb->settings['allowthreadratings'] != 0 && $foruminfo['allowtratings'] != 0 && $mybb->user['uid'] && !empty($threadcache) && $ratings == true)
{

Zeile 899Zeile 895
		// Guests get the pleasure of not being ID'd, but will be checked when they try and rate
$imp = implode(",", array_keys($threadcache));
$query = $db->simple_select("threadratings", "tid, uid", "tid IN ({$imp}) AND uid = '{$mybb->user['uid']}'");

		// Guests get the pleasure of not being ID'd, but will be checked when they try and rate
$imp = implode(",", array_keys($threadcache));
$query = $db->simple_select("threadratings", "tid, uid", "tid IN ({$imp}) AND uid = '{$mybb->user['uid']}'");





		while($rating = $db->fetch_array($query))
{
$threadcache[$rating['tid']]['rated'] = 1;

		while($rating = $db->fetch_array($query))
{
$threadcache[$rating['tid']]['rated'] = 1;

		}
}
}


		}
}
}


// If user has moderation tools available, prepare the Select All feature
$selectall = '';
if(is_moderator($fid) && $threadcount > $perpage)

// If user has moderation tools available, prepare the Select All feature
$selectall = '';
if(is_moderator($fid) && $threadcount > $perpage)

Zeile 998Zeile 994
		$moved = explode("|", $thread['closed']);

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

		$moved = explode("|", $thread['closed']);

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

		{

		{

			$bgcolor = "trow_shaded";
}
elseif($thread['visible'] == -1 && is_moderator($fid, "canviewdeleted"))

			$bgcolor = "trow_shaded";
}
elseif($thread['visible'] == -1 && is_moderator($fid, "canviewdeleted"))

Zeile 1052Zeile 1048
		}

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

		}

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

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

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


if($thread['icon'] > 0 && $icon_cache[$thread['icon']])
{


if($thread['icon'] > 0 && $icon_cache[$thread['icon']])
{

Zeile 1343Zeile 1339
		}
else
{

		}
else
{

 
			$thread['start_datetime'] = my_date('relative', $thread['dateline']);

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

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

		}

		}

	}

	}





	$customthreadtools = $standardthreadtools = '';
if($ismod)
{

	$customthreadtools = $standardthreadtools = '';
if($ismod)
{

Zeile 1361Zeile 1358
			{
case "pgsql":
case "sqlite":

			{
case "pgsql":
case "sqlite":

					foreach($gids as $gid)
{

					foreach($gids as $gid)
{

						$gid = (int)$gid;
$gidswhere .= " OR ','||groups||',' LIKE '%,{$gid},%'";
}

						$gid = (int)$gid;
$gidswhere .= " OR ','||groups||',' LIKE '%,{$gid},%'";
}

Zeile 1398Zeile 1395
		}

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

		}

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

		{

		{

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

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

		}

		}


if(is_moderator($fid, "cansoftdeletethreads"))
{
eval("\$inlinemodsoftdelete = \"".$templates->get("forumdisplay_inlinemoderation_softdelete")."\";");


if(is_moderator($fid, "cansoftdeletethreads"))
{
eval("\$inlinemodsoftdelete = \"".$templates->get("forumdisplay_inlinemoderation_softdelete")."\";");

		}


		}


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

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

		{

		{

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

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

		}

		}


if(is_moderator($fid, "candeletethreads"))
{
eval("\$inlinemoddelete = \"".$templates->get("forumdisplay_inlinemoderation_delete")."\";");


if(is_moderator($fid, "candeletethreads"))
{
eval("\$inlinemoddelete = \"".$templates->get("forumdisplay_inlinemoderation_delete")."\";");

		}


		}


		if(is_moderator($fid, "canmanagethreads"))
{
eval("\$inlinemodmanage = \"".$templates->get("forumdisplay_inlinemoderation_manage")."\";");

		if(is_moderator($fid, "canmanagethreads"))
{
eval("\$inlinemodmanage = \"".$templates->get("forumdisplay_inlinemoderation_manage")."\";");

Zeile 1489Zeile 1486
	}

$prefixselect = build_forum_prefix_select($fid, $tprefix);

	}

$prefixselect = build_forum_prefix_select($fid, $tprefix);

 

$plugins->run_hooks("forumdisplay_threadlist");


$lang->rss_discovery_forum = $lang->sprintf($lang->rss_discovery_forum, htmlspecialchars_uni(strip_tags($foruminfo['name'])));
eval("\$rssdiscovery = \"".$templates->get("forumdisplay_rssdiscovery")."\";");


$lang->rss_discovery_forum = $lang->sprintf($lang->rss_discovery_forum, htmlspecialchars_uni(strip_tags($foruminfo['name'])));
eval("\$rssdiscovery = \"".$templates->get("forumdisplay_rssdiscovery")."\";");