Seite 1 von 3

Nur für bestimmte Benutzergruppen <- erledigt

Verfasst: 27.09.2005 01:17
von steffi1977
Ich habe mir mal vor längerer Zeit diesen Snippet kopiert.
Jetzt wollte ich den wieder nutzen und habe alles so eingegeben wie da angegeben, nur leider wird mir dann nichts angezeigt :(
Der Link fehlt, ich habe die richtige ID eingesetzt.
Nur für bestimmte Benutzergruppen
Author: Saerdnaer
Beschreibung: Mit diesem Snippet kann man Bereiche nur für bestimmte Gruppen anzeigen.
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('43', $userdata) )
{
$template->assign_block_vars('switch_usergroup_43', 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_43 -->
Hier der Code der nur für die Gruppe sichtbar sein soll.
<!-- END switch_usergroup_43 -->
in der index_body habe ich das wie folgt eingegeben:
<!-- BEGIN switch_usergroup_43 -->
<tr>
<td class="row1" align="left" nowrap="nowrap" onMouseOver="this.style.cursor='hand';">
<div class="genmed" onclick="SwitchMenu('sub8')">&nbsp;<img src="./images/rootplus.gif" />&nbsp;<b>Über 18</b></div>
<span class="genmed">&nbsp;&nbsp;<img src="templates/subSilver/images/bl.gif" name="Home" />&nbsp;<a href="#" onClick="MyWindow=window.open('http://www.forum-quasselecke.de/....... ... height=520'); return false;">ab 18 Smilies</a></span><br />
</span>
</td>
</tr>
<!-- END switch_usergroup_43 -->
Was ist falsch ??

Verfasst: 27.09.2005 09:51
von Markus67
Hi ...

und du bist sicher dass 43 die richtige Gruppen-ID ist? Die kommt mir ein bischen nieder vor.

Markus

Verfasst: 27.09.2005 12:12
von steffi1977
oben steht
ich denke das dann die 43 die ID ist oder ?

Verfasst: 27.09.2005 12:26
von Markus67
Hi ...

f=43 aber nicht die Gruppen-ID sondern die Foren-ID :wink:

Markus

Verfasst: 27.09.2005 13:54
von steffi1977
was ist dann die ID

Bei der GRuppe ist der Link:
xxxx

Verfasst: 27.09.2005 14:10
von Markus67
Bei der GRuppe ist der Link:
http://www.forum-quasselecke.de/quassel ... pcp.php?[b]g=6[/b]&sid=6d5b80ad57a468ca3b54f00f2c1b32ae
Markus

Verfasst: 27.09.2005 14:19
von steffi1977
habe die 6 eingegeben, wird aber trotzdem nicht angezeigt :(

Verfasst: 27.09.2005 14:21
von Markus67
Hi ...

die 6 steht auch in der page_header.php ?

Markus

Verfasst: 27.09.2005 14:22
von steffi1977
so sieht es aus
$template->assign_block_vars('switch_enable_pm_popup', array());
}

if ( member_of('6', $userdata) )
{
$template->assign_block_vars('switch_usergroup_6', array());
}

// BEGIN

Verfasst: 27.09.2005 14:27
von Markus67
Hi ...

Wo willst du denn das ganze einfügen?
Was soll nur den Usern der Gruppe zugänglich gemacht werden?

Markus