Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
sideboxes 2.x
#1
Hallo,
leider erscheinen die Sideboxen nur auf der Indexseite.
Ich hätte die Boxen auch gerne auf den Forenseiten.
Wie bekomme ich das hin?

Und wenn ich den php-Inhalt der Shoutbox.php in eine Box einfüge, dann wird nichts angezeigt.

Hat jemand Tipps für mich?
1000 Dank.

Gruss
Carsten
Zitieren
#2
yabexxl schrieb:Ich hätte die Boxen auch gerne auf den Forenseiten.
Wie bekomme ich das hin?

Hallo Mybb Profis,

dem Wunsch schliesse ich mich an!
Danke & Gruss
Fatih
Zitieren
#3
yabexxl schrieb:Und wenn ich den php-Inhalt der Shoutbox.php in eine Box einfüge, dann wird nichts angezeigt.
Schau mal: https://www.mybb.de/forum/showthread.php?tid=19951
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#4
Hat jemand eine Idee, wie ich die Sideboxen auch auf den Forenseiten zu Gesicht bekomme?
Hier mal der Code zur Sidebox.php (Plugins)
Code:
<?php
/**
* Side Boxes!
* Copyright TECHEX - The Site
* http://www.thetechex.net
*/

// Disallow direct access to this file for security reasons
if(!defined("IN_MYBB"))
{
    die("Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined.");
}

$plugins->add_hook("index_start", "sideboxes_start");

function sideboxes_info()
{
    return array(
        "name"            => "Side Boxes!",
        "description"    => "Additional boxes on the right of the forums in index page.",
        "website"        => "http://www.thetechex.net",
        "author"        => "Zaher1988",
        "authorsite"    => "http://www.thetechex.net",
        "version"        => "2.0",
    );
}

