Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Views ›

[gelöst] Werte eines CCK-Nodereference Felds einschränken

Eingetragen von Chinees (14)
am 24.10.2010 - 11:56 Uhr in
  • Views
  • Drupal 6.x

Hallo!

Wie kann ich denn bestimmten Usern beim Bearbeiten eines CCK-Nodereference-Felds nur bestimmte Werte erlauben?

Ungefähr so: Contenttyp A enthält Referenz zu Typ B. Es existieren die Inhalte a1, b1, b2, b3. Beim Bearbeiten von a1 darf User1 dann nur b1 oder b2 referenzieren, User2 nur b2 oder b3, User3 alle bs etc...

Vielen Dank schonmal!
Chinees

‹ Ansichten-Template views-view.tpl.php trotzdem aufrufen wenn DB-Abfrage leeres Ergebnis liefert [gelöst] Views Umgebungssuche + Tax Term Filter Fehler ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst bei Node-References

Eingetragen von SteffenR@drupal.org (2262)
am 25.10.2010 - 12:08 Uhr

Du kannst bei Node-References auch Views als "Source" für die Daten nutzen. Über Views sollte man dann diese rechtlichen Sachen genauer definieren können ( hier gibt es dann ja die Möglichkeit Berechtigungen für die Anzeige zu setzen ).. Theoretisch sollte deine Anforderung dann umsetzbar sein.

SteffenR

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Steffen! Hab ich heute

Eingetragen von Chinees (14)
am 26.10.2010 - 23:46 Uhr

Hi Steffen!

Hab ich heute ausprobiert und mir eine entsprechende View erstellt. Als Argument übergebe ich die ID des Benutzerprofils (ich verwende content_profile). Dann hab ich "bei Argument nicht vorhanden -> Standardargument zur Verfügung stellen -> PHP-Code" eingestellt:

<?php

$arg
= content_profile_load('user_profile', $user->uid)->nid;
return
$arg;
?>

Wenn ich die View direkt aufrufe und die ID eines Content-Profiles an die Url anhänge funktioniert das Argument. Aber wenn ich nichts angebe, funktioniert der obige PHP-Code nicht. Hab etwas rumgespielt und es sieht so aus, als bekäme die View als Argument die ID des Content-Profiles von user1.
EDIT: Hm jetzt wird ohne Argument eine leere View zurückgeliefert, vielleicht wars ein Cache-Problem. Jedenfalls immer noch nicht was ich möchte -.-

Eigentlich möchte ich das Argument auch nur für eine bestimmte Rolle so anpassen, der Rest soll "all" bekommen. Wenn ich allerdings das hier verwende

<?php
 
if(in_array('Rolle1', $user->roles)){
   
$arg = content_profile_load('user_profile', $user->uid)->nid;
  }else{
   
$arg = 'all';
  }
?>

bekomme ich diesen Fehler:
warning: in_array() [function.in-array]: Wrong datatype for second argument in /var/www/vhosts/mydomain.com/httpdocs/sites/default/modules/views/plugins/views_plugin_argument_default_php.inc(48) : eval()'d code on line 3.

Was mache ich verkehrt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Debug

Eingetragen von stBorchert (6003)
am 27.10.2010 - 07:05 Uhr

Hallo.

Chinees schrieb

<?php $arg = content_profile_load('user_profile', $user->uid)->nid; ?>

Lass Dir doch mal ausgeben, was dort zurückkommt.
Ich wage zu bezweifeln, dasd Du das gewünschte Ergebnis bekommst.

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn ich

Eingetragen von Chinees (14)
am 27.10.2010 - 08:03 Uhr

Wenn ich dpm(content_profile_load('user_profile', $user->uid)->nid); ins Views-Template schreibe und die View direkt aufrufe, bekomme ich was ich brauche.

Wenn ich es allerdings direkt in den PHP-Code fürs Standardargument schreibe, funktionierts nicht. Und wenn ich $user ausgeben will, ist es leer.
Der obigen Warning nach zu schließen wird der Code ja in /sites/default/modules/views/plugins/views_plugin_argument_default_php.inc ausgewertet. Kann ich von dort aus irgendwie anders als mit $user an den eingeloggten user herankommen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

$user

Eingetragen von stBorchert (6003)
am 27.10.2010 - 08:18 Uhr

Wo bekommst Du denn $user her?
Hast Du <?php global $user; ?> vor den Aufruf geschrieben? Ansonsten existiert die Variable an der Stelle nämlich überhaupt nicht.

hth,

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nein hatte ich nicht -.- Mit

Eingetragen von Chinees (14)
am 27.10.2010 - 08:29 Uhr

Nein hatte ich nicht -.- Mit

<?php
global $user;
?>
funktionierts genau wie es soll.

Danke!!!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 5 Tagen
  • Hey danke
    vor 1 Woche 6 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 9 Stunden
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 4 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 4 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 2 Tagen
  • In der entsprechenden View
    vor 3 Wochen 2 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 2 Tagen
  • gelöst
    vor 5 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

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