Vergleich global.php - 1.8.3 - 1.8.30

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 13Zeile 13
{
$working_dir = '.';
}

{
$working_dir = '.';
}

 

$shutdown_queries = $shutdown_functions = array();


// Load main MyBB core file which begins all of the magic
require_once $working_dir.'/inc/init.php';


// Load main MyBB core file which begins all of the magic
require_once $working_dir.'/inc/init.php';


$shutdown_queries = array();

 

// Read the usergroups cache as well as the moderators cache
$groupscache = $cache->read('usergroups');


// Read the usergroups cache as well as the moderators cache
$groupscache = $cache->read('usergroups');

Zeile 27Zeile 27
{
$cache->update_usergroups();
$groupscache = $cache->read('usergroups');

{
$cache->update_usergroups();
$groupscache = $cache->read('usergroups');

}

if(!defined('THIS_SCRIPT'))
{
define('THIS_SCRIPT', '');
}

$current_page = my_strtolower(basename(THIS_SCRIPT));

}

$current_page = my_strtolower(basename(THIS_SCRIPT));







// Send page headers - don't send no-cache headers for attachment.php
if($current_page != 'attachment.php')


// Send page headers - don't send no-cache headers for attachment.php
if($current_page != 'attachment.php')

Zeile 46Zeile 41
if((isset($mybb->input['action']) && isset($nosession[$mybb->input['action']])) || (isset($mybb->input['thumbnail']) && $current_page == 'attachment.php'))
{
define('NO_ONLINE', 1);

if((isset($mybb->input['action']) && isset($nosession[$mybb->input['action']])) || (isset($mybb->input['thumbnail']) && $current_page == 'attachment.php'))
{
define('NO_ONLINE', 1);

}


}


// Create session for this user
require_once MYBB_ROOT.'inc/class_session.php';
$session = new session;
$session->init();
$mybb->session = &$session;


// Create session for this user
require_once MYBB_ROOT.'inc/class_session.php';
$session = new session;
$session->init();
$mybb->session = &$session;


$mybb->user['ismoderator'] = is_moderator('', '', $mybb->user['uid']);

$mybb->user['ismoderator'] = is_moderator(0, '', $mybb->user['uid']);


// Set our POST validation code here
$mybb->post_code = generate_post_check();


// Set our POST validation code here
$mybb->post_code = generate_post_check();

Zeile 72Zeile 67
		}

$db->update_query('users', array('language' => $db->escape_string($mybb->settings['bblanguage'])), "uid = '{$mybb->user['uid']}'");

		}

$db->update_query('users', array('language' => $db->escape_string($mybb->settings['bblanguage'])), "uid = '{$mybb->user['uid']}'");

	}
// Guest = cookie
else
{

	}
// Guest = cookie
else
{

		my_setcookie('mybblang', $mybb->settings['bblanguage']);
}
$mybb->user['language'] = $mybb->settings['bblanguage'];

		my_setcookie('mybblang', $mybb->settings['bblanguage']);
}
$mybb->user['language'] = $mybb->settings['bblanguage'];

}

}

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

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

{

{

	$mybb->settings['bblanguage'] = $mybb->cookies['mybblang'];
}
else if(!isset($mybb->settings['bblanguage']))
{
$mybb->settings['bblanguage'] = 'english';

	$mybb->settings['bblanguage'] = $mybb->cookies['mybblang'];
}
else if(!isset($mybb->settings['bblanguage']))
{
$mybb->settings['bblanguage'] = 'english';

}


}


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

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

 

// Wipe lockout cookie if enough time has passed
if(isset($mybb->cookies['lockoutexpiry']) && $mybb->cookies['lockoutexpiry'] < TIME_NOW)
{
my_unsetcookie('lockoutexpiry');
}


// 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 110Zeile 111

// The user used our new quick theme changer
if(isset($mybb->input['theme']) && verify_post_check($mybb->get_input('my_post_key'), true))


// The user used our new quick theme changer
if(isset($mybb->input['theme']) && verify_post_check($mybb->get_input('my_post_key'), true))

{
$mybb->user['style'] = $mybb->get_input('theme');
// If user is logged in, update their theme selection with the new one
if($mybb->user['uid'])
{
if(isset($mybb->cookies['mybbtheme']))
















{
// Set up user handler.
require_once MYBB_ROOT.'inc/datahandlers/user.php';
$userhandler = new UserDataHandler('update');

$user = array(
'uid' => $mybb->user['uid'],
'style' => $mybb->get_input('theme', MyBB::INPUT_INT),
'usergroup' => $mybb->user['usergroup'],
'additionalgroups' => $mybb->user['additionalgroups']
);

$userhandler->set_data($user);

// validate_user verifies the style if it is set in the data array.
if($userhandler->validate_user())
{
$mybb->user['style'] = $user['style'];

// If user is logged in, update their theme selection with the new one
if($mybb->user['uid'])

		{

		{

			my_unsetcookie('mybbtheme');











			if(isset($mybb->cookies['mybbtheme']))
{
my_unsetcookie('mybbtheme');
}

$userhandler->update_user();
}
// Guest = cookie
else
{
my_setcookie('mybbtheme', $user['style']);

		}

		}


$db->update_query('users', array('style' => (int)$mybb->user['style']), "uid = '{$mybb->user['uid']}'");
}
// Guest = cookie
else
{
my_setcookie('mybbtheme', $mybb->get_input('theme'));

 
	}
}
// Cookied theme!
else if(!$mybb->user['uid'] && !empty($mybb->cookies['mybbtheme']))

	}
}
// Cookied theme!
else if(!$mybb->user['uid'] && !empty($mybb->cookies['mybbtheme']))

{
$mybb->user['style'] = (int)$mybb->cookies['mybbtheme'];
}

{
$mybb->user['style'] = (int)$mybb->cookies['mybbtheme'];
}


// This user has a custom theme set in their profile
if(isset($mybb->user['style']) && (int)$mybb->user['style'] != 0)


