Stand: 30.12.2008 04:56 aktuelle Version auf phpBB.de

Apache At Work Communities Community Building Informationen und Hinweise Installation/Konfiguration/Update MySQL PHP phpBB-Optimierungen phpBB3 Rechtliches Server & Technik Snippets Templates und Mods

Knowledge Base Offline -> At Work -> Snippets -> Nur für bestimmte Gruppen anzeigen

Nur für bestimmte Gruppen anzeigen
Autor: saerdnaer
Stand: 30.12.2008 04:56
Neuste Version unter: http://www.phpbb.de/doku/kb/best_gruppen

### Nur für bestimmte Gruppen anzeigen

##### Manche Bereiche soll nicht jeder sehen dürfen. Das folgende Snippet ermöglicht, beliebige Ausgaben nur für bestimmte Gruppen anzuzeigen.

phpBB Version: 2.0.x

Code:

#
#-----[ Öffne ]------------------------------------------
#
includes/functions.php
#
#-----[ Finde ]------------------------------------------
#
?>
#
#-----[ Füge davor ein ]-------------------------------------------
#
function member_of($group_id, &$userdata)
{
global $db;
if ( !$userdata['session_logged_in'] )
{
return false;
}
if ( isset($userdata['user_member_of_' . $group_id]) )
{
return $userdata['user_member_of_' . $group_id];
}
$sql = "SELECT count(*) AS num FROM " . USER_GROUP_TABLE . "
WHERE user_id = '" . $userdata['user_id'] . "' AND user_pending = 0 AND group_id IN ( " . $group_id . " )";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not get group auth', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
if ( $row['num'] > 0 )
{
return $userdata['user_member_of_' . $group_id] = true;
}
return $userdata['user_member_of_' . $group_id] = false;
}
#
#-----[ Öffne ]------------------------------------------
#
includes/page_header.php
#
#-----[ Finde ]------------------------------------------
#
if ( !empty($userdata['user_popup_pm']) )
{
$template->assign_block_vars('switch_enable_pm_popup', array());
}
#
#-----[ Füge danach ein ]-------------------------------------------
#
if ( member_of('123', $userdata) )
{
$template->assign_block_vars('switch_usergroup_123', array());
}

wobei 123 jeweils die Gruppen ID ist. Mehrere Gruppen können mit einem Komma getrennt eingegeben werden.
Anschließend den entsprechenden Teil in der Template Datei mit folgendem Schalter umschließen:

Code:
<!-- BEGIN switch_usergroup_123 --> Hier der Code der nur für die Gruppe sichtbar sein soll. <!-- END switch_usergroup_123 -->

Knowledge Base Offline -> At Work -> Snippets -> Nur für bestimmte Gruppen anzeigen

| phpBB.de Knowledge Base (Offline-Version) ©2005 Sascha Carlin und das phpBB.de-Team - Impressum Das Kopieren von Artikeln (auch auszugsweise) ist nur nach ausdrücklicher Genehmigung erlaubt! phpBB.de: Infos | Forum | Downloads | Dokumentation |