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 - 23: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 (9466)
am 12.03.2012 - 23: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 - 17: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 (9466)
am 13.03.2012 - 18: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 - 19:56 Uhr

OK, werde ich mir mal genauer ansehen.
Danke!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • 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
Weiter

Neue Kommentare

  • Was für einen Server benutzt
    vor 1 Woche 3 Tagen
  • Wenn die Subdomain auf
    vor 1 Woche 5 Tagen
  • ordnerstruktur
    vor 1 Woche 5 Tagen
  • Die Subdomain muß auf den
    vor 2 Wochen 22 Stunden
  • Verwende doch das Tag dafür,
    vor 5 Wochen 2 Tagen
  • Guckst du hier: step by step
    vor 5 Wochen 2 Tagen
  • Guckst du hier: step by step
    vor 5 Wochen 2 Tagen
  • Ich habe ja keine Angst vor
    vor 6 Wochen 4 Tagen
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 7 Wochen 1 Stunde
  • Vielen Dank erst einmal, aber
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250289
Registrierte User: 20517

Neue User:

  • Wolf Dab
  • Scottteday
  • MichaelPeeno

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