// This user has a custom theme set in their profile
if(isset($mybb->user['style']) && (int)$mybb->user['style'] != 0)

Zeile 164Zeile 183
	if(isset($mybb->input['pid']) && THIS_SCRIPT != "polls.php")
{
$query = $db->simple_select("posts", "fid", "pid = '{$mybb->input['pid']}'", array("limit" => 1));

	if(isset($mybb->input['pid']) && THIS_SCRIPT != "polls.php")
{
$query = $db->simple_select("posts", "fid", "pid = '{$mybb->input['pid']}'", array("limit" => 1));

		$fid = $db->fetch_field($query, 'fid');

 




		if($fid)

		if($db->num_rows($query) > 0 && $fid = $db->fetch_field($query, 'fid'))

		{
$style = $forum_cache[$fid];
$load_from_forum = 1;

		{
$style = $forum_cache[$fid];
$load_from_forum = 1;

Zeile 176Zeile 194
	else if(isset($mybb->input['tid']))
{
$query = $db->simple_select('threads', 'fid', "tid = '{$mybb->input['tid']}'", array('limit' => 1));

	else if(isset($mybb->input['tid']))
{
$query = $db->simple_select('threads', 'fid', "tid = '{$mybb->input['tid']}'", array('limit' => 1));

		$fid = $db->fetch_field($query, 'fid');

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


if($db->num_rows($query) > 0 && $fid = $db->fetch_field($query, 'fid'))
{
$style = $forum_cache[$fid];


			$load_from_forum = 1;
}
}
// If we're accessing poll results, fetch the forum theme for it and if we're overriding it
else if(isset($mybb->input['pid']) && THIS_SCRIPT == "polls.php")
{

			$load_from_forum = 1;
}
}
// If we're accessing poll results, fetch the forum theme for it and if we're overriding it
else if(isset($mybb->input['pid']) && THIS_SCRIPT == "polls.php")
{

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

		$query = $db->query("SELECT t.fid FROM ".TABLE_PREFIX."polls p INNER JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid) WHERE p.pid = '{$mybb->input['pid']}' LIMIT 1");






		if($fid)

		if($db->num_rows($query) > 0 && $fid = $db->fetch_field($query, 'fid'))

		{
$style = $forum_cache[$fid];
$load_from_forum = 1;

		{
$style = $forum_cache[$fid];
$load_from_forum = 1;

		}

		}

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

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

Zeile 221Zeile 237
if(empty($loadstyle))
{
$loadstyle = "def='1'";

if(empty($loadstyle))
{
$loadstyle = "def='1'";

}


}


// Fetch the theme to load from the cache

// Fetch the theme to load from the cache

 
if($loadstyle != "def='1'")
{
$query = $db->simple_select('themes', 'name, tid, properties, stylesheets, allowedgroups', $loadstyle, array('limit' => 1));
$theme = $db->fetch_array($query);

if(isset($theme['tid']) && !$load_from_forum && !is_member($theme['allowedgroups']) && $theme['allowedgroups'] != 'all')
{
if($load_from_user == 1)
{
$db->update_query('users', array('style' => 0), "style='{$mybb->user['style']}' AND uid='{$mybb->user['uid']}'");
}

if(isset($mybb->cookies['mybbtheme']))
{
my_unsetcookie('mybbtheme');
}

$loadstyle = "def='1'";
}
}


if($loadstyle == "def='1'")
{
if(!$cache->read('default_theme'))
{
$cache->update_default_theme();
}

if($loadstyle == "def='1'")
{
if(!$cache->read('default_theme'))
{
$cache->update_default_theme();
}

 


	$theme = $cache->read('default_theme');

	$theme = $cache->read('default_theme');

}
else
{
$query = $db->simple_select('themes', 'name, tid, properties, stylesheets', $loadstyle, array('limit' => 1));
$theme = $db->fetch_array($query);


$load_from_forum = $load_from_user = 0;




}

// No theme was found - we attempt to load the master or any other theme

}

// No theme was found - we attempt to load the master or any other theme

Zeile 250Zeile 285
	else if($load_from_user == 1)
{
$db->update_query('users', array('style' => 0), "style = '{$mybb->user['style']}'");

	else if($load_from_user == 1)
{
$db->update_query('users', array('style' => 0), "style = '{$mybb->user['style']}'");

	}

	}


// Attempt to load the master or any other theme if the master is not available
$query = $db->simple_select('themes', 'name, tid, properties, stylesheets', '', array('order_by' => 'tid', 'limit' => 1));


// Attempt to load the master or any other theme if the master is not available
$query = $db->simple_select('themes', 'name, tid, properties, stylesheets', '', array('order_by' => 'tid', 'limit' => 1));

Zeile 290Zeile 325
				{
continue;
}

				{
continue;
}


if(strpos($page_stylesheet, 'css.php') !== false)
{
$stylesheet_url = $mybb->settings['bburl'] . '/' . $page_stylesheet;
}


if(strpos($page_stylesheet, 'css.php') !== false)
{
$stylesheet_url = $mybb->settings['bburl'] . '/' . $page_stylesheet;
}

				else

				else

				{

				{

					$stylesheet_url = $mybb->get_asset_url($page_stylesheet);

					$stylesheet_url = $mybb->get_asset_url($page_stylesheet);

				}






					if (file_exists(MYBB_ROOT.$page_stylesheet))
{
$stylesheet_url .= "?t=".filemtime(MYBB_ROOT.$page_stylesheet);
}
}


				if($mybb->settings['minifycss'])
{
$stylesheet_url = str_replace('.css', '.min.css', $stylesheet_url);
}

if(strpos($page_stylesheet, 'css.php') !== false)

				if($mybb->settings['minifycss'])
{
$stylesheet_url = str_replace('.css', '.min.css', $stylesheet_url);
}

if(strpos($page_stylesheet, 'css.php') !== false)

				{

				{

					// We need some modification to get it working with the displayorder
$query_string = parse_url($stylesheet_url, PHP_URL_QUERY);
$id = (int) my_substr($query_string, 11);
$query = $db->simple_select("themestylesheets", "name", "sid={$id}");
$real_name = $db->fetch_field($query, "name");

					// We need some modification to get it working with the displayorder
$query_string = parse_url($stylesheet_url, PHP_URL_QUERY);
$id = (int) my_substr($query_string, 11);
$query = $db->simple_select("themestylesheets", "name", "sid={$id}");
$real_name = $db->fetch_field($query, "name");

					$theme_stylesheets[$real_name] = "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$stylesheet_url}\" />\n";
}

					$theme_stylesheets[$real_name] = $id;
}

				else
{
$theme_stylesheets[basename($page_stylesheet)] = "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$stylesheet_url}\" />\n";
}

$already_loaded[$page_stylesheet] = 1;

				else
{
$theme_stylesheets[basename($page_stylesheet)] = "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$stylesheet_url}\" />\n";
}

$already_loaded[$page_stylesheet] = 1;

			}
}
}
}

			}
}
}
}

