Contao-Camp 2024
Ergebnis 1 bis 16 von 16

Thema: Backend CSS für Benutzergruppen

  1. #1
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard Backend CSS für Benutzergruppen

    Hallo,
    ich habe schon ne Weile gegoogelt und mich durchs Forum gewühlt - auch was gefunden.....nur leider leider nicht zum Laufen gebracht.

    Ich möchte mein Backend auf die Bedürfnisse des Redakteurs anpassen - manche Sachen ausblenden, manches hervorheben etc etc - und dafür eine Backend CSS laden, die nur bei bestimmten Benutzergruppen greift.

    Ich habe folgenden PHP Code gefunden

    initconfig.php
    PHP-Code:
    if (TL_MODE == 'BE' && \BackendUser::getInstance()->isMemberOf(1/*Die Zahl bezieht sich auf die ID der Benutzergruppe*/
    {
    $GLOBALS['TL_CSS'][] = 'files/backend/be.css';

    Hat jemand ne Idee?

    vielen Danke im voraus

    Sophia

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Was genau funktioniert nun nicht?

  3. #3
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Die CSS Datei wird nicht geladen - wenn ich mich unter dem Account einlogge, gibts keinerlei Änderungen.

    Mit dem CSS ist alles Ok.

    PHP-Code:
    if(TL_MODE) == 'BE')
    $GLOBALS['TL_CSS'][] = 'files/backend/be.css'
    Damit funktionierts - aber eben für alle.....auch den Admin - und genau das will ich ja nicht - nur die entsprechende Nutzergruppe soll das angepassre Backend zu Gesicht bekommen

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    In deinem PHP Code von vorhin hat eine Klammer gefehlt, aber das sollte dir mit einem Fehler aufgefallen sein.
    PHP-Code:
    if (TL_MODE == 'BE' && \BackendUser::getInstance()->isMemberOf(1))
    {
        
    $GLOBALS['TL_CSS'][] = 'files/backend/be.css';

    Ist '1' die richtige ID?

  5. #5
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Jap - das mit der Klammer....habs nur von meinem Montitor abgetippt - da stimmt auch alles...

    Die "1" ist die ID der Benutzergruppe mit dem eingeschränkten Zugang

    - ich habe wirklich keinen Plan, warum das nicht funktioniert

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Was wird ausgegeben, wenn du
    PHP-Code:
    var_dump( \BackendUser::getInstance()->groups ); 
    in deine initconfig.php schreibst?

  7. #7
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    da kommt:

    array(1) {[0]=> NULL }

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Da scheint aber dann etwas mit der Gruppenzuweisung bei diesem Benutzer nicht zu stimmen.

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Hm, habe es selbst nochmal getestet - die initconfig.php scheint zu früh geladen zu werden. So wie es aussieht kann man dort nicht auf den BackendUser zugreifen. Alternativ könntest du den gleichen Code in die dcaconfig.php einsetzen.

  10. #10
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Hmmmm - ich habe ganz normal ne Gruppe angelegt - testweise mal alle Felder freigeschaltet. Benutzer erstellt und dann der Gruppe zugewiesen - kommt auch keine Fehlermeldung oder so.

    Die Ausgabe array(1) {[0]=>NULL} steht permanent dort - egal ob Admin, Benutzer oder LoginBereich von Contao - das soll so sein oder?

  11. #11
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Ok, folgender Code funktioniert in der initconfig.php:
    PHP-Code:
    \BackendUser::getInstance()->authenticate();
    if (
    TL_MODE == 'BE' && \BackendUser::getInstance()->isMemberOf(1))
    {
        
    $GLOBALS['TL_CSS'][] = 'files/backend/be.css';

    oder besser:
    PHP-Code:
    if (TL_MODE == 'BE' && \BackendUser::getInstance()->authenticate() && \BackendUser::getInstance()->isMemberOf(1))
    {
        
    $GLOBALS['TL_CSS'][] = 'files/backend/be.css';


  12. #12
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Ok - ich probier es mal - melde mich gleich wieder

    wenn ich aber die CSS für alle (also ohne spezifischen Nutzer) in der initconfig angebe - dann klappt das problemlos....

    ich teste das mal mit der dcaconfig

  13. #13
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Zitat Zitat von Sophia86 Beitrag anzeigen
    ich teste das mal mit der dcaconfig
    Du kannst es auch in der initconfig.php machen mit der von mir erwähnten Anpassung. Aber es ist im Prinzip egal wo du es machst.

  14. #14
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Es klappt - Juhuuuuuuuuu

    vielen vielen Dank - eine Frage habe ich noch - du bist ja verdammt fit in Contao - ich habe sie gestern schonmal in einer anderen Rubrik gestellt.

    Kann man im ArtikelBaum den Artikeln einzelne Klassen zuweisen - zB über ein extra Eingabefeld im Artikel via DCA - damit man gezielt im Backend auf einzele Artikel per CSS zugreifen kann?

  15. #15
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.896
    Partner-ID
    10107

    Standard

    Naja, es gibt DCA callbacks, womit du theoretisch das aussehen eines Eintrags komplett selbst gestalten kannst. Mehr kann ich dir leider auch nicht sagen.

  16. #16
    Contao-Nutzer
    Registriert seit
    23.01.2016.
    Beiträge
    17

    Standard

    Ok - danke für den Hinweis - und natürlich vor allem für die CSS-Benutzer-Sache

    bei Gelegenheit werde ich mich dann mal mit den Callbacks auseinandersetzen - heute reichen erstmal css-child und n paar Selektoren

    viele Grüße und einen tollen Start in ein hoffentlich erholsames Wochenende

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •