Vergleich global.php - 1.6.6 - 1.6.16

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 6Zeile 6
 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * $Id: global.php 5640 2011-10-26 09:22:59Z Tomm $

 * $Id$

 */

$working_dir = dirname(__FILE__);

 */

$working_dir = dirname(__FILE__);

Zeile 61Zeile 61
$mybb->post_code = generate_post_check();

// Set and load the language

$mybb->post_code = generate_post_check();

// Set and load the language

if($mybb->input['language'] && $lang->language_exists($mybb->input['language']) && verify_post_check($mybb->input['my_post_key'], true))

if(!empty($mybb->input['language']) && $lang->language_exists($mybb->input['language']) && verify_post_check($mybb->input['my_post_key'], true))

{
$mybb->settings['bblanguage'] = $mybb->input['language'];
// If user is logged in, update their language selection with the new one

{
$mybb->settings['bblanguage'] = $mybb->input['language'];
// If user is logged in, update their language selection with the new one

Zeile 82Zeile 82
	$mybb->user['language'] = $mybb->settings['bblanguage'];
}
// Cookied language!

	$mybb->user['language'] = $mybb->settings['bblanguage'];
}
// Cookied language!

else if(!$mybb->user['uid'] && $mybb->cookies['mybblang'] && $lang->language_exists($mybb->cookies['mybblang']))

else if(!$mybb->user['uid'] && !empty($mybb->cookies['mybblang']) && $lang->language_exists($mybb->cookies['mybblang']))

{
$mybb->settings['bblanguage'] = $mybb->cookies['mybblang'];
}

{
$mybb->settings['bblanguage'] = $mybb->cookies['mybblang'];
}

Zeile 95Zeile 95
$lang->set_language($mybb->settings['bblanguage']);
$lang->load("global");
$lang->load("messages");

$lang->set_language($mybb->settings['bblanguage']);
$lang->load("global");
$lang->load("messages");

 
$newpmmsg = '';


// Run global_start plugin hook now that the basics are set up
$plugins->run_hooks("global_start");


// Run global_start plugin hook now that the basics are set up
$plugins->run_hooks("global_start");

Zeile 133Zeile 134
	cache_forums();

// If we're accessing a post, fetch the forum theme for it and if we're overriding it

	cache_forums();

// If we're accessing a post, fetch the forum theme for it and if we're overriding it

	if($mybb->input['pid'])

	if(!empty($mybb->input['pid']) && THIS_SCRIPT != "polls.php")

	{
$query = $db->simple_select("posts", "fid", "pid = '".intval($mybb->input['pid'])."'", array("limit" => 1));
$fid = $db->fetch_field($query, "fid");

	{
$query = $db->simple_select("posts", "fid", "pid = '".intval($mybb->input['pid'])."'", array("limit" => 1));
$fid = $db->fetch_field($query, "fid");

Zeile 144Zeile 145
			$load_from_forum = 1;
}
}

			$load_from_forum = 1;
}
}



 
	// We have a thread id and a forum id, we can easily fetch the theme for this forum

	// We have a thread id and a forum id, we can easily fetch the theme for this forum

	else if($mybb->input['tid'])

	else if(!empty($mybb->input['tid']))

	{
$query = $db->simple_select("threads", "fid", "tid = '".intval($mybb->input['tid'])."'", array("limit" => 1));
$fid = $db->fetch_field($query, "fid");

	{
$query = $db->simple_select("threads", "fid", "tid = '".intval($mybb->input['tid'])."'", array("limit" => 1));
$fid = $db->fetch_field($query, "fid");

Zeile 157Zeile 157
			$load_from_forum = 1;
}
}

			$load_from_forum = 1;
}
}














	// If we're accessing poll results, fetch the forum theme for it and if we're overriding it
else if(!empty($mybb->input['pid']) && THIS_SCRIPT == "polls.php")
{
$query = $db->simple_select("threads", "fid", "poll = '".intval($mybb->input['pid'])."'", array("limit" => 1));
$fid = $db->fetch_field($query, "fid");

if($fid)
{
$style = $forum_cache[$fid];
$load_from_forum = 1;
}
}

	// We have a forum id - simply load the theme from it
