https://instagram.com/alphazzers
   
Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Mybb 1.8.35 hataları
#1
Mybb 1.8.35'e güncellemeye çalıştım, ancak şu hatalar oluştu:

Kod:
Warning [2] Illegal string offset 'location' - Line: 3 - File: global.php(1046) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1046:eval)->(global.php(1046) : eval()'d code:3:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'form_html' - Line: 4 - File: global.php(1046) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1046:eval)->(global.php(1046) : eval()'d code:4:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'location' - Line: 3 - File: global.php(1068) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1068:eval)->(global.php(1068) : eval()'d code:3:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'form_html' - Line: 4 - File: global.php(1068) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1068:eval)->(global.php(1068) : eval()'d code:4:error_callback)->(class_error.php:153:error)->

error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING);
ini_set("display_errors", 0);

böyle yaptım ama, yine de düzelmedi. Başka önerisi olan var mı?

Sanırım şablonlardan kaynaklı, bazı forumlarda yok, ama birçok forumda var... Yani, şablonları düzeltin desek, bisürü forum hata ile dolacak... 

(şuanda göremezsiniz, eski haline aldım)
----------------
"Ana prensibimiz insana saygı" dedik, kimileri bunu yanlış anladı, sürekli tepemize çıktı. 
Bundan sonra ana prensibim: "isteyen istediği yere gitsin". Forumda sürekli negatif enerji yayanları, hakaret edenleri ya da hakaretimsi yazanları dahi banlayacağım. Forumda etkileşim azalacakmış umuruda değil. Yıllarca negatif enerjili insanlara katlandığım yeter.. 

Sonra duymadım, bilmiyordum yok.. 

Önemli konular listesi: https://destek.10tl.net/showthread.php?tid=99072
Android 10tl programı: https://destek.10tl.net/showthread.php?tid=98074
Görevli kuralları: https://destek.10tl.net/showthread.php?tid=99597
10tl.net Geneli (Forum açma v.b.) Kurallar: https://destek.10tl.net/showthread.php?tid=25433

twitter.png https://twitter.com/10tlnet
discord.png https://discord.gg/fUC7A2W
email.png  info (at.) 10tl.net
Ara
Cevapla PGM
Teşekkür verenler:
#2
Thumbs Up 
Tüm forumlar mybb 1.8.35'e güncellenmiştir ve yukardaki hata da birçoğunda giderildi.
Hata çıkan varsa, söyleyin, ilgileneyim.
----------------
"Ana prensibimiz insana saygı" dedik, kimileri bunu yanlış anladı, sürekli tepemize çıktı. 
Bundan sonra ana prensibim: "isteyen istediği yere gitsin". Forumda sürekli negatif enerji yayanları, hakaret edenleri ya da hakaretimsi yazanları dahi banlayacağım. Forumda etkileşim azalacakmış umuruda değil. Yıllarca negatif enerjili insanlara katlandığım yeter.. 

Sonra duymadım, bilmiyordum yok.. 

Önemli konular listesi: https://destek.10tl.net/showthread.php?tid=99072
Android 10tl programı: https://destek.10tl.net/showthread.php?tid=98074
Görevli kuralları: https://destek.10tl.net/showthread.php?tid=99597
10tl.net Geneli (Forum açma v.b.) Kurallar: https://destek.10tl.net/showthread.php?tid=25433

twitter.png https://twitter.com/10tlnet
discord.png https://discord.gg/fUC7A2W
email.png  info (at.) 10tl.net
Ara
Cevapla PGM
Teşekkür verenler:
#3
(06-08-2023 Saat: 03:48)admin Nickli Kullanıcıdan Alıntı: Mybb 1.8.35'e güncellemeye çalıştım, ancak şu hatalar oluştu:

