Beiträge: 16
Themen: 4
Registriert seit: 22.10.2006
Hallo,
bin es vom wBB gewohnt, dass man über diverse if-then-else-Abfragen die Anzeige von Grafiken steuern kann. Wie schaut das beim MyBB aus? Möchte je anch Gruppe (Gast, Registriert, Admin) unterm Header eine etwas andere Navi anzeigen, wie stell ich das am besten an.
Greetz & THX
ETESTS
Beiträge: 1.626
Themen: 41
Registriert seit: 24.01.2006
22.10.2006, 22:58
(Dieser Beitrag wurde zuletzt bearbeitet: 23.10.2006, 11:28 von Garlant.)
Hallo ETESTS,
Das kannst du in der global.php mit ein "bisschen" php Code machen. Dabei hängt das bisschen je nachdem vom Umfang ab.
Hier eine Rohschablone wie du so etwas machen könntest:
PHP-Code:
if ($mybb->user['uid'] != '0')
{
// User ist kein Gast, aber wir wissen noch keine Usergruppe
$str = "$mybb->user['additionalgroups']";
$array = explode(',', $str);
foreach ($array as $addtionalgroup)
{
if ($mybb->user['usergroup'] == '4' || $addtionalgroup == '4')
{
# User ist ein Admin
eval("\$adminnavi =\"".$tempalte->get("headernavigation_admin")."\";");
}
else
{
# User ist ein normaler User
$adminnavi = '';
eval("\$usernavi =\"".$tempalte->get("headernavigation_user")."\";");
}
}
}
else
{
// User ist ein Gast und schon in einer Usergruppe
$adminnavi = '';
$usernavi = '';
eval("\$guestnavi =\"".$tempalte->get("headernavigation_guest")."\";");
}
Jetzt kannst du dir Beispielsweiße Tempaltes erstellen. Die Maske ist beliebig erweiterbar, auch wenn es jetzt vielleicht etwas nach Wirrwarr aussieht. Getestet ist das ganze allerdings nicht.
Ich gebe keinen Support per Messenger oder PN!
Beiträge: 16
Themen: 4
Registriert seit: 22.10.2006
23.10.2006, 07:32
(Dieser Beitrag wurde zuletzt bearbeitet: 04.11.2006, 12:54 von ETESTS.)
Wie gut, dass ich nur noch 2 zusätzliche Gruppen zu den Standardgruppen habe. *g*
Danke - werde es mal versuchen.
Im wBB wars so:
PHP-Code:
<if($wbbuserdata['userid'])><then><if(!$wbbuserdata['a_acp_or_mcp'])><then><img src="{$style['imagefolder']}/top_left_user.gif" border="0" alt="" title="" /></then></if><a href="usercp.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_usercp.gif" border="0" alt="{$lang->items['LANG_GLOBAL_USERCP']}" title="{$lang->items['LANG_GLOBAL_USERCP']}" /></a><if($wbbuserdata['receivepm']==1)><then><a href="pms.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_pms.gif" border="0" alt="{$lang->items['LANG_GLOBAL_PMS']}" title="{$lang->items['LANG_GLOBAL_PMS']}" /></a></then></if></then><else><img src="{$style['imagefolder']}/top_left.gif" border="0" alt="" title="" /><a href="register.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_register.gif" border="0" alt="{$lang->items['LANG_GLOBAL_REGISTER']}" title="{$lang->items['LANG_GLOBAL_REGISTER']}" /></a></else></if><a href="../page/"><img src="{$style['imagefolder']}/top_website.gif" border="0" alt="Zur Website" title="Zur Website" /></a><a href="calendar.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_calendar.gif" border="0" alt="{$lang->items['LANG_GLOBAL_CALENDAR']}" title="{$lang->items['LANG_GLOBAL_CALENDAR']}" /></a><a href="memberslist.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_members.gif" border="0" alt="{$lang->items['LANG_GLOBAL_MEMBERSLIST']}" title="{$lang->items['LANG_GLOBAL_MEMBERSLIST']}" /></a><a href="team.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_team.gif" border="0" alt="{$lang->items['LANG_GLOBAL_TEAM']}" title="{$lang->items['LANG_GLOBAL_TEAM']}" /></a><a href="search.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_search.gif" border="0" alt="{$lang->items['LANG_GLOBAL_SEARCH']}" title="{$lang->items['LANG_GLOBAL_SEARCH']}" /></a><a href="misc.php?action=faq&sid=$session[hash]"><img src="{$style['imagefolder']}/top_faq.gif" border="0" alt="{$lang->items['LANG_GLOBAL_FAQ']}" title="{$lang->items['LANG_GLOBAL_FAQ']}" /></a><if($wbbuserdata['a_can_use_acp']==1 && $wbbuserdata['a_acp_or_mcp']==1)><then><a href="acp/index.php" target="_blank"><img src="{$style['imagefolder']}/top_acp.gif" border="0" alt="{$lang->items['LANG_GLOBAL_ACP']}" title="{$lang->items['LANG_GLOBAL_ACP']}" /></a></then></if><if($wbbuserdata['a_can_use_acp']==1 && $wbbuserdata['a_acp_or_mcp']==0)><then><a href="acp/index.php" target="_blank"><img src="{$style['imagefolder']}/top_modcp.gif" border="0" alt="{$lang->items['LANG_GLOBAL_MODCP']}" title="{$lang->items['LANG_GLOBAL_MODCP']}" /></a></then></if><a href="index.php?sid=$session[hash]"><img src="{$style['imagefolder']}/top_start.gif" border="0" alt="{$lang->items['LANG_GLOBAL_TOINDEX']}" title="{$lang->items['LANG_GLOBAL_TOINDEX']}" /></a><if(!$wbbuserdata['userid'])><then><img src="{$style['imagefolder']}/top_right.gif" border="0" alt="" title="" /></then></if><if($wbbuserdata['userid'])><then><if(!$wbbuserdata['a_acp_or_mcp'])><then><img src="{$style['imagefolder']}/top_right_user.gif" border="0" alt="" title="" /></then></if></then></if>
Beiträge: 16
Themen: 4
Registriert seit: 22.10.2006
Hab deinen Code so umgesetzt:
PHP-Code:
eval("\$htmldoctype = \"".$templates->get("htmldoctype", 1, 0)."\";");
//Abfrage für die TopNavi
if ($mybb->user['uid'] != '0')
{
// User ist kein Gast, aber wir wissen noch keine Usergruppe
$str = "$mybb->user['additionalgroups']";
$array = explode(',', $str);
foreach ($array as $addtionalgroup)
{
if ($mybb->user['usergroup'] == '4' || $addtionalgroup == '4')
{
// User ist ein Admin
eval("\$topnavi_admin =\"".$tempalte->get("topnavi_admin")."\";");
}
else
{
// User ist ein normaler User
$adminnavi = '';
eval("\$topnavi_normal =\"".$tempalte->get("topnavi_normal")."\";");
}
}
}
else
{
// User ist ein Gast und schon in einer Usergruppe
$adminnavi = '';
$usernavi = '';
eval("\$topnavi_guest =\"".$tempalte->get("topnavi_guest")."\";");
}
//Ende der Navi-Abfrage
eval("\$header = \"".$templates->get("header")."\";");
Jedoch kommt dann beim Aufruf des Forums:
Code:
Fatal error: Call to a member function on a non-object in /home/rxdreusr/www.meine-domain.de/forum/global.php on line 348
In dieser Zeile steht:
Code:
eval("\$topnavi_admin =\"".$tempalte->get("topnavi_admin")."\";");
Hab bloß keinen Schimmer, wo mein Fehler liegt. Bin für die Erleuchtung dankbar.
Grüße
Beiträge: 108
Themen: 15
Registriert seit: 18.01.2006
Es muss in allen drei eval-Zeilen "template" statt "tempalte" heißen.
In den sanften Worten der heiligen Jungfrau Maria: "Was'n das für'n Scheiß?"
Beiträge: 16
Themen: 4
Registriert seit: 22.10.2006
14.01.2007, 12:23
(Dieser Beitrag wurde zuletzt bearbeitet: 14.01.2007, 12:27 von ETESTS.)
Bricktop schrieb:Es muss in allen drei eval-Zeilen "template" statt "tempalte" heißen.
*peinlich, peinlich*
*duck udn weg*
Danke dir.
ETESTS
PS: Garlant trägt schuld.
PPS: Nochmal Korrektur, es muss "template
s" heißen.