unset($actions);

unset($actions);


if(!empty($theme_stylesheets))
{




$css_php_script_stylesheets = array();

if(!empty($theme_stylesheets) && is_array($theme['disporder']))
{

	foreach($theme['disporder'] as $style_name => $order)
{
if(!empty($theme_stylesheets[$style_name]))
{

	foreach($theme['disporder'] as $style_name => $order)
{
if(!empty($theme_stylesheets[$style_name]))
{

			$stylesheets .= $theme_stylesheets[$style_name];








			if(is_int($theme_stylesheets[$style_name]))
{
$css_php_script_stylesheets[] = $theme_stylesheets[$style_name];
}
else
{
$stylesheets .= $theme_stylesheets[$style_name];
}

		}
}

		}
}

 
}

if(!empty($css_php_script_stylesheets))
{
$sheet = $mybb->settings['bburl'] . '/css.php?' . http_build_query(array(
'stylesheet' => $css_php_script_stylesheets
));

$stylesheets .= "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$sheet}\" />\n";

}

// Are we linking to a remote theme server?

}

// Are we linking to a remote theme server?

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

if(my_validate_url($theme['imgdir']))

{
// 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 356Zeile 413
		else
{
$theme['imglangdir'] = $theme['imgdir'];

		else
{
$theme['imglangdir'] = $theme['imgdir'];

		}
}
}
else
{
$img_directory = $theme['imgdir'];

if($mybb->settings['usecdn'] && !empty($mybb->settings['cdnpath']))
{
$img_directory = rtrim($mybb->settings['cdnpath'], '/') . '/' . ltrim($theme['imgdir'], '/');
}

if(!@is_dir($img_directory))
{
$theme['imgdir'] = 'images';
}

// If a language directory for the current language exists within the theme - we use it
if(!empty($mybb->user['language']) && is_dir($img_directory.'/'.$mybb->user['language']))
{
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->user['language'];
}
else
{
// Check if a custom language directory exists for this theme
if(is_dir($img_directory.'/'.$mybb->settings['bblanguage']))
{
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->settings['bblanguage'];
}
// Otherwise, the image language directory is the same as the language directory for the theme
else
{
$theme['imglangdir'] = $theme['imgdir'];
}
}

$theme['imgdir'] = $mybb->get_asset_url($theme['imgdir']);
$theme['imglangdir'] = $mybb->get_asset_url($theme['imglangdir']);
}

		}
}
}
else
{
$img_directory = $theme['imgdir'];

if($mybb->settings['usecdn'] && !empty($mybb->settings['cdnpath']))
{
$img_directory = rtrim($mybb->settings['cdnpath'], '/') . '/' . ltrim($theme['imgdir'], '/');
}

if(!@is_dir($img_directory))
{
$theme['imgdir'] = 'images';
}

// If a language directory for the current language exists within the theme - we use it
if(!empty($mybb->user['language']) && is_dir($img_directory.'/'.$mybb->user['language']))
{
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->user['language'];
}
else
{
// Check if a custom language directory exists for this theme
if(is_dir($img_directory.'/'.$mybb->settings['bblanguage']))
{
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->settings['bblanguage'];
}
// Otherwise, the image language directory is the same as the language directory for the theme
else
{
$theme['imglangdir'] = $theme['imgdir'];
}
}

$theme['imgdir'] = $mybb->get_asset_url($theme['imgdir']);
$theme['imglangdir'] = $mybb->get_asset_url($theme['imglangdir']);
}


// Theme logo - is it a relative URL to the forum root? Append bburl
if(!preg_match("#^(\.\.?(/|$)|([a-z0-9]+)://)#i", $theme['logo']) && substr($theme['logo'], 0, 1) != '/')


// Theme logo - is it a relative URL to the forum root? Append bburl
if(!preg_match("#^(\.\.?(/|$)|([a-z0-9]+)://)#i", $theme['logo']) && substr($theme['logo'], 0, 1) != '/')

{

{

	$theme['logo'] = $mybb->get_asset_url($theme['logo']);
}


	$theme['logo'] = $mybb->get_asset_url($theme['logo']);
}


Zeile 406Zeile 463
if(isset($templatelist))
{
$templatelist .= ',';

if(isset($templatelist))
{
$templatelist .= ',';

}
else
{

}
else
{

	$templatelist = '';
}


	$templatelist = '';
}


$templatelist .= "headerinclude,header,footer,gobutton,htmldoctype,header_welcomeblock_member,header_welcomeblock_guest,header_welcomeblock_member_admin,global_pm_alert,global_unreadreports,error,footer_languageselect_option,footer_contactus";
$templatelist .= ",global_pending_joinrequests,global_awaiting_activation,nav,nav_sep,nav_bit,nav_sep_active,nav_bit_active,footer_languageselect,footer_themeselect,header_welcomeblock_member_moderator,redirect,header_menu_calendar,nav_dropdown,footer_themeselector,task_image";
$templatelist .= ",global_boardclosed_warning,global_bannedwarning,error_inline,error_nopermission_loggedin,error_nopermission,debug_summary,header_quicksearch,header_menu_search,header_menu_portal,header_menu_memberlist,usercp_themeselector_option,smilie";