Kod:
Warning [2] Illegal string offset 'location' - Line: 3 - File: global.php(1046) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1046:eval)->(global.php(1046) : eval()'d code:3:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'form_html' - Line: 4 - File: global.php(1046) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1046:eval)->(global.php(1046) : eval()'d code:4:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'location' - Line: 3 - File: global.php(1068) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1068:eval)->(global.php(1068) : eval()'d code:3:error_callback)->(class_error.php:153:error)->Warning [2] Illegal string offset 'form_html' - Line: 4 - File: global.php(1068) : eval()'d code PHP 7.4.3-4ubuntu2.19 (Linux)
(index.php:20:require_once)->(global.php:1068:eval)->(global.php(1068) : eval()'d code:4:error_callback)->(class_error.php:153:error)->

error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING);
ini_set("display_errors", 0);

böyle yaptım ama, yine de düzelmedi. Başka önerisi olan var mı?

Sanırım şablonlardan kaynaklı, bazı forumlarda yok, ama birçok forumda var... Yani, şablonları düzeltin desek, bisürü forum hata ile dolacak... 

(şuanda göremezsiniz, eski haline aldım)

Çözüm: Global.php'nin vereceğim kodlarla değiştirilmesi gerekiyor.
Kod:
<?php
/**
* MyBB 1.8
* Copyright 2014 MyBB Group, All Rights Reserved
*
* Website: http://www.mybb.com
* License: http://www.mybb.com/about/license
*
*/

$working_dir = dirname(__FILE__);
if(!$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';

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

// If the groups cache doesn't exist, update it and re-read it
if(!is_array($groupscache))
{
    $cache->update_usergroups();
    $groupscache = $cache->read('usergroups');
}

$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();
}

// Do not use session system for defined pages
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;

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

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

// Set and load the language
if(isset($mybb->input['language']) && $lang->language_exists($mybb->get_input('language')) && verify_post_check($mybb->get_input('my_post_key'), true))
{
    $mybb->settings['bblanguage'] = $mybb->get_input('language');
    // If user is logged in, update their language selection with the new one
    if($mybb->user['uid'])
    {
        if(isset($mybb->cookies['mybblang']))
        {
            my_unsetcookie('mybblang');
        }

        $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'];
}
// 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';
}

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

if(function_exists('mb_internal_encoding') && !empty($lang->settings['charset']))
{
    @mb_internal_encoding($lang->settings['charset']);
}

// Select the board theme to use.
$loadstyle = '';
$load_from_forum = $load_from_user = 0;
$style = array();

// The user used our new quick theme changer
if(isset($mybb->input['theme']) && verify_post_check($mybb->get_input('my_post_key'), true))
{
    // 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'])
        {
            if(isset($mybb->cookies['mybbtheme']))
            {
                my_unsetcookie('mybbtheme');
            }

            $userhandler->update_user();
        }
        // Guest = cookie
        else
        {
            my_setcookie('mybbtheme', $user['style']);
        }
    }
}
// Cookied theme!
else if(!$mybb->user['uid'] && !empty($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)
{
    $mybb->user['style'] = (int)$mybb->user['style'];

    $loadstyle = "tid = '{$mybb->user['style']}'";
    $load_from_user = 1;
}

$valid = array(
    'showthread.php',
    'forumdisplay.php',
    'newthread.php',
    'newreply.php',
    'ratethread.php',
    'editpost.php',
    'polls.php',
    'sendthread.php',
    'printthread.php',
    'moderation.php'
);

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

        if($db->num_rows($query) > 0 && $fid = $db->fetch_field($query, '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
    else if(isset($mybb->input['tid']))
    {
        $query = $db->simple_select('threads', 'fid', "tid = '{$mybb->input['tid']}'", array('limit' => 1));

        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")
    {
        $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($db->num_rows($query) > 0 && $fid = $db->fetch_field($query, 'fid'))
        {
            $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']]))
    {
        $style = $forum_cache[$mybb->input['fid']];
        $load_from_forum = 1;
    }
}
unset($valid);

// From all of the above, a theme was found
if(isset($style['style']) && $style['style'] > 0)
{
    $style['style'] = (int)$style['style'];

    // This theme is forced upon the user, overriding their selection
    if($style['overridestyle'] == 1 || !isset($mybb->user['style']))
    {
        $loadstyle = "tid = '{$style['style']}'";
    }
}

// After all of that no theme? Load the board default
if(empty($loadstyle))
{
    $loadstyle = "def='1'";
}

// 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();
    }

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

    $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'])
{
    // 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)
    {
        $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));
    $theme = $db->fetch_array($query);
}
$theme = @array_merge($theme, my_unserialize($theme['properties']));

// Fetch all necessary stylesheets
$stylesheets = '';
$theme['stylesheets'] = my_unserialize($theme['stylesheets']);
$stylesheet_scripts = array("global", basename($_SERVER['PHP_SELF']));
if(!empty($theme['color']))
{
    $stylesheet_scripts[] = $theme['color'];
}
$stylesheet_actions = array("global");
if(!empty($mybb->input['action']))
{
    $stylesheet_actions[] = $mybb->get_input('action');
}
foreach($stylesheet_scripts as $stylesheet_script)
{
    // Load stylesheets for global actions and the current action
    foreach($stylesheet_actions as $stylesheet_action)
    {
        if(!$stylesheet_action)
        {
            continue;
        }

        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)
            {
                if(!empty($already_loaded[$page_stylesheet]))
                {
                    continue;
                }

                if(strpos($page_stylesheet, 'css.php') !== false)
                {
                    $stylesheet_url = $mybb->settings['bburl'] . '/' . $page_stylesheet;
                }
                else
                {
                    $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)
                {
                    // 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] = $id;
                }
                else
                {
                    $theme_stylesheets[basename($page_stylesheet)] = "<link type=\"text/css\" rel=\"stylesheet\" href=\"{$stylesheet_url}\" />\n";
                }

                $already_loaded[$page_stylesheet] = 1;
            }
        }
    }
}
unset($actions);

$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]))
        {
            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?
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']))
    {
        $theme['imglangdir'] = $theme['imgdir'].'/'.$mybb->user['language'];
    }
    else
    {
        // Check if a custom language directory exists for this theme
        if(!empty($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'];
        }
    }
}
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'] = $mybb->get_asset_url($theme['logo']);
}

