Seite 1 von 2
seite nur für bestimmte gruppen sichtbar
Verfasst: 20.12.2009 23:23
von Ralfprivat
hallöchen,
mal wieder ein problemchen.
wie kann ich das machen das wen gäste und registierte eine bestimmte seite ( teil_1) die ich erstelle sehen können. und wen ich das mitglied zu bestimmten gruppen hinzu füge soll der nicht mehr sie seite (teil_1) sehen sonder die seite (teil_2).
es geht mit gast und registierten usern, das habe ich getestet.
Code: Alles auswählen
<!-- IF S_DISPLAY_USERMENU -->
<!-- IF not S_USER_LOGGED_IN -->
<!-- IF S_DISPLAY_WELCOME -->
<!-- IF S_DISPLAY_WELCOME_GUEST and S_USER_LOGGED_IN -->
<!-- ELSE -->
<!-- INCLUDE portal/block/welcome2.html -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
<!-- IF S_DISPLAY_WELCOME -->
<!-- IF S_DISPLAY_WELCOME_GUEST and S_USER_LOGGED_IN -->
<!-- ELSE -->
<!-- INCLUDE portal/block/welcome.html -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
das muss doch auch anders gehen mit gruppen oder.
gruß ralf
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 20.12.2009 23:24
von Metzle
Hallo,
schau dir mal dieses Snippet an, das sollte das bewerkstelligen, was du suchst:
Gruppenzugehörigkeit eines Benutzers prüfen
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 21.12.2009 22:57
von Ralfprivat
hallo,
das liest sich ja sehr gut. das müsste sowas sein was ich suche leider reichen meine kenntnisse dafür nicht so aus.
um das alles einzufügen in den bestimmten seiten müsste man mehr vom phpbb3 wissen.
gibt es noch eine einfachere lösung die auch für anfänger geeignet ist.
gruß ralf
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 21.12.2009 23:10
von Metzle
Hallo,
dieses Snippet ist die einfachste Variante, meiner Meinung nach.
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 00:51
von BaerchenHH
Mach das einfach so:
Öffne: includes/funktions.php
Suche:
Davor einfügen:
Code: Alles auswählen
// Prüfung der Mitgliedschaft für Template-Gruppen-Variable
if ( !function_exists('group_memberships') )
{
include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
}
$groups = group_memberships(false,$user->data['user_id']);
foreach ($groups as $grouprec)
{
$template->assign_vars(array(
'S_GROUP_' . $grouprec['group_id'] => true
));
}
Nun hast du in allen Templates den Switch
zur Verfügung, wobei "x" der Gruppen-ID des anzusprechenden Users entspricht.
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 12:28
von Ralfprivat
Hallo BaerchenHH,
So habe ich das schon probiert, der code steht schon so in der funktin.php, und mit <!-- IF S_GROUP_x --> das x ersetze ich durch die gruppe, das funktioniert und hatte ich schon probiert.
das problem ist nur das das für einzelne gruppen ist.
wen ich 3 gruppen habe und mach mir 3 seiten (W, W1 und W2)
W für die die in keiner gruppe sind
W1 für gruppe ID7
W2 für gruppe ID8
wen einer in 2 gruppen ist dann sieht er natürlich seite W1 und W2.
gruß ralf
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 17:27
von Dr.Death
Hi,
dann verbinde die Schalter doch mit "ODER" Operanden:
Oder du schliesst die eine Gruppe immer aus:
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 18:07
von Ralfprivat
hallo Dr.Death,
so einfach ist das bestimmt nicht.
ich möchte :
Seite will = nur für ID1 und ID2 zu sehen ist
Seite will_2 = nur für ID5, ID7 und ID9 zu sehen ist
wen ich das so mache
Code: Alles auswählen
<!-- IF S_GROUP_1 or S_GROUP_2 -->
<!-- INCLUDE portal/block/will.html -->
<!-- ENDIF -->
<!-- IF S_GROUP_5 or S_GROUP_7 or S_GROUP_9 -->
<!-- INCLUDE portal/block/will_2.html -->
<!-- ENDIF -->
dann sehen nicht registrierte (ID1) und registriete (ID2) die seite will das ist ok .
aber die leute die in den Gruppen (ID5 , ID7, ID9) sind sehen beide seiten und das sollte nicht sein. die dürfen die seite will nicht sehen.
gruß ralf
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 20:08
von Dr.Death
Dann stimmt aber deine Logik nicht.
Alle User der Gruppen 5, 7 und 9 sind auch registrierte Mitglieder... und sehen damit auch Seite für Gruppe 2.
Re: seite nur für bestimmte gruppen sichtbar
Verfasst: 22.12.2009 22:02
von Ralfprivat
hallo,
meine logig war das dieses gruppen alle eigenständig sind.
ich dachte das die gruppen getrennt sind.
ist naürlich logisch das die mitglieder in den gruppen auch alle gegistriert sind.
hab es geschaft hab es so gemacht.
Code: Alles auswählen
<!-- IF S_GROUP_1 or S_GROUP_2 and not S_GROUP_5 and not S_GROUP_7 and not S_GROUP_9-->
<!-- INCLUDE portal/block/will.html -->
<!-- ENDIF -->
<!-- IF S_GROUP_5 or S_GROUP_7 or S_GROUP_9 -->
<!-- INCLUDE portal/block/will_2.html -->
<!-- ENDIF -->
ob das so alles richtig ist weiß ich nicht aber es funktioniert.
gruss ralf