Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 20. Februar 2014 11:12
- Tranquillius
- probiert CMS/ms aus
- Ort: Leipzig
- Registriert: 10. September 2013
- Beiträge: 52
[GELÖST] Interne News - Zugriff nur für bestimmte FEU-Gruppen
Ich wollte das Newsmodul gewisse News nur nach dem Login für bestimmte Gruppen anzeigen lassen. Meine derzeitige Umsetzung mit eben einer Sicherheitslücke:
2 Kategorien für die News. "Extern" und "Intern". "Intern" ist Kindgruppe von "Extern".
2 Seiten mit Advanced Content.
Die externe Newsseite mit Inhalt: {news category="extern"} (wird nicht im Menü angezeigt wenn eingeloggt.
Die interne Newsseite mit Inhalt: {news category="intern*"} Zeigt ALLE News an (Eltern und Kindkategorie) - Anzeige wenn eingeloggt.
Abfrage im Detail-Template:
{if $entry->category == 'Intern' && !tbtools::isLoggedIn()}
<h1 class="aligncenter">Zugriff verweigert</h1>
{else}
TEMPLATE
{/if}
Kategorieauswahl usw. ist in den Templates nicht umgesetzt.
Neuregistrierte Nutzer (via Selfregistration) werden automatisch der Gruppe "nogroup" zugewiesen, damit sehen sie keine Inhaltsseite via Advanced Content (die interne Newsseite wird für die Gruppe nicht angezeigt).
ABER - DAS EIGENTLICHE PROBLEM - DIE FRAGE HIER ANS FORUM
Nun gibt es eine Möglichkeit an die News zu kommen, wenn man nach der Registrierung sich einloggt und danach über die Suche sucht. tbtools::isLoggedIn() erfasst ja nicht die Benutzergruppe, sondern nur den Login-Status. Gibt es eine Möglichkeit die Gruppe abzufragen. Selfreg braucht ja irgendwie eine Default-Dummie-Gruppe. Oder gibt es einen anderen Lösungsweg?
Beitrag geändert von Tranquillius (20. Februar 2014 11:13)
Offline
#2 20. Februar 2014 11:34
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: [GELÖST] Interne News - Zugriff nur für bestimmte FEU-Gruppen
Dazu gibt es die Funktion tbtools::hasFeuGroupAccess('Namen,der,Gruppen'):
{if tbtools::hasFeuGroupAccess('Gruppe1,Gruppe2,Gruppe3')}
News
{/if}
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#3 20. Februar 2014 12:13
- nockenfell
- Moderator
- Ort: Gontenschwil, Schweiz
- Registriert: 09. November 2010
- Beiträge: 2.934
- Webseite
Re: [GELÖST] Interne News - Zugriff nur für bestimmte FEU-Gruppen
Es gibt auch die Funktion
public static final function hasFeuGroupAccess($feugroups = '', $assign = '')
Damit kannst du entsprechend
tbtools::hasFeuGroupAccess('intern')
Abfragen. Die Abfrabe würde ich direkt im News Template drin machen. Entweder sieht er den Text oder eben nicht.
[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog / Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox
Offline
#4 20. Februar 2014 12:45
- Tranquillius
- probiert CMS/ms aus
- Ort: Leipzig
- Registriert: 10. September 2013
- Beiträge: 52
Re: [GELÖST] Interne News - Zugriff nur für bestimmte FEU-Gruppen
Perfekt. Jetzt klappt es!
{if $entry->category == 'Intern' && !tbtools::hasFeuGroupAccess('Gruppe1, Gruppe2, Gruppe3')}
<h1 class="aligncenter">Zugriff verweigert</h1>
{else}
TEMPLATE
{/if}
Und dann noch eine News-Seite ohne Advanced Content und alles ist übersichtlich.
{if tbtools::hasFeuGroupAccess('1,4')}
{news category="intern*" pagelimit="3" sortby="news_date"}
{else}
{news category="extern" pagelimit="3" sortby="news_date"}
{/if}
Beitrag geändert von Tranquillius (20. Februar 2014 13:49)
Offline
Seiten: 1