$templatelist .= "headerinclude,header,footer,gobutton,htmldoctype,header_welcomeblock_member,header_welcomeblock_member_user,header_welcomeblock_member_moderator,header_welcomeblock_member_admin,error";
$templatelist .= ",global_pending_joinrequests,global_awaiting_activation,nav,nav_sep,nav_bit,nav_sep_active,nav_bit_active,footer_languageselect,footer_themeselect,global_unreadreports,footer_contactus";
$templatelist .= ",global_boardclosed_warning,global_bannedwarning,error_inline,error_inline_item,error_nopermission_loggedin,error_nopermission,global_pm_alert,header_menu_search,header_menu_portal,redirect,footer_languageselect_option";
$templatelist .= ",video_dailymotion_embed,video_facebook_embed,video_liveleak_embed,video_metacafe_embed,video_myspacetv_embed,video_mixer_embed,video_vimeo_embed,video_yahoo_embed,video_youtube_embed,debug_summary";
$templatelist .= ",smilieinsert_row,smilieinsert_row_empty,smilieinsert,smilieinsert_getmore,smilieinsert_smilie,global_board_offline_modal,footer_showteamlink,footer_themeselector,task_image,usercp_themeselector_option,php_warnings";
$templatelist .= ",mycode_code,mycode_email,mycode_img,mycode_php,mycode_quote_post,mycode_size_int,mycode_url,global_no_permission_modal,global_boardclosed_reason,nav_dropdown,global_remote_avatar_notice,global_modqueue,global_modqueue_notice";
$templatelist .= ",header_welcomeblock_member_buddy,header_welcomeblock_member_pms,header_welcomeblock_member_search,header_welcomeblock_guest,header_welcomeblock_guest_login_modal,header_welcomeblock_guest_login_modal_lockout";
$templatelist .= ",header_menu_calendar,header_menu_memberlist,global_dst_detection,header_quicksearch,smilie,modal,modal_button";

$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 443Zeile 505
}

// Prepare the main templates for use

}

// Prepare the main templates for use

$admincplink = $modcplink = '';

$admincplink = $modcplink = $usercplink = '';


// Load appropriate welcome block for the current logged in user
if($mybb->user['uid'] != 0)


// Load appropriate welcome block for the current logged in user
if($mybb->user['uid'] != 0)

Zeile 453Zeile 515
	{
$admin_dir = $config['admin_dir'];
eval('$admincplink = "'.$templates->get('header_welcomeblock_member_admin').'";');

	{
$admin_dir = $config['admin_dir'];
eval('$admincplink = "'.$templates->get('header_welcomeblock_member_admin').'";');

	}

	}


if($mybb->usergroup['canmodcp'] == 1)
{
eval('$modcplink = "'.$templates->get('header_welcomeblock_member_moderator').'";');
}



if($mybb->usergroup['canmodcp'] == 1)
{
eval('$modcplink = "'.$templates->get('header_welcomeblock_member_moderator').'";');
}


	// Format the welcome back message
$lang->welcome_back = $lang->sprintf($lang->welcome_back, build_profile_link($mybb->user['username'], $mybb->user['uid']), $lastvisit);

// Tell the user their PM usage
$lang->welcome_pms_usage = $lang->sprintf($lang->welcome_pms_usage, my_number_format($mybb->user['pms_unread']), my_number_format($mybb->user['pms_total']));
























	if($mybb->usergroup['canusercp'] == 1)
{
eval('$usercplink = "'.$templates->get('header_welcomeblock_member_user').'";');
}

// Format the welcome back message
$lang->welcome_back = $lang->sprintf($lang->welcome_back, build_profile_link(htmlspecialchars_uni($mybb->user['username']), $mybb->user['uid']), $lastvisit);

$buddylink = $searchlink = $pmslink = '';

if(!empty($mybb->user['buddylist']))
{
eval('$buddylink = "' . $templates->get('header_welcomeblock_member_buddy') . '";');
}

if($mybb->usergroup['cansearch'] == 1)
{
eval('$searchlink = "'.$templates->get('header_welcomeblock_member_search').'";');
}

// Tell the user their PM usage
if($mybb->settings['enablepms'] != 0 && $mybb->usergroup['canusepms'] == 1)
{
$lang->welcome_pms_usage = $lang->sprintf($lang->welcome_pms_usage, my_number_format($mybb->user['pms_unread']), my_number_format($mybb->user['pms_total']));

eval('$pmslink = "'.$templates->get('header_welcomeblock_member_pms').'";');
}


	eval('$welcomeblock = "'.$templates->get('header_welcomeblock_member').'";');
}
// Otherwise, we have a guest
else

	eval('$welcomeblock = "'.$templates->get('header_welcomeblock_member').'";');
}
// Otherwise, we have a guest
else

{

{

	switch($mybb->settings['username_method'])
{
case 0:

	switch($mybb->settings['username_method'])
{
case 0:

Zeile 485Zeile 570
			$login_username = $lang->login_username;
break;
}

			$login_username = $lang->login_username;
break;
}

 

if(!empty($mybb->cookies['lockoutexpiry']))
{
$secsleft = (int)($mybb->cookies['lockoutexpiry'] - TIME_NOW);
$hoursleft = floor($secsleft / 3600);
$minsleft = floor(($secsleft / 60) % 60);
$secsleft = floor($secsleft % 60);

$lang->failed_login_wait = $lang->sprintf($lang->failed_login_wait, $hoursleft, $minsleft, $secsleft);

eval('$loginform = "'.$templates->get('header_welcomeblock_guest_login_modal_lockout').'";');
}
else
{
eval('$loginform = "'.$templates->get('header_welcomeblock_guest_login_modal').'";');
}


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

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

}

}


