Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

Benutzerrolle des Autors des Nodes -> $author->roles ?

Eingetragen von drupaler3000 (78)
am 30.07.2008 - 17:23 Uhr in
  • Allgemeines zu Drupal

Ich habe folgende Seite bei drupal gefunden:

Display content according to User Role AND Author Role

<?php
global $user;
$author = user_load(array('uid' => $node->uid));

if ((
in_array('X', $user->roles)) && (in_array('A', $author->roles)))
{
print
"TRUE";
}

elseif ((
in_array('Y', $user->roles)) && (in_array('B', $author->roles)))
{
print
"FALSE";
}
?>

Ich habe den Code auf meine Bedürfnisse angepasst, und die "&&" weggelassen, weil ich einfach nur die Rolle des Autoren, der das Review geschrieben hat, überprüfen will.

Also sieht der Code dann so aus:

<?php
global $user;
$author = user_load(array('uid' => $node->uid));

if ((
in_array('X', $author->roles)))
{
print
"X";
}

elseif ((
in_array('Y', $author->roles)))
{
print
"Y";
}
else
{
print
"Z";
}
?>

Ich habe hier die Funktion so erweitert, dass Z ausgegeben wird, wenn keine der beiden Rollen darüber zutreffen.
Die Funktion funktioniert wunderbar mit $user->roles, dann gibt er den entsprechenden Wert wieder. Bei $author->roles schreibt die Funktion immmer nur z, obwohl der Autor des Nodes die Rolle y hat.

Hat jemand ne Ahnung, warum die funktion nicht wie erwartet funktioniert?

‹ [gelöst] Fehlermeldung beim Bildupload Ubercart Kommentar Funktion wird nicht überall angezeigt (gelöst) ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich habe die Lösung des

Eingetragen von drupaler3000 (78)
am 31.07.2008 - 14:05 Uhr

Ich habe die Lösung des Problems gefunden:

Die Funktion muss so aussehen, dass stand leider nicht dabei:

<strong>function your_function($node) {</strong>
global $user;
$author = user_load(array('uid' => $node->uid));

if ((in_array('bla', $author->roles)))
{
print "bla";
}

elseif ((in_array('blah', $author->roles)))
{
print "blah";
}

else
{
print "blah";
}
}

Der wichtige Teil ist ($node) in den Klammern nach dem Namen der Funktion.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ist dies mir Views auch möglich?

Eingetragen von Apfel007 (143)
am 18.08.2008 - 08:38 Uhr

Hallo zusammen,

kann man so eine Abfrage auch mit views realisieren?

Gruß Apfel007

  • Anmelden oder Registrieren um Kommentare zu schreiben

[fixed]Lang wurde hier nichts

Eingetragen von tomtone (84)
am 24.06.2010 - 11:34 Uhr

Lang wurde hier nichts geschrieben, jedoch habe ich versucht es für meine Zwecke zu nutzen um damit eine Abfrage in den Panels zu realisieren

der Code:

global $user;
  $author = user_load(array('uid' => $node->uid));
  if(in_array('B', $author->roles)){
    return 'TRUE';
  }
  else{
    return 'FALSE';
  }

Das ist der Code den ich bei 'Selection rules' eingefügt habe, um nur bestimmte Nodes mit dem gewählten Panel zu versehen. doch nun gibt es bei allen anderen Nodes deren Author nicht der Benutzergruppe B angehören, sondern der Gruppe A der Fehler

-->> warning: preg_match_all() expects parameter 2 to be string, array given in C:\xampp\htdocs\drupal_final\sites\all\modules\ctools\includes\context.inc on line 604.

damit kann ich nur leider nicht viel anfangen.

Ist evtl der Fehler, das ich keine Alternative Darstellung habe? (Habe lediglich die eine Variante mit der Regel)

/e es musste nur gepatched werden, schon ist alles gut

  • 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 22 Stunden
  • Theme
    vor 2 Tagen 23 Stunden
  • Welches Theme benutzt du
    vor 3 Tagen 5 Stunden
  • Mit Responsive Raster hatte
    vor 3 Tagen 18 Stunden
  • Hallo Alex,um das Häkchen
    vor 4 Tagen 3 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 10 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