Zeile 6 | Zeile 6 |
---|
* Website: http://mybb.com * License: http://mybb.com/about/license *
|
* Website: http://mybb.com * License: http://mybb.com/about/license *
|
* $Id: global.php 5016 2010-06-12 00:24:02Z RyanGordon $
| * $Id$
|
*/
$working_dir = dirname(__FILE__);
| */
$working_dir = dirname(__FILE__);
|
Zeile 61 | Zeile 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']))
| 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 if($mybb->user['uid']) {
|
{ $mybb->settings['bblanguage'] = $mybb->input['language']; // If user is logged in, update their language selection with the new one if($mybb->user['uid']) {
|
| if($mybb->cookies['mybblang']) { my_unsetcookie("mybblang"); }
|
$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 { my_setcookie("mybblang", $mybb->settings['bblanguage']); } $mybb->user['language'] = $mybb->settings['bblanguage'];
|
// Guest = cookie else { my_setcookie("mybblang", $mybb->settings['bblanguage']); } $mybb->user['language'] = $mybb->settings['bblanguage'];
|
}
| }
|
// Cookied language!
|
// Cookied language!
|
else if($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']; } 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");
|
| $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");
|
|
|
if(function_exists('mb_internal_encoding') && !empty($lang->settings['charset'])) { @mb_internal_encoding($lang->settings['charset']);
| if(function_exists('mb_internal_encoding') && !empty($lang->settings['charset'])) { @mb_internal_encoding($lang->settings['charset']);
|
Zeile 125 | Zeile 131 |
---|
if(in_array($current_page, $valid)) {
|
if(in_array($current_page, $valid)) {
|
| cache_forums();
|
// If we're accessing a post, fetch the forum theme for it and if we're overriding it
|
// If we're accessing a post, fetch the forum theme for it and if we're overriding it
|
if($mybb->input['pid']) { $query = $db->query(" SELECT f.style, f.overridestyle, p.* FROM ".TABLE_PREFIX."forums f LEFT JOIN ".TABLE_PREFIX."posts p ON(f.fid=p.fid) WHERE p.pid='".intval($mybb->input['pid'])."' LIMIT 1 "); $style = $db->fetch_array($query); $load_from_forum = 1; }
| 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");
if($fid) { $style = $forum_cache[$fid]; $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->query(" SELECT f.style, f.overridestyle, t.* FROM ".TABLE_PREFIX."forums f LEFT JOIN ".TABLE_PREFIX."threads t ON (f.fid=t.fid) WHERE t.tid='".intval($mybb->input['tid'])."' LIMIT 1 "); $style = $db->fetch_array($query); $load_from_forum = 1;
| $query = $db->simple_select("threads", "fid", "tid = '".intval($mybb->input['tid'])."'", array("limit" => 1)); $fid = $db->fetch_field($query, "fid");
if($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(!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']) {
|
cache_forums();
| |
$style = $forum_cache[intval($mybb->input['fid'])]; $load_from_forum = 1; }
| $style = $forum_cache[intval($mybb->input['fid'])]; $load_from_forum = 1; }
|
Zeile 204 | Zeile 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 221 | Zeile 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; } $stylesheets .= "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$mybb->settings['bburl']}/{$page_stylesheet}\" />\n";
| continue; } $stylesheets .= "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$mybb->settings['bburl']}/{$page_stylesheet}\" />\n";
|
Zeile 238 | Zeile 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 297 | Zeile 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 334 | Zeile 350 |
---|
// User can access the admin cp and we're not hiding admin cp links, fetch it if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) {
|
// User can access the admin cp and we're not hiding admin cp links, fetch it if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) {
|
| $admin_dir = $config['admin_dir'];
|
eval("\$admincplink = \"".$templates->get("header_welcomeblock_member_admin")."\";"); }
| eval("\$admincplink = \"".$templates->get("header_welcomeblock_member_admin")."\";"); }
|
Zeile 343 | Zeile 360 |
---|
} // Format the welcome back message
|
} // Format the welcome back message
|
$lang->welcome_back = $lang->sprintf($lang->welcome_back, $mybb->user['username'], $lastvisit);
| $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']));
| // 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']));
|
Zeile 352 | Zeile 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")."\";"); }
|
Zeile 367 | Zeile 399 |
---|
foreach($groupleader as $user) { if($user['canmanagerequests'] != 1)
|
foreach($groupleader as $user) { if($user['canmanagerequests'] != 1)
|
{
| {
|
continue; } $gids .= ",{$user['gid']}";
|
continue; } $gids .= ",{$user['gid']}";
|
}
| }
|
$query = $db->simple_select("joinrequests", "COUNT(uid) as total", "gid IN (0{$gids})"); $total_joinrequests = $db->fetch_field($query, "total");
|
$query = $db->simple_select("joinrequests", "COUNT(uid) as total", "gid IN (0{$gids})"); $total_joinrequests = $db->fetch_field($query, "total");
|
|
|
$pending_joinrequests = ""; if($total_joinrequests > 0) {
| $pending_joinrequests = ""; if($total_joinrequests > 0) {
|
Zeile 394 | Zeile 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'])
| if($mybb->usergroup['cancp'] == 1 || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp']))
|
{
|
{
|
// Read the reported posts cache $reported = $cache->read("reportedposts");
| // 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']);
|
|
|
// 0 or more reported posts currently exist if($reported['unread'] > 0)
| $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']))
|
{
|
{
|
if($reported['unread'] == 1)
| // Read the reported posts cache $reported = $cache->read("reportedposts");
// 0 or more reported posts currently exist if($reported['unread'] > 0)
|
{
|
{
|
$lang->unread_reports = $lang->unread_report; } else { $lang->unread_reports = $lang->sprintf($lang->unread_reports, $reported['unread']);
| 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")."\";");
|
}
|
}
|
eval("\$unreadreports = \"".$templates->get("global_unreadreports")."\";");
| |
} }
| } }
|
Zeile 460 | Zeile 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 470 | Zeile 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 527 | Zeile 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 551 | Zeile 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";
|
Zeile 648 | Zeile 729 |
---|
else { error_no_permission();
|
else { error_no_permission();
|
| } }
// Find out if this user of ours is using a banned email address. // 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->input['action'] != "email" && $mybb->input['action'] != "do_email") { redirect("usercp.php?action=email"); } else if($mybb->request_method != "post") { $banned_email_error = inline_error(array($lang->banned_email_warning));
|
} }
// 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);
|