else if($mybb->input['fid'])
{

	// We have a forum id - simply load the theme from it
else if($mybb->input['fid'])
{

Zeile 207Zeile 218
$theme = @array_merge($theme, unserialize($theme['properties']));

// Fetch all necessary stylesheets

$theme = @array_merge($theme, unserialize($theme['properties']));

// Fetch all necessary stylesheets

 
$stylesheets = '';

$theme['stylesheets'] = unserialize($theme['stylesheets']);
$stylesheet_scripts = array("global", basename($_SERVER['PHP_SELF']));
foreach($stylesheet_scripts as $stylesheet_script)
{
$stylesheet_actions = array("global");

$theme['stylesheets'] = unserialize($theme['stylesheets']);
$stylesheet_scripts = array("global", basename($_SERVER['PHP_SELF']));
foreach($stylesheet_scripts as $stylesheet_script)
{
$stylesheet_actions = array("global");

	if($mybb->input['action'])

	if(!empty($mybb->input['action']))

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

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

Zeile 224Zeile 236
			continue;
}


			continue;
}


		if($theme['stylesheets'][$stylesheet_script][$stylesheet_action])

		if(!empty($theme['stylesheets'][$stylesheet_script][$stylesheet_action]))

		{
// Actually add the stylesheets to the list
foreach($theme['stylesheets'][$stylesheet_script][$stylesheet_action] as $page_stylesheet)
{

		{
// Actually add the stylesheets to the list
foreach($theme['stylesheets'][$stylesheet_script][$stylesheet_action] as $page_stylesheet)
{

				if($already_loaded[$page_stylesheet])

				if(!empty($already_loaded[$page_stylesheet]))

				{
continue;
}

				{
continue;
}

Zeile 241Zeile 253
}

// Are we linking to a remote theme server?

}

// Are we linking to a remote theme server?

if(substr($theme['imgdir'], 0, 7) == "http://")

if(substr($theme['imgdir'], 0, 7) == "http://" || substr($theme['imgdir'], 0, 8) == "https://")

{
// If a language directory for the current language exists within the theme - we use it
if(!empty($mybb->user['language']))

{
// If a language directory for the current language exists within the theme - we use it
if(!empty($mybb->user['language']))

Zeile 300Zeile 312
{
$templatelist .= ',';
}

{
$templatelist .= ',';
}

$templatelist .= "css,headerinclude,header,footer,gobutton,htmldoctype,header_welcomeblock_member,header_welcomeblock_guest,header_welcomeblock_member_admin,global_pm_alert,global_unreadreports,";

$templatelist .= "headerinclude,header,footer,gobutton,htmldoctype,header_welcomeblock_member,header_welcomeblock_guest,header_welcomeblock_member_admin,global_pm_alert,global_unreadreports";

$templatelist .= ",global_pending_joinrequests,nav,nav_sep,nav_bit,nav_sep_active,nav_bit_active,footer_languageselect,header_welcomeblock_member_moderator,redirect,error";

$templatelist .= ",global_pending_joinrequests,nav,nav_sep,nav_bit,nav_sep_active,nav_bit_active,footer_languageselect,header_welcomeblock_member_moderator,redirect,error";

 
$templatelist .= ",global_boardclosed_warning,global_bannedwarning,error_inline,error_nopermission_loggedin,error_nopermission";

$templates->cache($db->escape_string($templatelist));

// Set the current date and time now

$templates->cache($db->escape_string($templatelist));

// Set the current date and time now

Zeile 356Zeile 369
// Otherwise, we have a guest
else
{

// Otherwise, we have a guest
else
{

 
	switch($mybb->settings['username_method'])
{
case 0:
$login_username = $lang->login_username;
break;
case 1:
$login_username = $lang->login_username1;
break;
case 2:
$login_username = $lang->login_username2;
break;
default:
$login_username = $lang->login_username;
break;
}

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

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

}

$pending_joinrequests = '';

}

$pending_joinrequests = '';


// Read the group leaders cache
$groupleaders = $cache->read("groupleaders");
if($mybb->user['uid'] != 0 && is_array($groupleaders) && array_key_exists($mybb->user['uid'], $groupleaders))


// Read the group leaders cache
$groupleaders = $cache->read("groupleaders");
if($mybb->user['uid'] != 0 && is_array($groupleaders) && array_key_exists($mybb->user['uid'], $groupleaders))

{

{

	$groupleader = $groupleaders[$mybb->user['uid']];

$gids = "";

	$groupleader = $groupleaders[$mybb->user['uid']];

$gids = "";

Zeile 398Zeile 426

$unreadreports = '';
// This user is a moderator, super moderator or administrator


$unreadreports = '';
// This user is a moderator, super moderator or administrator

if($mybb->usergroup['cancp'] == 1 || $mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'])
{
// Read the reported posts cache
$reported = $cache->read("reportedposts");

// 0 or more reported posts currently exist
if($reported['unread'] > 0)
{
if($reported['unread'] == 1)
{
$lang->unread_reports = $lang->unread_report;
}
else
{
$lang->unread_reports = $lang->sprintf($lang->unread_reports, $reported['unread']);
}
eval("\$unreadreports = \"".$templates->get("global_unreadreports")."\";");








































if($mybb->usergroup['cancp'] == 1 || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp']))
{
// Only worth checking if we are here because we have ACP permissions and the other condition fails
if($mybb->usergroup['cancp'] == 1 && !($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp']))
{
// First we check if the user's a super admin: if yes, we don't care about permissions
$can_access_moderationqueue = true;
$is_super_admin = is_super_admin($recipient['uid']);
if(!$is_super_admin)
{
// Include admin functions
if(!file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php"))
{
$can_access_moderationqueue = false;
}

require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php";

// Verify if we have permissions to access forum-moderation_queue
require_once MYBB_ROOT.$mybb->config['admin_dir']."/modules/forum/module_meta.php";
if(function_exists("forum_admin_permissions"))
{
// Get admin permissions
$adminperms = get_admin_permissions($mybb->user['uid']);

$permissions = forum_admin_permissions();
if(array_key_exists('moderation_queue', $permissions['permissions']) && $adminperms['forum']['moderation_queue'] != 1)
{
$can_access_moderationqueue = false;
}
}
}
}
else
{
$can_access_moderationqueue = false;
}

if($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp']))
{
// Read the reported posts cache
$reported = $cache->read("reportedposts");

// 0 or more reported posts currently exist
if($reported['unread'] > 0)
{
if($reported['unread'] == 1)
{
$lang->unread_reports = $lang->unread_report;
}
else
{
$lang->unread_reports = $lang->sprintf($lang->unread_reports, $reported['unread']);
}
eval("\$unreadreports = \"".$templates->get("global_unreadreports")."\";");
}

	}
}


	}
}


Zeile 422Zeile 489
if($lang->settings['charset'])
{
$charset = $lang->settings['charset'];

if($lang->settings['charset'])
{
$charset = $lang->settings['charset'];

}

}

// If not, revert to UTF-8
else
{

// If not, revert to UTF-8
else
{

Zeile 464Zeile 531
$lang->ajax_loading = str_replace("'", "\\'", $lang->ajax_loading);

// Check if this user has a new private message.

$lang->ajax_loading = str_replace("'", "\\'", $lang->ajax_loading);

// Check if this user has a new private message.

if($mybb->user['pmnotice'] == 2 && $mybb->user['pms_unread'] > 0 && $mybb->settings['enablepms'] != 0 && $mybb->usergroup['canusepms'] != 0 && $mybb->usergroup['canview'] != 0 && ($current_page != "private.php" || $mybb->input['action'] != "read"))


$pm_notice = '';
if(isset($mybb->user['pmnotice']) && $mybb->user['pmnotice'] == 2 && $mybb->user['pms_unread'] > 0 && $mybb->settings['enablepms'] != 0 && $mybb->usergroup['canusepms'] != 0 && $mybb->usergroup['canview'] != 0 && ($current_page != "private.php" || $mybb->input['action'] != "read"))

{

{

 
	if(!$parser)
{
require_once MYBB_ROOT.'inc/class_parser.php';
$parser = new postParser;
}


	$query = $db->query("
SELECT pm.subject, pm.pmid, fu.username AS fromusername, fu.uid AS fromuid
FROM ".TABLE_PREFIX."privatemessages pm

	$query = $db->query("
SELECT pm.subject, pm.pmid, fu.username AS fromusername, fu.uid AS fromuid
FROM ".TABLE_PREFIX."privatemessages pm

Zeile 474Zeile 548
		ORDER BY pm.dateline DESC
LIMIT 1
");

		ORDER BY pm.dateline DESC
LIMIT 1
");

 


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

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

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

	
if($pm['fromuid'] == 0)
{

	
if($pm['fromuid'] == 0)
{

Zeile 531Zeile 607
}

// Are we showing the quick language selection box?

}

// Are we showing the quick language selection box?

$lang_select = '';

$lang_select = $lang_options = '';

if($mybb->settings['showlanguageselect'] != 0)
{
$languages = $lang->get_languages();

if($mybb->settings['showlanguageselect'] != 0)
{
$languages = $lang->get_languages();

Zeile 544Zeile 620
			$lang_options .= "<option value=\"{$key}\" selected=\"selected\">&nbsp;&nbsp;&nbsp;{$language}</option>\n";
}
else

			$lang_options .= "<option value=\"{$key}\" selected=\"selected\">&nbsp;&nbsp;&nbsp;{$language}</option>\n";
}
else

		{

		{

			$lang_options .= "<option value=\"{$key}\">&nbsp;&nbsp;&nbsp;{$language}</option>\n";
}
}

			$lang_options .= "<option value=\"{$key}\">&nbsp;&nbsp;&nbsp;{$language}</option>\n";
}
}

Zeile 555Zeile 631
}

// DST Auto detection enabled?

}

// DST Auto detection enabled?

 
$auto_dst_detection = '';

if($mybb->user['uid'] > 0 && $mybb->user['dstcorrection'] == 2)
{
$auto_dst_detection = "<script type=\"text/javascript\">if(MyBB) { Event.observe(window, 'load', function() { MyBB.detectDSTChange('".($mybb->user['timezone']+$mybb->user['dst'])."'); }); }</script>\n";

if($mybb->user['uid'] > 0 && $mybb->user['dstcorrection'] == 2)
{
$auto_dst_detection = "<script type=\"text/javascript\">if(MyBB) { Event.observe(window, 'load', function() { MyBB.detectDSTChange('".($mybb->user['timezone']+$mybb->user['dst'])."'); }); }</script>\n";

}


}


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

// Add our main parts to the navigation

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

// Add our main parts to the navigation

Zeile 582Zeile 659
        $db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."'");
}
error($lang->error_banned);

        $db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."'");
}
error($lang->error_banned);

}


}


$closed_bypass = array(
"member.php" => array(
"login",

$closed_bypass = array(
"member.php" => array(
"login",

Zeile 607Zeile 684
{
// User is not an administrator and the load limit is higher than the limit, show an error
error($lang->error_loadlimit);

{
// User is not an administrator and the load limit is higher than the limit, show an error
error($lang->error_loadlimit);

}


}


// If there is a valid referrer in the URL, cookie it
if(!$mybb->user['uid'] && $mybb->settings['usereferrals'] == 1 && (isset($mybb->input['referrer']) || isset($mybb->input['referrername'])))
{
if(isset($mybb->input['referrername']))
{
$condition = "username='".$db->escape_string($mybb->input['referrername'])."'";

// If there is a valid referrer in the URL, cookie it
if(!$mybb->user['uid'] && $mybb->settings['usereferrals'] == 1 && (isset($mybb->input['referrer']) || isset($mybb->input['referrername'])))
{
if(isset($mybb->input['referrername']))
{
$condition = "username='".$db->escape_string($mybb->input['referrername'])."'";

	}
else

	}
else

	{
$condition = "uid='".intval($mybb->input['referrer'])."'";
}

	{
$condition = "uid='".intval($mybb->input['referrer'])."'";
}

Zeile 632Zeile 709
{
// Check pages allowable even when not allowed to view board
if(defined("ALLOWABLE_PAGE"))

{
// Check pages allowable even when not allowed to view board
if(defined("ALLOWABLE_PAGE"))

	{

	{

		if(is_string(ALLOWABLE_PAGE))
{
$allowable_actions = explode(',', ALLOWABLE_PAGE);

		if(is_string(ALLOWABLE_PAGE))
{
$allowable_actions = explode(',', ALLOWABLE_PAGE);

Zeile 648Zeile 725
		{
error_no_permission();
}

		{
error_no_permission();
}

	}

	}

	else
{
error_no_permission();

	else
{
error_no_permission();

Zeile 670Zeile 747
}

// work out which items the user has collapsed

}

// work out which items the user has collapsed

$colcookie = $mybb->cookies['collapsed'];

$colcookie = empty($mybb->cookies['collapsed']) ? false : $mybb->cookies['collapsed'];


// set up collapsable items (to automatically show them us expanded)


// set up collapsable items (to automatically show them us expanded)

 
$collapsed = array('boardstats' => '', 'boardstats_e' => '', 'quickreply' => '', 'quickreply_e' => '');
$collapsedimg = $collapsed;


if($colcookie)
{
$col = explode("|", $colcookie);

if($colcookie)
{
$col = explode("|", $colcookie);