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

Formular via form_alter() anpassen mit User-Variablen

Eingetragen von star-flight (8)
am 12.03.2012 - 22:43 Uhr in
  • Allgemeines zu Drupal
  • Drupal 7.x

Hallo zusammen!
Ich möchte gerne ein Formular mittels form_alter() anpassen. Habe mir nun mein erstes kleines Mini-Modul erstellt.
Ich habe in dem Formular für einen Inhaltstyp ein Select-Feld mit vier vorgegebenen Werten. Nun möchte ich, dass Benutzer einer bestimmten Rolle zwei der Werten nicht setzen können.
Jedoch kann ich auf die Variable $user nicht zugreifen. Wie komme ich an diese Informationen.
So schaut mein Code bis jetzt aus:

function minimodul_form_alter(&$form, &$form_state, $form_id) {

if ($form_id=='hardware_node_form'){

$form['field_40seriennr']['#disabled']=true;

if (in_array('bestimmterolle',$user->roles)) {
unset($form['field_40status']['und']['#options'][3]);
unset($form['field_40status']['und']['#options'][4]);
}
}

}

‹ Fivestar nicht verfügbar Irgendwas stimmt nicht ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Versuch es mal mit global

Eingetragen von wla (9461)
am 12.03.2012 - 22:58 Uhr

Versuch es mal mit

global $user;

am Anfang der Funktion.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Werner,vielen Dank für

Eingetragen von star-flight (8)
am 13.03.2012 - 16:44 Uhr

Hi Werner,
vielen Dank für deine Hilfe, klappt nun super :-)

Zwei Dinge habe ich allerdings noch.
Ich lasse mir mit

<?php
dsm
($form);
?>

in dem Formular die Inhalte ausgeben. Den Punkt ['#disabled'] gibt es unter field_40seriennr nicht, funktioniert aber trotzdem?! Werden nicht alle Möglichkeiten aufgelistet? Oder gibt es hier Standardfunktionen, die für alle gelten?

Desweiteren gibt es Einträge, wie oben, mit einem vorangestellten '#'. Wo ist der Unterschied zu den anderen Einträgen ohne diesen Vorsatz?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du siehst natürlich nur die

Eingetragen von wla (9461)
am 13.03.2012 - 17:29 Uhr

Du siehst natürlich nur die Einstellungen, die aktuell in Form-Array genutzt werden und nicht alles was möglich ist. Da muß ich Dich auf die Dokumentation zur Forms-API verweisen. Da findest Du zu den einzelnen Feldern, die in der Forms-API möglich sind, alle Informationen.
Ob mit oder ohne #, das sind meist Elemente der API, es sind Keys in einem PHP-Array. Die Bedeutung bekommst Du also nur aus der Dokumentation.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

OK, werde ich mir mal genauer

Eingetragen von star-flight (8)
am 13.03.2012 - 18:56 Uhr

OK, werde ich mir mal genauer ansehen.
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 3 Tagen
  • Hey danke
    vor 1 Woche 4 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 4 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 2 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 2 Tagen
  • Kannst doch auch alles direkt
    vor 2 Wochen 6 Tagen
  • In der entsprechenden View
    vor 2 Wochen 6 Tagen
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 6 Tagen
  • gelöst
    vor 5 Wochen 3 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20450

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

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