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

  • Best Practices for Plain Text Notes
  • gepatchte PHP Version 7.4 für Windows
  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
Weiter

Neue Kommentare

  • Muss ja nicht genau php 8.3 sein
    vor 20 Stunden 22 Minuten
  • Guten morgen und Danke
    vor 1 Tag 2 Stunden
  • Evtl. versuchen auf PHP 8 zu wechseln
    vor 1 Tag 9 Stunden
  • Danke Schmittrich. Die Frage
    vor 3 Tagen 51 Minuten
  • Keine Antwort auf die Frage nach dem Woher
    vor 3 Tagen 3 Stunden
  • Danke ich werde mir die
    vor 6 Wochen 20 Stunden
  • Vielen Dank für Ihren
    vor 6 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 6 Wochen 5 Tagen
  • Vielen Dank für den
    vor 7 Wochen 23 Stunden
  • Die alten CMS Vergleiche von contentmanager.de
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250324
Registrierte User: 20570

Neue User:

  • FesObsemo
  • AnthonyhoF
  • Philiphelve

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 12 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