// Display menu links and quick search if user has permission
$menu_search = $menu_memberlist = $menu_portal = $menu_calendar = $quicksearch = '';


// Display menu links and quick search if user has permission
$menu_search = $menu_memberlist = $menu_portal = $menu_calendar = $quicksearch = '';

Zeile 497Zeile 599
}

if($mybb->settings['enablememberlist'] == 1 && $mybb->usergroup['canviewmemberlist'] == 1)

}

if($mybb->settings['enablememberlist'] == 1 && $mybb->usergroup['canviewmemberlist'] == 1)

{

{

	eval('$menu_memberlist = "'.$templates->get('header_menu_memberlist').'";');

	eval('$menu_memberlist = "'.$templates->get('header_menu_memberlist').'";');

}

}


if($mybb->settings['enablecalendar'] == 1 && $mybb->usergroup['canviewcalendar'] == 1)


if($mybb->settings['enablecalendar'] == 1 && $mybb->usergroup['canviewcalendar'] == 1)

{

{

	eval('$menu_calendar = "'.$templates->get('header_menu_calendar').'";');

	eval('$menu_calendar = "'.$templates->get('header_menu_calendar').'";');

}


}


if($mybb->settings['portal'] == 1)
{
eval('$menu_portal = "'.$templates->get('header_menu_portal').'";');

if($mybb->settings['portal'] == 1)
{
eval('$menu_portal = "'.$templates->get('header_menu_portal').'";');

}


}


// See if there are any pending join requests for group leaders
$pending_joinrequests = '';
$groupleaders = $cache->read('groupleaders');
if($mybb->user['uid'] != 0 && is_array($groupleaders) && array_key_exists($mybb->user['uid'], $groupleaders))
{
$groupleader = $groupleaders[$mybb->user['uid']];

// See if there are any pending join requests for group leaders
$pending_joinrequests = '';
$groupleaders = $cache->read('groupleaders');
if($mybb->user['uid'] != 0 && is_array($groupleaders) && array_key_exists($mybb->user['uid'], $groupleaders))
{
$groupleader = $groupleaders[$mybb->user['uid']];

 
	$showjoinnotice = false;


$gids = "'0'";
foreach($groupleader as $user)


$gids = "'0'";
foreach($groupleader as $user)

Zeile 526Zeile 629
			continue;
}


			continue;
}


		$user['gid'] = (int)$user['gid'];
$gids .= ",'{$user['gid']}'";
}

$query = $db->simple_select('joinrequests', 'COUNT(uid) as total', "gid IN ({$gids}) AND invite='0'");
$total_joinrequests = $db->fetch_field($query, 'total');

if($total_joinrequests > 0)
{
if($total_joinrequests == 1)
{
$lang->pending_joinrequests = $lang->pending_joinrequest;
}
else
{
$total_joinrequests = my_number_format($total_joinrequests);
$lang->pending_joinrequests = $lang->sprintf($lang->pending_joinrequests, $total_joinrequests);
}

eval('$pending_joinrequests = "'.$templates->get('global_pending_joinrequests').'";');
}








		$user['gid'] = (int)$user['gid'];

if(!empty($groupscache[$user['gid']]['type']) && $groupscache[$user['gid']]['type'] == 4)
{
$showjoinnotice = true;
$gids .= ",'{$user['gid']}'";
}
}

if($showjoinnotice)
{
$query = $db->simple_select('joinrequests', 'COUNT(uid) as total', "gid IN ({$gids}) AND invite='0'");
$total_joinrequests = $db->fetch_field($query, 'total');

if($total_joinrequests > 0)
{
if($total_joinrequests == 1)
{
$lang->pending_joinrequests = $lang->pending_joinrequest;
}
else
{
$lang->pending_joinrequests = $lang->sprintf($lang->pending_joinrequests, my_number_format($total_joinrequests));
}

eval('$pending_joinrequests = "'.$templates->get('global_pending_joinrequests').'";');
}
}

}


}


$unreadreports = '';




$modnotice = '';
$moderation_queue = array();
$can_access_moderationqueue = false;


// This user is a moderator, super moderator or administrator
if($mybb->usergroup['cancp'] == 1 || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))
{

// This user is a moderator, super moderator or administrator
if($mybb->usergroup['cancp'] == 1 || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))
{

Zeile 558Zeile 671
	{
// First we check if the user's a super admin: if yes, we don't care about permissions
$can_access_moderationqueue = true;

	{
// 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']);

		$is_super_admin = is_super_admin($mybb->user['uid']);

		if(!$is_super_admin)
{
// Include admin functions

		if(!$is_super_admin)
{
// Include admin functions

Zeile 575Zeile 688
			{
// Get admin permissions
$adminperms = get_admin_permissions($mybb->user['uid']);

			{
// 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)
{

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

Zeile 583Zeile 696
				}
}
}

				}
}
}

	}

	}

	else
{
$can_access_moderationqueue = false;

	else
{
$can_access_moderationqueue = false;

	}

if($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))

	}

if($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))

	{
// Read the reported content cache
$reported = $cache->read('reportedcontent');

	{
// Read the reported content cache
$reported = $cache->read('reportedcontent');

Zeile 601Zeile 714
			if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])
{
$unread = (int)$reported['unread'];

			if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])
{
$unread = (int)$reported['unread'];

			}
else
{

			}
else
{

				$unread = 0;
$query = $db->simple_select('reportedcontent', 'id3', "reportstatus='0' AND (type = 'post' OR type = '')");


				$unread = 0;
$query = $db->simple_select('reportedcontent', 'id3', "reportstatus='0' AND (type = 'post' OR type = '')");


Zeile 627Zeile 740
					$lang->unread_reports = $lang->sprintf($lang->unread_reports, my_number_format($unread));
}


					$lang->unread_reports = $lang->sprintf($lang->unread_reports, my_number_format($unread));
}


				eval('$unreadreports = "'.$templates->get('global_unreadreports').'";');

				eval('$moderation_queue[] = "'.$templates->get('global_unreadreports', 1, 0).'";');

			}
}
}

			}
}
}

 
}