// Load Main Templates and Cached Templates
if(isset($templatelist))
{
    $templatelist .= ',';
}
else
{
    $templatelist = '';
}

$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
$datenow = my_date($mybb->settings['dateformat'], TIME_NOW, '', false);
$timenow = my_date($mybb->settings['timeformat'], TIME_NOW);
$lang->welcome_current_time = $lang->sprintf($lang->welcome_current_time, $datenow . $lang->comma . $timenow);

// Format the last visit date of this user appropriately
if(isset($mybb->user['lastvisit']))
{
    $lastvisit = my_date('relative', $mybb->user['lastvisit'], '', 2);
}
// Otherwise, they've never visited before
else
{
    $lastvisit = $lang->lastvisit_never;
}

$plugins->run_hooks('global_intermediate');

// If the board is closed and we have a usergroup allowed to view the board when closed, then show board closed warning
$bbclosedwarning = '';
if($mybb->settings['boardclosed'] == 1 && $mybb->usergroup['canviewboardclosed'] == 1)
{
    eval('$bbclosedwarning = "'.$templates->get('global_boardclosed_warning').'";');
}

// Prepare the main templates for use
$admincplink = $modcplink = $usercplink = '';

// Load appropriate welcome block for the current logged in user
if($mybb->user['uid'] != 0)
{
    // 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').'";');
    }

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

    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
{
    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;
    }

    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').'";');
}

// Display menu links and quick search if user has permission
$menu_search = $menu_memberlist = $menu_portal = $menu_calendar = $quicksearch = '';
if($mybb->usergroup['cansearch'] == 1)
{
    eval('$menu_search = "'.$templates->get('header_menu_search').'";');
    eval('$quicksearch = "'.$templates->get('header_quicksearch').'";');
}

if($mybb->settings['enablememberlist'] == 1 && $mybb->usergroup['canviewmemberlist'] == 1)
{
    eval('$menu_memberlist = "'.$templates->get('header_menu_memberlist').'";');
}

