Zeile 13 | Zeile 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 = $shutdown_functions = 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 27 | Zeile 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));
|
Zeile 54 | Zeile 49 |
---|
$session->init(); $mybb->session = &$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 69 | Zeile 64 |
---|
if(isset($mybb->cookies['mybblang'])) { my_unsetcookie('mybblang');
|
if(isset($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']}'"); }
|
Zeile 82 | Zeile 77 |
---|
} // 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'];
|
$mybb->settings['bblanguage'] = $mybb->cookies['mybblang'];
|
}
| }
|
else if(!isset($mybb->settings['bblanguage'])) { $mybb->settings['bblanguage'] = 'english';
|
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 111 | Zeile 112 |
---|
// 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'])
| // 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())
|
{
|
{
|
if(isset($mybb->cookies['mybbtheme']))
| $mybb->user['style'] = $user['style'];
// If user is logged in, update their theme selection with the new one if($mybb->user['uid']) { if(isset($mybb->cookies['mybbtheme'])) { my_unsetcookie('mybbtheme'); }
$userhandler->update_user(); } // Guest = cookie else
|
{
|
{
|
my_unsetcookie('mybbtheme');
| 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!
| } } // Cookied theme!
|
Zeile 164 | Zeile 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 176 | Zeile 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)
| 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 187 | Zeile 204 |
---|
// 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") {
|
// 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;
|
Zeile 224 | Zeile 240 |
---|
}
// 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($theme && !$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 if(!isset($theme['tid']) || isset($theme['tid']) && !$theme['tid'])
|
}
// No theme was found - we attempt to load the master or any other theme if(!isset($theme['tid']) || isset($theme['tid']) && !$theme['tid'])
|
{
| {
|
// Missing theme was from a forum, run a query to set any forums using the theme to the default if($load_from_forum == 1) { $db->update_query('forums', array('style' => 0), "style = '{$style['style']}'");
|
// Missing theme was from a forum, run a query to set any forums using the theme to the default if($load_from_forum == 1) { $db->update_query('forums', array('style' => 0), "style = '{$style['style']}'");
|
}
| }
|
// Missing theme was from a user, run a query to set any users using the theme to the default else if($load_from_user == 1) {
| // Missing theme was from a user, run a query to set any users using the theme to the default else if($load_from_user == 1) {
|
Zeile 265 | Zeile 300 |
---|
if(!empty($theme['color'])) { $stylesheet_scripts[] = $theme['color'];
|
if(!empty($theme['color'])) { $stylesheet_scripts[] = $theme['color'];
|
}
| }
|
$stylesheet_actions = array("global"); if(!empty($mybb->input['action']))
|
$stylesheet_actions = array("global"); if(!empty($mybb->input['action']))
|
{
| {
|
$stylesheet_actions[] = $mybb->get_input('action'); } foreach($stylesheet_scripts as $stylesheet_script)
| $stylesheet_actions[] = $mybb->get_input('action'); } foreach($stylesheet_scripts as $stylesheet_script)
|
Zeile 279 | Zeile 314 |
---|
if(!$stylesheet_action) { continue;
|
if(!$stylesheet_action) { continue;
|
}
| }
|
if(!empty($theme['stylesheets'][$stylesheet_script][$stylesheet_action])) { // Actually add the stylesheets to the list
| if(!empty($theme['stylesheets'][$stylesheet_script][$stylesheet_action])) { // Actually add the stylesheets to the list
|
Zeile 294 | Zeile 329 |
---|
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'])
| }
if($mybb->settings['minifycss'])
|
Zeile 312 | Zeile 351 |
---|
$id = (int) my_substr($query_string, 11); $query = $db->simple_select("themestylesheets", "name", "sid={$id}"); $real_name = $db->fetch_field($query, "name");
|
$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 {
| } else {
|
Zeile 325 | Zeile 364 |
---|
} } 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']))
|
{ $theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->user['language'];
| { $theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->user['language'];
|
} else {
| } else {
|
Zeile 386 | Zeile 443 |
---|
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->settings['bblanguage']; } // Otherwise, the image language directory is the same as the language directory for the theme
|
$theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->settings['bblanguage']; } // Otherwise, the image language directory is the same as the language directory for the theme
|
else {
| else {
|
$theme['imglangdir'] = $theme['imgdir']; } }
| $theme['imglangdir'] = $theme['imgdir']; } }
|
Zeile 410 | Zeile 467 |
---|
else { $templatelist = '';
|
else { $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,global_board_offline_modal"; $templatelist .= ",video_dailymotion_embed,video_facebook_embed,video_liveleak_embed,video_metacafe_embed,video_myspacetv_embed,video_veoh_embed,video_vimeo_embed,video_yahoo_embed,video_youtube_embed";
| $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 444 | Zeile 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 459 | Zeile 520 |
---|
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);
| }
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
|
// 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->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
| eval('$welcomeblock = "'.$templates->get('header_welcomeblock_member').'";'); } // Otherwise, we have a guest
|
Zeile 474 | Zeile 558 |
---|
switch($mybb->settings['username_method']) { case 0:
|
switch($mybb->settings['username_method']) { case 0:
|
$login_username = $lang->login_username;
| $login_username = $lang->login_username;
|
break; case 1: $login_username = $lang->login_username1; break; case 2: $login_username = $lang->login_username2;
|
break; case 1: $login_username = $lang->login_username1; break; case 2: $login_username = $lang->login_username2;
|
break;
| break;
|
default: $login_username = $lang->login_username; break; }
|
default: $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').'";'); }
|
Zeile 518 | Zeile 619 |
---|
if($mybb->user['uid'] != 0 && is_array($groupleaders) && array_key_exists($mybb->user['uid'], $groupleaders)) { $groupleader = $groupleaders[$mybb->user['uid']];
|
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 528 | Zeile 630 |
---|
}
$user['gid'] = (int)$user['gid'];
|
}
$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').'";'); } }
| |
|
|
$unreadreports = '';
| 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').'";'); } } }
$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 559 | Zeile 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)
|
if(!$is_super_admin)
|
{
| {
|
// Include admin functions if(!file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php")) { $can_access_moderationqueue = false; }
|
// 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"))
|
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']);
| // Get admin permissions $adminperms = get_admin_permissions($mybb->user['uid']);
|
Zeile 581 | Zeile 693 |
---|
if(array_key_exists('moderation_queue', $permissions['permissions']) && $adminperms['forum']['moderation_queue'] != 1) { $can_access_moderationqueue = false;
|
if(array_key_exists('moderation_queue', $permissions['permissions']) && $adminperms['forum']['moderation_queue'] != 1) { $can_access_moderationqueue = false;
|
} } } }
| } } } }
|
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)) { // Read the reported content cache
| if($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1)) { // Read the reported content cache
|
Zeile 628 | Zeile 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 645 | Zeile 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 eval('$bannedwarning = "'.$templates->get('global_bannedwarning').'";'); }
| // Display a nice warning to the user eval('$bannedwarning = "'.$templates->get('global_bannedwarning').'";'); }
|
Zeile 698 | Zeile 866 |
---|
$pm = $db->fetch_array($query); $pm['subject'] = $parser->parse_badwords($pm['subject']);
|
$pm = $db->fetch_array($query); $pm['subject'] = $parser->parse_badwords($pm['subject']);
|
|
|
if($pm['fromuid'] == 0)
|
if($pm['fromuid'] == 0)
|
{
| {
|
$pm['fromusername'] = $lang->mybb_engine; $user_text = $pm['fromusername']; } else
|
$pm['fromusername'] = $lang->mybb_engine; $user_text = $pm['fromusername']; } else
|
{
| { $pm['fromusername'] = htmlspecialchars_uni($pm['fromusername']);
|
$user_text = build_profile_link($pm['fromusername'], $pm['fromuid']); }
if($mybb->user['pms_unread'] == 1) { $privatemessage_text = $lang->sprintf($lang->newpm_notice_one, $user_text, $mybb->settings['bburl'], $pm['pmid'], htmlspecialchars_uni($pm['subject']));
|
$user_text = build_profile_link($pm['fromusername'], $pm['fromuid']); }
if($mybb->user['pms_unread'] == 1) { $privatemessage_text = $lang->sprintf($lang->newpm_notice_one, $user_text, $mybb->settings['bburl'], $pm['pmid'], htmlspecialchars_uni($pm['subject']));
|
}
| }
|
else { $privatemessage_text = $lang->sprintf($lang->newpm_notice_multiple, $mybb->user['pms_unread'], $user_text, $mybb->settings['bburl'], $pm['pmid'], htmlspecialchars_uni($pm['subject']));
| else { $privatemessage_text = $lang->sprintf($lang->newpm_notice_multiple, $mybb->user['pms_unread'], $user_text, $mybb->settings['bburl'], $pm['pmid'], htmlspecialchars_uni($pm['subject']));
|
Zeile 720 | Zeile 889 |
---|
eval('$pm_notice = "'.$templates->get('global_pm_alert').'";'); }
|
eval('$pm_notice = "'.$templates->get('global_pm_alert').'";'); }
|
| $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');
| if($mybb->settings['awactialert'] == 1 && $mybb->usergroup['cancp'] == 1) { $awaitingusers = $cache->read('awaitingactivation');
|
Zeile 735 | Zeile 911 |
---|
$awaitingusers = (int)$awaitingusers['users']; } else
|
$awaitingusers = (int)$awaitingusers['users']; } else
|
{ $awaitingusers = 0; }
if($awaitingusers < 1) { $awaitingusers = 0; } else {
| { $awaitingusers = 0; }
if($awaitingusers < 1) { $awaitingusers = 0; } else {
|
$awaitingusers = my_number_format($awaitingusers); }
|
$awaitingusers = my_number_format($awaitingusers); }
|
|
|
if($awaitingusers > 0) { if($awaitingusers == 1)
| if($awaitingusers > 0) { if($awaitingusers == 1)
|
Zeile 755 | Zeile 931 |
---|
$awaiting_message = $lang->awaiting_message_single; } else
|
$awaiting_message = $lang->awaiting_message_single; } else
|
{
| {
|
$awaiting_message = $lang->sprintf($lang->awaiting_message_plural, $awaitingusers);
|
$awaiting_message = $lang->sprintf($lang->awaiting_message_plural, $awaitingusers);
|
}
| }
|
if($admincplink) {
| if($admincplink) {
|
Zeile 770 | Zeile 946 |
---|
{ $awaitingusers = ''; }
|
{ $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
| }
// Set up some of the default templates
|
Zeile 798 | Zeile 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 = '&my_post_key='.$mybb->post_code;
|
}
// Are we showing the quick language selection box?
| }
// Are we showing the quick language selection box?
|
Zeile 807 | Zeile 996 |
---|
$languages = $lang->get_languages();
if(count($languages) > 1)
|
$languages = $lang->get_languages();
if(count($languages) > 1)
|
{
| {
|
foreach($languages as $key => $language) { $language = htmlspecialchars_uni($language);
// Current language matches if($lang->language == $key)
|
foreach($languages as $key => $language) { $language = htmlspecialchars_uni($language);
// Current language matches if($lang->language == $key)
|
{
| {
|
$selected = " selected=\"selected\"";
|
$selected = " selected=\"selected\"";
|
}
| }
|
else { $selected = ''; }
|
else { $selected = ''; }
|
|
|
eval('$lang_options .= "'.$templates->get('footer_languageselect_option').'";'); }
$lang_redirect_url = get_current_location(true, 'language'); eval('$lang_select = "'.$templates->get('footer_languageselect').'";');
|
eval('$lang_options .= "'.$templates->get('footer_languageselect_option').'";'); }
$lang_redirect_url = get_current_location(true, 'language'); eval('$lang_select = "'.$templates->get('footer_languageselect').'";');
|
} }
| } }
|
// Are we showing the quick theme selection box? $theme_select = $theme_options = ''; if($mybb->settings['showthemeselect'] != 0) {
|
// Are we showing the quick theme selection box? $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))
|
if(!empty($theme_options))
|
{
| {
|
$theme_redirect_url = get_current_location(true, 'theme'); eval('$theme_select = "'.$templates->get('footer_themeselect').'";'); }
|
$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 859 | Zeile 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').'";');
// Add our main parts to the navigation
| eval('$footer = "'.$templates->get('footer').'";');
// Add our main parts to the navigation
|
Zeile 892 | Zeile 1098 |
---|
'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 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])))
| if( $mybb->settings['boardclosed'] == 1 && $mybb->usergroup['canviewboardclosed'] != 1 && !in_array($current_page, $closed_bypass) && !( isset($closed_bypass[$current_page]) && in_array($mybb->get_input('action'), $closed_bypass[$current_page]) ) )
|
{ // Show error if(!$mybb->settings['boardclosed_reason'])
| { // Show error if(!$mybb->settings['boardclosed_reason'])
|
Zeile 903 | Zeile 1118 |
---|
$mybb->settings['boardclosed_reason'] = $lang->boardclosed_reason; }
|
$mybb->settings['boardclosed_reason'] = $lang->boardclosed_reason; }
|
$lang->error_boardclosed .= "<blockquote>{$mybb->settings['boardclosed_reason']}</blockquote>";
| eval('$reason = "'.$templates->get('global_boardclosed_reason').'";'); $lang->error_boardclosed .= $reason;
|
|
|
if(!$mybb->get_input('modal'))
| if(!$mybb->get_input('modal'))
|
{ error($lang->error_boardclosed); }
| { error($lang->error_boardclosed); }
|
Zeile 933 | Zeile 1149 |
---|
'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
|
if($mybb->settings['forcelogin'] == 1 && $mybb->user['uid'] == 0 && !in_array($current_page, $force_bypass) && (!is_array($force_bypass[$current_page]) || !in_array($mybb->get_input('action'), $force_bypass[$current_page])))
| if( $mybb->settings['forcelogin'] == 1 && $mybb->user['uid'] == 0 && !in_array($current_page, $force_bypass) && !( isset($force_bypass[$current_page]) && in_array($mybb->get_input('action'), $force_bypass[$current_page]) ) )
|
{ // Show error error_no_permission();
| { // Show error error_no_permission();
|
Zeile 965 | Zeile 1190 |
---|
$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($referrer)
|
{ 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 981 | Zeile 1208 |
---|
$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; } } }
|
// 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)
|
// 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->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 1012 | Zeile 1256 |
---|
}
// 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'])) { $colcookie = $mybb->cookies['collapsed'];
|
if(!empty($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"; }
|