// Get awaiting moderation queue stats, except if the page is editpost.php,
// because that page can make changes - (un)approving attachments, or deleting
// unapproved attachments - that would invalidate anything generated here.
// Just leave this queue notification blank for editpost.php.
if(!(defined('THIS_SCRIPT') && THIS_SCRIPT == 'editpost.php') && ($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagemodqueue'] == 1)))
{
$unapproved_posts = $unapproved_threads = 0;
$query = $db->simple_select("posts", "replyto", "visible = 0");
while($unapproved = $db->fetch_array($query))
{
if($unapproved["replyto"] == 0){
$unapproved_threads++;
} else {
$unapproved_posts++;
}
}

$query = $db->simple_select("attachments", "COUNT(aid) AS unapprovedattachments", "visible=0");
$unapproved_attachments = $db->fetch_field($query, "unapprovedattachments");

$modqueue_types = array('threads', 'posts', 'attachments');

foreach($modqueue_types as $modqueue_type)
{
if(!empty(${'unapproved_'.$modqueue_type}))
{
if(${'unapproved_'.$modqueue_type} == 1)
{
$modqueue_message = $lang->{'unapproved_'.substr($modqueue_type, 0, -1)};
}
else
{
$modqueue_message = $lang->sprintf($lang->{'unapproved_'.$modqueue_type}, my_number_format(${'unapproved_'.$modqueue_type}));
}

eval('$moderation_queue[] = "'.$templates->get('global_modqueue', 1, 0).'";');
}
}
}

if(!empty($moderation_queue))
{
$moderation_queue_last = array_pop($moderation_queue);
if(empty($moderation_queue))
{
$moderation_queue = $moderation_queue_last;
}
else
{
$moderation_queue = implode($lang->comma, $moderation_queue).' '.$lang->and.' '.$moderation_queue_last;
}
$moderation_queue = $lang->sprintf($lang->mod_notice, $moderation_queue);

eval('$modnotice = "'.$templates->get('global_modqueue_notice').'";');

}

// Got a character set?

}

// Got a character set?

Zeile 644Zeile 813
$bannedwarning = '';
if($mybb->usergroup['isbannedgroup'] == 1)
{

$bannedwarning = '';
if($mybb->usergroup['isbannedgroup'] == 1)
{

	// Fetch details on their ban
$query = $db->simple_select('banned', '*', "uid = '{$mybb->user['uid']}'", array('limit' => 1));
$ban = $db->fetch_array($query);

if($ban['uid'])
{
// Format their ban lift date and reason appropriately
$banlift = $lang->banned_lifted_never;
$reason = htmlspecialchars_uni($ban['reason']);

if($ban['lifted'] > 0)
{
$banlift = my_date($mybb->settings['dateformat'], $ban['lifted']) . $lang->comma . my_date($mybb->settings['timeformat'], $ban['lifted']);
}
}

if(empty($reason))
{
$reason = $lang->unknown;
}

if(empty($banlift))
{
$banlift = $lang->unknown;

	// Format their ban lift date and reason appropriately
if(!empty($mybb->user['banned']))
{
if(!empty($mybb->user['banlifted']))
{
$banlift = my_date('normal', $mybb->user['banlifted']);
}
else
{
$banlift = $lang->banned_lifted_never;
}
}
else
{
$banlift = $lang->unknown;
}

if(!empty($mybb->user['banreason']))
{
$reason = htmlspecialchars_uni($mybb->user['banreason']);
}
else
{
$reason = $lang->unknown;

	}

// Display a nice warning to the user

	}

// Display a nice warning to the user

Zeile 705Zeile 874
	}
else
{

	}
else
{

 
		$pm['fromusername'] = htmlspecialchars_uni($pm['fromusername']);

		$user_text = build_profile_link($pm['fromusername'], $pm['fromuid']);
}


		$user_text = build_profile_link($pm['fromusername'], $pm['fromuid']);
}


Zeile 719Zeile 889
	eval('$pm_notice = "'.$templates->get('global_pm_alert').'";');
}


	eval('$pm_notice = "'.$templates->get('global_pm_alert').'";');
}


if($mybb->usergroup['cancp'] == 1)








$remote_avatar_notice = '';
if(isset($mybb->user['avatartype']) && ($mybb->user['avatartype'] === 'remote' || $mybb->user['avatartype'] === 'gravatar') && !$mybb->settings['allowremoteavatars'])
{
eval('$remote_avatar_notice = "'.$templates->get('global_remote_avatar_notice').'";');
}

$awaitingusers = '';
if($mybb->settings['awactialert'] == 1 && $mybb->usergroup['cancp'] == 1)

{
$awaitingusers = $cache->read('awaitingactivation');

{
$awaitingusers = $cache->read('awaitingactivation');


if(!empty($awaitingusers['users']))
{
$awaitingusers = (int)$awaitingusers['users'];
}
else


if(isset($awaitingusers['time']) && $awaitingusers['time'] + 86400 < TIME_NOW)





	{

	{

		$awaitingusers = 0;











		$cache->update_awaitingactivation();
$awaitingusers = $cache->read('awaitingactivation');
}

if(!empty($awaitingusers['users']))
{
$awaitingusers = (int)$awaitingusers['users'];
}
else
{
$awaitingusers = 0;

	}

if($awaitingusers < 1)

	}

if($awaitingusers < 1)

	{

	{

		$awaitingusers = 0;

		$awaitingusers = 0;

	}

	}

	else
{
$awaitingusers = my_number_format($awaitingusers);
}

	else
{
$awaitingusers = my_number_format($awaitingusers);
}

	



	if($awaitingusers > 0)
{
if($awaitingusers == 1)

	if($awaitingusers > 0)
{
if($awaitingusers == 1)

Zeile 751Zeile 934
		{
$awaiting_message = $lang->sprintf($lang->awaiting_message_plural, $awaitingusers);
}

		{
$awaiting_message = $lang->sprintf($lang->awaiting_message_plural, $awaitingusers);
}

 

if($admincplink)
{
$awaiting_message .= $lang->sprintf($lang->awaiting_message_link, $mybb->settings['bburl'], $admin_dir);
}


		eval('$awaitingusers = "'.$templates->get('global_awaiting_activation').'";');
}
else
{
$awaitingusers = '';

		eval('$awaitingusers = "'.$templates->get('global_awaiting_activation').'";');
}
else
{
$awaitingusers = '';

	}
}







	}
}