if($mybb->settings['enablecalendar'] == 1 && $mybb->usergroup['canviewcalendar'] == 1)
{
    eval('$menu_calendar = "'.$templates->get('header_menu_calendar').'";');
}

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']];
    $showjoinnotice = false;

    $gids = "'0'";
    foreach($groupleader as $user)
    {
        if($user['canmanagerequests'] != 1)
        {
            continue;
        }

        $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').'";');
        }
    }
}

$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))
{
    // 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'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))
    {
        // 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($mybb->user['uid']);
        if(!$is_super_admin)
        {
            // Include admin functions
            if(!file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php"))
            {
                $can_access_moderationqueue = false;
            }

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

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

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

    if($can_access_moderationqueue || ($mybb->user['ismoderator'] && $mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanagereportedcontent'] == 1))
    {
        // Read the reported content cache
        $reported = $cache->read('reportedcontent');

        // 0 or more reported items currently exist
        if($reported['unread'] > 0)
        {
            // We want to avoid one extra query for users that can moderate any forum
            if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])
            {
                $unread = (int)$reported['unread'];
            }
            else
            {
                $unread = 0;
                $query = $db->simple_select('reportedcontent', 'id3', "reportstatus='0' AND (type = 'post' OR type = '')");

                while($fid = $db->fetch_field($query, 'id3'))
                {
                    if(is_moderator($fid, "canmanagereportedposts"))
                    {
                        ++$unread;
                    }
                }
            }

            if($unread > 0)
            {
                if($unread == 1)
                {
                    $lang->unread_reports = $lang->unread_report;
                }
                else
                {
                    $lang->unread_reports = $lang->sprintf($lang->unread_reports, my_number_format($unread));
                }

                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?
$charset = 'UTF-8';
if(isset($lang->settings['charset']) && $lang->settings['charset'])
{
    $charset = $lang->settings['charset'];
}

// Is this user apart of a banned group?
$bannedwarning = '';
if($mybb->usergroup['isbannedgroup'] == 1)
{
    // 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').'";');
}

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

// Check if this user has a new private message.
$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->get_input('action') != "read"))
{
    if(!isset($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
        LEFT JOIN ".TABLE_PREFIX."users fu on (fu.uid=pm.fromid)
        WHERE pm.folder = '1' AND pm.uid = '{$mybb->user['uid']}' AND pm.status = '0'
        ORDER BY pm.dateline DESC
        LIMIT 1
    ");

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

    if($pm['fromuid'] == 0)
    {
        $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']));
    }
    else
    {
        $privatemessage_text = $lang->sprintf($lang->newpm_notice_multiple, $mybb->user['pms_unread'], $user_text, $mybb->settings['bburl'], $pm['pmid'], htmlspecialchars_uni($pm['subject']));
    }
    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(isset($awaitingusers['time']) && $awaitingusers['time'] + 86400 < TIME_NOW)
    {
        $cache->update_awaitingactivation();
        $awaitingusers = $cache->read('awaitingactivation');
    }

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

    if($awaitingusers < 1)
    {
        $awaitingusers = 0;
    }
    else
    {
        $awaitingusers = my_number_format($awaitingusers);
    }

    if($awaitingusers > 0)
    {
        if($awaitingusers == 1)
        {
            $awaiting_message = $lang->awaiting_message_single;
        }
        else
        {
            $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 = '';
    }
}

$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').'";');
eval('$gobutton = "'.$templates->get('gobutton').'";');
eval('$htmldoctype = "'.$templates->get('htmldoctype', 1, 0).'";');
eval('$header = "'.$templates->get('header').'";');

$copy_year = my_date('Y', TIME_NOW);

// Are we showing version numbers in the footer?
$mybbversion = '';
if($mybb->settings['showvernum'] == 1)
{
    $mybbversion = ' '.$mybb->version;
}

// Check to see if we have any tasks to run
$task_image = '';
$task_cache = $cache->read('tasks');
if(!$task_cache['nextrun'])
{
    $task_cache['nextrun'] = TIME_NOW;
}

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 = '';
if($mybb->settings['showlanguageselect'] != 0)
{
    $languages = $lang->get_languages();

    if(count($languages) > 1)
    {
        foreach($languages as $key => $language)
        {
            $language = htmlspecialchars_uni($language);

            // Current language matches
            if($lang->language == $key)
            {
                $selected = " selected=\"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').'";');
    }
}

// Are we showing the quick theme selection box?
$theme_select = $theme_options = '';
if($mybb->settings['showthemeselect'] != 0)
{
    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').'";');
    }
}

$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(!my_validate_url($mybb->settings['contactlink'], true) && my_substr($mybb->settings['contactlink'], 0, 7) != 'mailto:')
    {
        $mybb->settings['contactlink'] = $mybb->settings['bburl'].'/'.$mybb->settings['contactlink'];
    }

    eval('$contact_us = "'.$templates->get('footer_contactus').'";');
}

// DST Auto detection enabled?
$auto_dst_detection = '';
if($mybb->user['uid'] > 0 && $mybb->user['dstcorrection'] == 2)
{
    $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
$navbits = array();
$navbits[0]['name'] = $mybb->settings['bbname_orig'];
$navbits[0]['url'] = $mybb->settings['bburl'].'/index.php';

// 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'])
    {
        $db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip)." OR uid='{$mybb->user['uid']}'");
    }
    else
    {
        $db->delete_query('sessions', "ip = ".$db->escape_binary($session->packedip));
    }
    error($lang->error_banned);
}

$closed_bypass = array(
    'member.php' => array(
        'login',
        'do_login',
        '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) &&
    !(
        isset($closed_bypass[$current_page]) &&
        in_array($mybb->get_input('action'), $closed_bypass[$current_page])
    )
)
{
    // Show error
    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;
}

$force_bypass = array(
    'member.php' => array(
        'login',
        'do_login',
        'logout',
        'register',
        'do_register',
        'lostpw',
        'do_lostpw',
        'activate',
        'resendactivation',
        'do_resendactivation',
        '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(
    $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();
    exit;
}

// Load Limiting
if($mybb->usergroup['cancp'] != 1 && $mybb->settings['load'] > 0 && ($load = get_server_load()) && $load != $lang->unknown && $load > $mybb->settings['load'])
{
    // User is not an administrator and the load limit is higher than the limit, show an error
    error($lang->error_loadlimit);
}

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

    if(!empty($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(defined('ALLOWABLE_PAGE'))
    {
        if(is_string(ALLOWABLE_PAGE))
        {
            $allowable_actions = explode(',', ALLOWABLE_PAGE);
            if(!in_array($mybb->get_input('action'), $allowable_actions))
            {
                $notallowed = true;
            }

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

    if($notallowed == true)
    {
        if(!$mybb->get_input('modal'))
        {
            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)
{
    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');
    }
    else if($mybb->request_method != 'post')
    {
        $banned_email_error = inline_error(array($lang->banned_email_warning));
    }
}

// work out which items the user has collapsed
$collapse = $collapsed = $collapsedimg = $collapsedthead = array();

if(!empty($mybb->cookies['collapsed']))
{
    $colcookie = $mybb->cookies['collapsed'];

    // Preserve and don't unset $collapse, will be needed globally throughout many pages
    $collapse = explode("|", $colcookie);
    foreach($collapse as $val)
    {
        $collapsed[$val."_e"] = "display: none;";
        $collapsedimg[$val] = "_collapsed";
        $collapsedthead[$val] = " thead_collapsed";
    }
}

// Run hooks for end of global.php
$plugins->run_hooks('global_end');

$globaltime = $maintimer->getTime();
Ara
Cevapla PGM
Teşekkür verenler:


Hızlı Menü:


Şu anda bu konuyu okuyanlar: 1 Ziyaretçi



500000 -

Online Shopping App
Online Shopping - E-Commerce Platform
Online Shopping - E-Commerce Platform
Feinunze Schmuck Jewelery Online Shopping