Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

[gelöst] Benutzer-Rolle auf einer Node abfragen?

Eingetragen von Alpenmaid (147)
am 08.04.2018 - 08:39 Uhr in
  • Themes & Theming
  • Drupal 8.x

Hi,

gibt es eine Möglichkeit, die spezifische Benutzer-Rolle auf Node-Ebene abzufragen?

Wenn ja, wäre ich dankbar für einen Code-Schnipsel :)

‹ Ab und zu Fehlermeldung, wenn ich Seiten bearbeite und dann speichere [gelöst] Benutzer-Rolle auf einer Node abfragen? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Was genau hast du vor?

Eingetragen von ronald (3857)
am 08.04.2018 - 17:19 Uhr

vielleicht gibt es bereits ein Modul, das dies erledigt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich habe den Inhaltstyp

Eingetragen von Alpenmaid (147)
am 08.04.2018 - 18:44 Uhr

Ich habe den Inhaltstyp Hunde. Für jeden Hund gibt es an die 30 Felder, die ausgefüllt werden zu genetischen Themen etc.
Diese Infos sind in Blöcke aufgeteilt, die man auch sichtbar und unsichtbar schalten kann mit einer Checkbox.

Aber ich möchte zusätzlich, dass nur die registrierten und freigeschalteten Vereinsmitglieder alle Daten sehen können (soweit über Checkbox der block freigeschaltet ist) und die einfachen angemeldeten Besucher oder Gäste nur das Minimal-Set quasi.

Ich hoffe, ich habe mich verständlich genug ausgedrückt bei all dem :D

Bisher habe ich nur "is_admin" gefunden. Das nutze ich auch für andere zwecke. Aber wichtig wäre eben die wirkliche Rolle des aktuellen Users als Variable in twig nutzen zu können.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ich wuerde dies mit views angehen

Eingetragen von ronald (3857)
am 08.04.2018 - 23:02 Uhr

einer view kann man einen Filter mitgeben, der den Zugriffslevel beruecksichtigt.
Und den Gruppen bietet man einfach unterschiedliche Views an.

Dann gibt es zwei views. Eine mit allen Feldern, die andere mit reduzierten Informationen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Aber es geht doch um die

Eingetragen von Alpenmaid (147)
am 09.04.2018 - 05:17 Uhr

Aber es geht doch um die Content-Node und nicht um Views.

Ich will ja nicht eine Übersicht der Hunde erstellen, sondern die Seite des Hundes selbst individuell anzeigen.
So wie es eben schon mit "is_admin" für Administratoren-Rechte geht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ronald schrieb vielleicht

Eingetragen von glycid (921)
am 09.04.2018 - 07:29 Uhr
ronald schrieb

vielleicht gibt es bereits ein Modul, das dies erledigt?

gibt's wohl (noch) nicht, zumindest hab ich keines gefunden. Über den guten alten node_access hook geht's aber recht einfach. Hier ein Beispiel für einen Inhaltstypen "Tickets", den nur die Rollen Admin und Redaktion sehen dürfen:

<?php
/**
* Implements hook_node_access().
*
* Restrict node access for tickets.
*/
function MY_MODULE_node_access(\Drupal\node\NodeInterface $node, $op, \Drupal\Core\Session\AccountInterface $account) {

 
$type = $node->bundle(); // get node type
 
$roles = $account->getRoles(); // get current user's roles

 
if ($type == 'ticket' && $op == 'view') { // act on ticket view mode
    // if user role is not redaktion or administrator, permission is denied
   
if (in_array('redaktion', $roles)) {
      return \
Drupal\Core\Access\AccessResult::neutral();
    }

    elseif (
in_array('administrator', $roles)) {
      return \
Drupal\Core\Access\AccessResult::neutral();
    }

    else {
// otherwise access from settings
     
return \Drupal\Core\Access\AccessResult::forbidden();
    }
  }
}
?>

MY_MODULE musst du gegen den Namen deines Moduls tauschen und natürlich die Rollen und den gewünschten Inhaltstypen anpassen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ach halt, du willst quasi

Eingetragen von glycid (921)
am 09.04.2018 - 07:38 Uhr

ach halt, du willst quasi dass Gäste nur bestimmte Felder des Hunde- Node Types sehen, oder?

Dann kannst du das Field Permission Modul nehmen: https://www.drupal.org/project/field_permissions oder den entsprechenden hook selber verwenden:
https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21Entity%21...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke, das sind tolle Tipps!

Eingetragen von Alpenmaid (147)
am 09.04.2018 - 12:59 Uhr

Danke, das sind tolle Tipps! Ich werde ausprobieren, was für mich passt und ob ich es auch hinkriege :D

Es geht nicht um Gäste, sondern und eine spezielle Rolle.
Denn es soll Angemeldete Benutzer geben und Vereinsmitglieder als Rolle... neben weiteren die hier jetzt nicht relevant sind.

  • Anmelden oder Registrieren um Kommentare zu schreiben

So ... nach ersten Test,

Eingetragen von Alpenmaid (147)
am 10.04.2018 - 11:28 Uhr

So ... nach ersten Test, denke ich, dass das Modul genau das ist, was meine Anforderungen rundherum erfüllt.

Also nochmals DANKE! <3

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 2 Tagen 16 Stunden
  • Textboxen mit Tabelle
    vor 2 Tagen 22 Stunden
  • Du sollst ja auch keine
    vor 2 Tagen 23 Stunden
  • Theme
    vor 2 Tagen 23 Stunden
  • Welches Theme benutzt du
    vor 3 Tagen 5 Stunden
  • Mit Responsive Raster hatte
    vor 3 Tagen 19 Stunden
  • Hallo Alex,um das Häkchen
    vor 4 Tagen 4 Stunden
  • Modul view_unpublished
    vor 5 Tagen 7 Stunden
  • Modul "override node options"
    vor 6 Tagen 1 Stunde
  • Im Grunde ist dass ein
    vor 1 Woche 1 Tag

Statistik

Beiträge im Forum: 250270
Registrierte User: 20477

Neue User:

  • Robertnobia
  • AltonRaf
  • JeffreyPaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 13 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association