$jsTemplates = array();
foreach (array('modal', 'modal_button') as $template) {
eval('$jsTemplates["'.$template.'"] = "'.$templates->get($template, 1, 0).'";');
$jsTemplates[$template] = str_replace(array("\n","\r"), array("\\\n", ""), addslashes($jsTemplates[$template]));
}


// Set up some of the default templates
eval('$headerinclude = "'.$templates->get('headerinclude').'";');


// Set up some of the default templates
eval('$headerinclude = "'.$templates->get('headerinclude').'";');

Zeile 785Zeile 980
if($task_cache['nextrun'] <= TIME_NOW)
{
eval("\$task_image = \"".$templates->get("task_image")."\";");

if($task_cache['nextrun'] <= TIME_NOW)
{
eval("\$task_image = \"".$templates->get("task_image")."\";");

}








}

// Post code
$post_code_string = '';
if($mybb->user['uid'])
{
$post_code_string = '&amp;my_post_key='.$mybb->post_code;
}


// Are we showing the quick language selection box?
$lang_select = $lang_options = '';


// Are we showing the quick language selection box?
$lang_select = $lang_options = '';

Zeile 821Zeile 1023
$theme_select = $theme_options = '';
if($mybb->settings['showthemeselect'] != 0)
{

$theme_select = $theme_options = '';
if($mybb->settings['showthemeselect'] != 0)
{

	$theme_options = build_theme_select("theme", $mybb->user['style'], 0, '', false, true);










	if(isset($mybb->user['style']))
{
$selected = $mybb->user['style'];
}
else
{
$selected = -1;
}

$theme_options = build_theme_select("theme", $selected, 0, '', false, true);


if(!empty($theme_options))
{
$theme_redirect_url = get_current_location(true, 'theme');
eval('$theme_select = "'.$templates->get('footer_themeselect').'";');


if(!empty($theme_options))
{
$theme_redirect_url = get_current_location(true, 'theme');
eval('$theme_select = "'.$templates->get('footer_themeselect').'";');

	}







	}
}

$showteamlink = '';
if($mybb->settings['enableshowteam'] != 0)
{
eval('$showteamlink = "'.$templates->get('footer_showteamlink').'";');

}

// If we use the contact form, show 'Contact Us' link when appropriate
$contact_us = '';
if(($mybb->settings['contactlink'] == "contact.php" && $mybb->settings['contact'] == 1 && ($mybb->settings['contact_guests'] != 1 && $mybb->user['uid'] == 0 || $mybb->user['uid'] > 0)) || $mybb->settings['contactlink'] != "contact.php")
{

}

// If we use the contact form, show 'Contact Us' link when appropriate
$contact_us = '';
if(($mybb->settings['contactlink'] == "contact.php" && $mybb->settings['contact'] == 1 && ($mybb->settings['contact_guests'] != 1 && $mybb->user['uid'] == 0 || $mybb->user['uid'] > 0)) || $mybb->settings['contactlink'] != "contact.php")
{

	if(my_substr($mybb->settings['contactlink'], 0, 1) != '/' && my_substr($mybb->settings['contactlink'], 0, 7) != 'http://' && my_substr($mybb->settings['contactlink'], 0, 8) != 'https://' && my_substr($mybb->settings['contactlink'], 0, 7) != 'mailto:')

	if(!my_validate_url($mybb->settings['contactlink'], true) && my_substr($mybb->settings['contactlink'], 0, 7) != 'mailto:')

	{
$mybb->settings['contactlink'] = $mybb->settings['bburl'].'/'.$mybb->settings['contactlink'];
}

	{
$mybb->settings['contactlink'] = $mybb->settings['bburl'].'/'.$mybb->settings['contactlink'];
}

Zeile 846Zeile 1063
$auto_dst_detection = '';
if($mybb->user['uid'] > 0 && $mybb->user['dstcorrection'] == 2)
{

$auto_dst_detection = '';
if($mybb->user['uid'] > 0 && $mybb->user['dstcorrection'] == 2)
{

	$auto_dst_detection = "<script type=\"text/javascript\">if(MyBB) { $([document, window]).bind(\"load\", function() { MyBB.detectDSTChange('".($mybb->user['timezone']+$mybb->user['dst'])."'); }); }</script>\n";


	$timezone = (float)$mybb->user['timezone'] + $mybb->user['dst'];
eval('$auto_dst_detection = "'.$templates->get('global_dst_detection').'";');

}

}

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



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


// Add our main parts to the navigation
$navbits = array();


// Add our main parts to the navigation
$navbits = array();

Zeile 857Zeile 1076

// Set the link to the archive.
$archive_url = build_archive_link();


// Set the link to the archive.
$archive_url = build_archive_link();





// Check banned ip addresses
if(is_banned_ip($session->ipaddress, true))
{
if($mybb->user['uid'])

// Check banned ip addresses
if(is_banned_ip($session->ipaddress, true))
{
if($mybb->user['uid'])

    {

	{

		$db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip)." OR uid='{$mybb->user['uid']}'");

		$db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip)." OR uid='{$mybb->user['uid']}'");

    }
else
{

	}
else
{

		$db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip));

		$db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip));

    }

	}

	error($lang->error_banned);
}

$closed_bypass = array(

	error($lang->error_banned);
}

$closed_bypass = array(

	'member.php' => array(
'login',
'do_login',

	'member.php' => array(
'login',
'do_login',

		'logout',
),
'captcha.php',

		'logout',
),
'captcha.php',

 
	'contact.php',

);

);





