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

Nodereference + View mit Filter current User oder Admin

Eingetragen von Blackice2999 (55)
am 23.08.2009 - 11:34 Uhr in
  • Views
  • Drupal 6.x

Hi @all,

ich habe folgende Problematik. Ich habe zwei Inhaltstypen:

- Inhaltstyp: Beitrag

- Inhaltstyp: Beitragsfach
- Feld: nodereference auf Beitrag per View

Mein View:
- Beziehungen: Beitragsversion: Benutzer
- Felder: Beitragsversion: Titel
- Filter:
- Nodetyp = Beitragsfach
- Node: Veröffentlicht oder Verwalter
- Benutzer: Aktuell

Wenn ich jetzt einen Beitrag als User erstelle, zeigt er mir im Nodereferenz Feld nur meine Beitragsfach Inhalte an. Das ist auch genau das was ich möchte. Aber! Sobald ein Moderator / Admin einen Beitrag bearbeitet, sieht er nur noch seine eigenen Beitragsfächer und nicht die vom User (was ja logisch ist aufgrund des Views) Beim Speichern des Beitrages wird dadurch natürlich die Zuordnung zum Beitragsfach überschrieben.

Wie kann ich erreichen, das der Moderator alle Beitragsfächer sieht ? Würde mich über Ideen freuen.

Vielen Dank im voraus.

Gruß Dennis

‹ Es wurde eine nicht erlaubte Auswahl entdeckt. Wenden Sie sich bitte an den Administrator der Website. Exposed Views Filter mit auf Node-Seiten übernehmen mit richtiger Auswahl, damit dort weiter gesucht werden kann. ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösung für mein Problem

Eingetragen von Blackice2999 (55)
am 24.08.2009 - 09:39 Uhr

Hi @all,

mittlerweile habe ich eine Lösung für mein Problem gefunden. Ich habe mein View mittlerweile dahin gehen geändert, das ich keinen Filter "Benutzer: aktiv" mehr einsetzen, sondern den Benutzer (UID) über ein Argument zu übergeben. Genau hier gibt es zwei Wege weiter zu verfahren.

Weg 1) - eval()
Beim Argument gibt es ja die Möglichkeit einen Standartwert als PHP Code erzeugen zu lassen wenn kein Argument übergeben wird. Diesen Weg wollte ich nicht gehen da mir mal im Chat vor längerer Zeit gesagt wurde eval() kostet zum einen Zeit zum anderen kann es bei falscher Benutzung ein Sicherheitsrisiko sein. Deshalb wollte ich diesen Weg irgendwie umgehen.

Weg 2) - hook_views_pre_view (&$view, &$display_id, &$args)
Der Programmatische Weg und wohl hoffentlich auch der bessere Weg. Ich habe mir ein Modul erzeugt welches beim Aufruf des Views überprüft ob es mein Nodereference View ist

<?php
if ($view->name == 'users_beitragsfaecher_ref')
?>

Anschliessend überprüfe ich ob wir eine Node neu erzeugen oder Editieren in dem ich den aktuelle Pfad auseinander nehme:

<?php
     $nid
= 0;
   
$path = explode('/', $_GET['q']);
    if(
sizeof($path) == 3 && $path[0] == 'node' && is_numeric($path[1]) && $path[2] == 'edit' ) {
     
$nid = $path[1];
    }
?>

Jetzt kann ich die UID an das View übergeben:

<?php
   
if ($nid) {
       
// Node Edit
   
} else {
     
// neue Node, wir können den aktuellen User übergeben...
     
global $user;
     
$uid = $user->uid;
    }
// setzen des arguments im view...
$view->set_arguments(array($uid));
?>

Ich hoffe ich konnte als neuer etwas dazu beitragen für jemanden der ein ähnliches Problem hat.

Gruß Dennis

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • (gelöst)Drupal 11 installieren
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 5 Wochen 4 Tagen
  • Vielen Dank für Ihren
    vor 5 Wochen 6 Tagen
  • Composer ist sehr ratsam
    vor 6 Wochen 1 Tag
  • Vielen Dank für den
    vor 6 Wochen 4 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 6 Wochen 4 Tagen
  • Gut gemacht
    vor 6 Wochen 4 Tagen
  • Layout Builder etc. z.B. für Landing Pages
    vor 6 Wochen 4 Tagen
  • Links
    vor 7 Wochen 8 Stunden
  • Moin,wow, sehr gutes
    vor 7 Wochen 1 Tag
  • Dass ist eine spannende
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250317
Registrierte User: 20567

Neue User:

  • Philiphelve
  • Robertspaft
  • drupalthemes

» 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 16 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