function sideboxes_activate()
{
    global $db;
    
    $sideboxes_group = array(
        "gid"            => "NULL",
        "title"            => "Side Boxses!",
        "name"            => "sideboxes",
        "description"    => "Side Boxes settings.",
        "disporder"        => "3",
        "isdefault"        => "no",
    );
    
    $db->insert_query(TABLE_PREFIX."settinggroups", $sideboxes_group);
    $gid = $db->insert_id();
    
    
    $sideboxes_setting_1 = array(
        "sid"            => "NULL",
        "name"            => "sb_welcome",
        "title"            => "Include welcome box",
        "description"    => "Would you like include the welcome box?",
        "optionscode"    => "yesno",
        "value"            => 'yes',
        "disporder"        => '1',
        "gid"            => intval($gid),
    );
    $sideboxes_setting_2 = array(
        "sid"            => "NULL",
        "name"            => "sb_stats",
        "title"            => "Include statistics box",
        "description"    => "Would you like include the stats box?",
        "optionscode"    => "yesno",
        "value"            => 'yes',
        "disporder"        => '2',
        "gid"            => intval($gid),
    );
    $sideboxes_setting_3 = array(
        "sid"            => "NULL",
        "name"            => "sb_search",
        "title"            => "Include search box",
        "description"    => "Would you like include the search box?",
        "optionscode"    => "yesno",
        "value"            => 'yes',
        "disporder"        => '3',
        "gid"            => intval($gid),
    );
    $sideboxes_setting_4 = array(
        "sid"            => "NULL",
        "name"            => "sb_latest",
        "title"            => "Include latest threads box",
        "description"    => "Would you like include the latest threads box?",
        "optionscode"    => "yesno",
        "value"            => 'yes',
        "disporder"        => '4',
        "gid"            => intval($gid),
    );

    $sideboxes_setting_5 = array(
    "sid"            => "NULL",
    "name"            => "sb_additional",
    "title"            => "Additional custom boxes",
    "description"    => "Create an additional box(s) by entering the html code.",
    "optionscode"    => "textarea",
    "value"            => $db->escape_string('<table border="0" cellspacing="1" cellpadding="4" class="tborder">
<tr>
<td class="thead"><strong>My Additional box</strong></td>
</tr>
<tr>
<td class="trow1">This is my first additional box using SideBoxes!.</td>
</tr>
</table>
<br />'),
    "disporder"        => '5',
    "gid"            => intval($gid),
    );

    $db->insert_query(TABLE_PREFIX."settings", $sideboxes_setting_1);
    $db->insert_query(TABLE_PREFIX."settings", $sideboxes_setting_2);
    $db->insert_query(TABLE_PREFIX."settings", $sideboxes_setting_3);
    $db->insert_query(TABLE_PREFIX."settings", $sideboxes_setting_4);
    $db->insert_query(TABLE_PREFIX."settings", $sideboxes_setting_5);
    rebuild_settings();

    require MYBB_ROOT.'/inc/adminfunctions_templates.php';
    find_replace_templatesets("index", '#'.preg_quote('{$forums}').'#', '<table width="100%"  border="0">



  <tr>
    <td width="75%" valign="top">{$forums}</td>
    <td width="25%" valign="top">{$sb_welcome}{$sb_search}{$sb_stats}{$sb_latestthreads}{$sb_additional}</td>
  </tr>
</table>');

}

function sideboxes_deactivate()
{
    global $db;

    $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='sb_welcome'");
    $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='sb_stats'");
    $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='sb_additional'");
    $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='sb_search'");
    $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='sb_latest'");
    $db->query("DELETE FROM ".TABLE_PREFIX."settinggroups WHERE name='sideboxes'");
    rebuild_settings();

    require MYBB_ROOT.'/inc/adminfunctions_templates.php';
    find_replace_templatesets("index", '#'.preg_quote('<table width="100%"  border="0">
  <tr>
    <td width="75%" valign="top">{$forums}</td>').'#', '{$forums}',0);

    find_replace_templatesets("index", '#'.preg_quote('    <td width="25%" valign="top">{$sb_welcome}{$sb_search}{$sb_stats}{$sb_latestthreads}{$sb_additional}</td>
  </tr>
</table>').'#', '',0);
}

function sideboxes_start()
{
    global $db, $mybb, $settings, $templates, $lang, $cache;
    global $sb_search, $sb_welcome, $sb_stats, $sb_latestthreads, $sb_additional, $pms, $welcometext;
    global $gobutton, $theme, $lastvisit;

    $lang->load("portal");

    if($mybb->settings['sb_welcome'] == "yes")
    {
        if($mybb->user['uid'] != 0)
        {
            if($mybb->user['receivepms'] != "no" && $mybb->usergroup['canusepms'] != "no" && $mybb->settings['portal_showpms'] != "no" && $mybb->settings['enablepms'] != "no")
            {
                $query = $db->simple_select(TABLE_PREFIX."privatemessages", "COUNT(*) AS pms_total, SUM(IF(dateline>'".$mybb->user['lastvisit']."' AND folder='1','1','0')) AS pms_new, SUM(IF(status='0' AND folder='1','1','0')) AS pms_unread", "uid='".$mybb->user['uid']."'");
                $messages = $db->fetch_array($query);
                if(!$messages['pms_new'])
                {
                    $messages['pms_new'] = 0;
                }
                // the SUM() thing returns "" instead of 0
                if($messages['pms_unread'] == "")
                {
                    $messages['pms_unread'] = 0;
                }
                $lang->pms_received_new = sprintf($lang->pms_received_new, $mybb->user['username'], $messages['pms_new']);
                eval("\$pms = \"".$templates->get("portal_pms")."\";");
            }    
    
            //get number of new posts, threads, announcements
            $query = $db->simple_select(TABLE_PREFIX."posts", "COUNT(pid) AS newposts", "dateline>'".$mybb->user['lastvisit']."' $unviewwhere");
            $newposts = $db->fetch_field($query, "newposts");
            if($newposts)
            { // if there aren't any new posts, there is no point in wasting two more queries
                $query = $db->simple_select(TABLE_PREFIX."threads", "COUNT(tid) AS newthreads", "dateline>'".$mybb->user['lastvisit']."' $unviewwhere");
                $newthreads = $db->fetch_field($query, "newthreads");
                $query = $db->simple_select(TABLE_PREFIX."threads", "COUNT(tid) AS newann", "dateline>'".$mybb->user['lastvisit']."' AND fid IN (".$mybb->settings['portal_announcementsfid'].") $unviewwhere");
                $newann = $db->fetch_field($query, "newann");
                if(!$newthreads)
                {
                    $newthreads = 0;
                }
                if(!$newann)
                {
                    $newann = 0;
                }
            }
            else
            {
                $newposts = 0;
                $newthreads = 0;
                $newann = 0;
            }
    
            // Make the text
            if($newann == 1)
            {
                $lang->new_announcements = $lang->new_announcement;
            }
            else
            {
                $lang->new_announcements = sprintf($lang->new_announcements, $newann);
            }
            if($newthreads == 1)
            {
                $lang->new_threads = $lang->new_thread;
            }
            else
            {
                $lang->new_threads = sprintf($lang->new_threads, $newthreads);
            }
            if($newposts == 1)
            {
                $lang->new_posts = $lang->new_post;
            }
            else
            {
                $lang->new_posts = sprintf($lang->new_posts, $newposts);
            }
            eval("\$welcometext = \"".$templates->get("portal_welcome_membertext")."\";");
        }
        else
        {
            $lang->guest_welcome_registration = sprintf($lang->guest_welcome_registration, $mybb->settings['bburl'] . '/member.php?action=register');
            $mybb->user['username'] = $lang->guest;
            $portal_url = get_current_location();
            eval("\$welcometext = \"".$templates->get("portal_welcome_guesttext")."\";");
        }
        $lang->welcome = sprintf($lang->welcome, $mybb->user['username']);
        eval("\$sb_welcome = \"".$templates->get("portal_welcome")."\";");
        if($mybb->user['uid'] == 0)
        {
            $mybb->user['username'] = "";
        }
    }

    //Start statistics
    if($mybb->settings['sb_stats'] == "yes")
    {
        $stats = $cache->read("stats");
        $threadsnum = $stats['numthreads'];
        $postsnum = $stats['numposts'];
        $membersnum = $stats['numusers'];
        if(!$stats['lastusername'])
        {
            $newestmember = "<b>" . $lang->no_one . "</b>";
        }
        else
        {
            $newestmember = build_profile_link($stats['lastusername'], $stats['lastuid']);
        }
        eval("\$sb_stats = \"".$templates->get("portal_stats")."\";");
    }

    //Search Box
    if($mybb->settings['sb_search'] == "yes")
    {
        eval("\$sb_search = \"".$templates->get("portal_search")."\";");
    }

    //Get latest threads
    if($mybb->settings['sb_latest'] == "yes")
    {
        $altbg = alt_trow();
        $threadlist = '';
        $query = $db->query("
            SELECT t.*, u.username
            FROM ".TABLE_PREFIX."threads t
            LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=t.uid)
            WHERE 1=1 $unviewwhere AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
            ORDER BY t.lastpost DESC
            LIMIT 0, ".$mybb->settings['portal_showdiscussionsnum']
        );
        while($thread = $db->fetch_array($query))
        {
            $lastpostdate = my_date($mybb->settings['dateformat'], $thread['lastpost']);
            $lastposttime = my_date($mybb->settings['timeformat'], $thread['lastpost']);
            // Don't link to guest's profiles (they have no profile).
            if($thread['lastposteruid'] == 0)
            {
                $lastposterlink = $thread['lastposter'];
            }
            else
            {
                $lastposterlink = build_profile_link($thread['lastposter'], $thread['lastposteruid']);
            }
            if(my_strlen($thread['subject']) > 25)
            {
                $thread['subject'] = my_substr($thread['subject'], 0, 25) . "...";
            }
            $thread['subject'] = htmlspecialchars_uni($thread['subject']);
            eval("\$threadlist .= \"".$templates->get("portal_latestthreads_thread")."\";");
            $altbg = alt_trow();
        }
        if($threadlist)
        { // show the table only if there are threads
            eval("\$sb_latestthreads = \"".$templates->get("portal_latestthreads")."\";");
        }
    }

    //Workout additional cutom boxes
    eval("\$sb_additional = \"".$db->escape_string($mybb->settings['sb_additional'])."\";");

    if($mybb->input['action'] == "do_login" && $mybb->request_method == "post")
    {
        require_once MYBB_ROOT."inc/functions_user.php";
        $logins = login_attempt_check();
        $login_text = '';
    
        if(!username_exists($mybb->input['username']))
        {
            my_setcookie('loginattempts', $logins + 1);
            $db->query("UPDATE ".TABLE_PREFIX."sessions SET loginattempts=loginattempts+1 WHERE sid = '{$session->sid}'");
            if($mybb->settings['failedlogintext'] == "yes")
            {
                $login_text = sprintf($lang->failed_login_again, $mybb->settings['failedlogincount'] - $logins);
            }
            error($lang->error_invalidusername.$login_text);
        }
        $user = validate_password_from_username($mybb->input['username'], $mybb->input['password']);
        if(!$user['uid'])
        {
            my_setcookie('loginattempts', $logins + 1);
            $db->query("UPDATE ".TABLE_PREFIX."sessions SET loginattempts=loginattempts+1 WHERE sid = '{$session->sid}'");
            if($mybb->settings['failedlogintext'] == "yes")
            {
                $login_text = sprintf($lang->failed_login_again, $mybb->settings['failedlogincount'] - $logins);
            }
            error($lang->error_invalidpassword.$login_text);
        }
    
        my_setcookie('loginattempts', 1);
        $db->delete_query(TABLE_PREFIX."sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'");
        $newsession = array(
            "uid" => $user['uid'],
            "loginattempts" => 1,
            );
        $db->update_query(TABLE_PREFIX."sessions", $newsession, "sid='".$session->sid."'");
    
        // Temporarily set the cookie remember option for the login cookies
        $mybb->user['remember'] = $user['remember'];
    
        my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true);
        my_setcookie("sid", $session->sid, -1, true);
    
        if(function_exists("loggedIn"))
        {
            loggedIn($user['uid']);
        }
    
        redirect("index.php", $lang->redirect_loggedin);
    }
}
//Function to rebuilt all settings
if(!function_exists("rebuild_settings"))
{
    function rebuild_settings()
{
    global $db, $mybb;

    if(!file_exists(MYBB_ROOT."inc/settings.php"))
    {
        $mode = "x";
    }
    else
    {
        $mode = "w";
    }
    $options = array(
        "order_by" => "title",
        "order_dir" => "ASC"
    );
    $query = $db->simple_select(TABLE_PREFIX."settings", "value, name", "", $options);

    while($setting = $db->fetch_array($query))
    {
        $setting['value'] = str_replace("\"", "\\\"", $setting['value']);
        $settings .= "\$settings['".$setting['name']."'] = \"".$setting['value']."\";\n";
        $mybb->settings[$setting['name']] = $setting['value'];
    }
    $settings = "<"."?php\n/*********************************\ \n  DO NOT EDIT THIS FILE, PLEASE USE\n  THE SETTINGS EDITOR\n\*********************************/\n\n$settings\n?".">";
    $file = @fopen(MYBB_ROOT."inc/settings.php", $mode);
    @fwrite($file, $settings);
    @fclose($file);
    $GLOBALS['settings'] = &$mybb->settings;
    }

}
?>
Zitieren
#5
Probiere das:
Ersetze:
PHP-Code:
$plugins->add_hook("index_start""sideboxes_start"); 
durch:
PHP-Code:
$plugins->add_hook("global_end""sideboxes_start"); 
Und:
PHP-Code:
global $gobutton$theme$lastvisit
durch:
PHP-Code:
global $gobutton$theme$lastvisit$header$footer
Und füge nach:
PHP-Code:
//Workout additional cutom boxes
    
eval("\$sb_additional = \"".$db->escape_string($mybb->settings['sb_additional'])."\";"); 
das ein:
PHP-Code:
$header .= '<table width="100%"  border="0">
  <tr>
    <td width="75%" valign="top">'
;
$footer '</td>
    <td width="25%" valign="top">'
.$sb_welcome.$sb_search.$sb_stats.$sb_latestthreads.$sb_additional.'</td>
  </tr>
</table>'
.$footer
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#6
@ Dragon,
danke für die Hilfe. Die box erscheint jedoch nur auf der Startseite und daneben schreibt er jetzt {$sb_welcome}{$sb_search}{$sb_stats}{$sb_latestthreads}{$sb_additional}
Zitieren
#7
Ich habe den Code verbessert. Wink
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#8
super, hat geklappt. Nur leider erscheit auf der indexseite die box nun 2x nebeneinander. das macht der aber nur auf der indexseite
Zitieren
#9
Ersetze im Template "index":
Code:
<table width="100%"  border="0">



  <tr>
    <td width="75%" valign="top">{$forums}</td>
    <td width="25%" valign="top">{$sb_welcome}{$sb_search}{$sb_stats}{$sb_latestthreads}{$sb_additional}</td>
  </tr>
</table>
durch:
Code:
{$forums}
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#10
PERFEKT & GROSSEN DANK
für die Hilfe. Damit hast Du bestimmt auch anderen geholfen.
;-)
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Sad SideBoxes zweimal mt11341 4 1.819 27.09.2015, 19:53
Letzter Beitrag: mt11341
  Schon wieder Sideboxes Blackout 11 3.977 25.10.2009, 22:40
Letzter Beitrag: Blackout
  Sideboxes werden nicht angezeigt scoove 5 2.397 28.02.2008, 17:05
Letzter Beitrag: StefanT
Exclamation Sideboxes 2.0 yabexxl 3 2.518 07.02.2008, 09:52
Letzter Beitrag: StefanT
  Sideboxes FischI 2 2.029 28.02.2006, 10:34
Letzter Beitrag: FischI