// If the board is closed, the user is not an administrator and they're not trying to login, show the board closed message
if($mybb->settings['boardclosed'] == 1 && $mybb->usergroup['canviewboardclosed'] != 1 && !in_array($current_page, $closed_bypass) && (!is_array($closed_bypass[$current_page]) || !in_array($mybb->get_input('action'), $closed_bypass[$current_page])))
{
// Show error

// If the board is closed, the user is not an administrator and they're not trying to login, show the board closed message
if($mybb->settings['boardclosed'] == 1 && $mybb->usergroup['canviewboardclosed'] != 1 && !in_array($current_page, $closed_bypass) && (!is_array($closed_bypass[$current_page]) || !in_array($mybb->get_input('action'), $closed_bypass[$current_page])))
{
// Show error

	$lang->error_boardclosed .= "<blockquote>{$mybb->settings['boardclosed_reason']}</blockquote>";
error($lang->error_boardclosed);

















	if(!$mybb->settings['boardclosed_reason'])
{
$mybb->settings['boardclosed_reason'] = $lang->boardclosed_reason;
}

eval('$reason = "'.$templates->get('global_boardclosed_reason').'";');
$lang->error_boardclosed .= $reason;

if(!$mybb->get_input('modal'))
{
error($lang->error_boardclosed);
}
else
{
$output = '';
eval('$output = "'.$templates->get('global_board_offline_modal', 1, 0).'";');
echo($output);
}

	exit;
}


	exit;
}


Zeile 905Zeile 1141
		'resetpassword',
),
'captcha.php',

		'resetpassword',
),
'captcha.php',

 
	'contact.php',

);

// If the board forces user to login/register, and the user is a guest, show the force login message

);

// If the board forces user to login/register, and the user is a guest, show the force login message

Zeile 928Zeile 1165
	if(isset($mybb->input['referrername']))
{
$condition = "username = '".$db->escape_string($mybb->get_input('referrername'))."'";

	if(isset($mybb->input['referrername']))
{
$condition = "username = '".$db->escape_string($mybb->get_input('referrername'))."'";

	}
else
{
$condition = "uid = '".$mybb->get_input('referrer', 1)."'";
}


	}
else
{
$condition = "uid = '".$mybb->get_input('referrer', MyBB::INPUT_INT)."'";
}


	$query = $db->simple_select('users', 'uid', $condition, array('limit' => 1));
$referrer = $db->fetch_array($query);


	$query = $db->simple_select('users', 'uid', $condition, array('limit' => 1));
$referrer = $db->fetch_array($query);


	if($referrer['uid'])

	if(!empty($referrer) && $referrer['uid'])

	{
my_setcookie('mybb[referrer]', $referrer['uid']);
}
}


	{
my_setcookie('mybb[referrer]', $referrer['uid']);
}
}


 
$output = '';
$notallowed = false;

if($mybb->usergroup['canview'] != 1)
{
// Check pages allowable even when not allowed to view board

if($mybb->usergroup['canview'] != 1)
{
// Check pages allowable even when not allowed to view board

Zeile 953Zeile 1192
			$allowable_actions = explode(',', ALLOWABLE_PAGE);
if(!in_array($mybb->get_input('action'), $allowable_actions))
{

			$allowable_actions = explode(',', ALLOWABLE_PAGE);
if(!in_array($mybb->get_input('action'), $allowable_actions))
{

				error_no_permission();

				$notallowed = true;

			}

unset($allowable_actions);
}
else if(ALLOWABLE_PAGE !== 1)

			}

unset($allowable_actions);
}
else if(ALLOWABLE_PAGE !== 1)

 
		{
$notallowed = true;
}
}
else
{
$notallowed = true;
}

if($notallowed == true)
{
if(!$mybb->get_input('modal'))

		{
error_no_permission();
}

		{
error_no_permission();
}

	}
else
{
error_no_permission();



		else
{
eval('$output = "'.$templates->get('global_no_permission_modal', 1, 0).'";');
echo($output);
exit;
}

	}
}


	}
}


Zeile 973Zeile 1226
// If they are, redirect them to change it
if($mybb->user['uid'] && is_banned_email($mybb->user['email']) && $mybb->settings['emailkeep'] != 1)
{

// If they are, redirect them to change it
if($mybb->user['uid'] && is_banned_email($mybb->user['email']) && $mybb->settings['emailkeep'] != 1)
{

	if(THIS_SCRIPT != 'usercp.php' || THIS_SCRIPT == 'usercp.php' && $mybb->get_input('action') != 'email' && $mybb->get_input('action') != 'do_email')




	if(
!(THIS_SCRIPT == 'usercp.php' && in_array($mybb->get_input('action'), array('email', 'do_email'))) &&
!(THIS_SCRIPT == 'member.php' && $mybb->get_input('action') == 'activate')
)

	{
redirect('usercp.php?action=email');
}

	{
redirect('usercp.php?action=email');
}

Zeile 984Zeile 1240
}

// work out which items the user has collapsed

}

// work out which items the user has collapsed

$colcookie = '';


$collapse = $collapsed = $collapsedimg = $collapsedthead = array();


if(!empty($mybb->cookies['collapsed']))

if(!empty($mybb->cookies['collapsed']))

{

{

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

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

}

// 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(!is_array($col))
{
$col[0] = $colcookie; // only one item
}
unset($collapsed);
foreach($col as $key => $val)

	// Preserve and don't unset $collapse, will be needed globally throughout many pages
$collapse = explode("|", $colcookie);
foreach($collapse as $val)







	{

	{

		$ex = $val."_e";
$co = $val."_c";
$collapsed[$co] = "display: show;";
$collapsed[$ex] = "display: none;";

		$collapsed[$val."_e"] = "display: none;";




		$collapsedimg[$val] = "_collapsed";
$collapsedthead[$val] = " thead_collapsed";
}

		$collapsedimg[$val] = "_collapsed";
$collapsedthead[$val] = " thead_collapsed";
}