[erledigt] Exposed Filter -> die rid vor $form['#action'] abfragen??
am 05.09.2012 - 21:29 Uhr in
Hallo Freunde,
ich nutze einen Exposed Filter zur Suche von Rollen (rid) in einem Block. Zusätzlich überschreibe ich, nachdem der User auf "Suchen" geklickt hat, mit hook_form_alter den Zielpfad der Views-Ergebnissseite (das ist ein Multi-Step-Exposed Filter).
<?php
function my_module_form_alter(&$form, $form_state, $form_id) {
if ($form['#id'] == 'views-exposed-form-User-Suche-default') {
$form['#action'] = 'usersuche2';
}
}
?>
Im Exposed Filter kann man aus 2 Rollen auswählen ... "Einzelperson" (rid = 2) und "Gruppen" (rid = 3)
Wenn rid = 2 ist, soll der Zielpfad aber anders sein als wenn der User rid = 3 ausgewählt hat.
Um das vereinfacht auszudrücken ....
<?php
function my_module_form_alter(&$form, $form_state, $form_id) {
if ($form['#id'] == 'views-exposed-form-User-Suche-default') {
if $form[bla][rid] == '2' {
$form['#action'] = 'usersuche2';
}
else if $form[bla][rid] == '3' {
$form['#action'] = 'usersuche3';
}
}
}
?>
Leider weiß ich aber nicht wie ich die ausgewählte rid abgreifen/abfragen kann bevor $form['#action'] ausgeführt wird. Somit kann ich den Zielpfad nicht nach der rid wechseln.
Weiß von euch jemand wie man das macht bzw. kann mir jemand einen Tip geben?
Danke und Gruß
Matthias
- Anmelden oder Registrieren um Kommentare zu schreiben
Sooo .... das hat sich
am 05.09.2012 - 23:15 Uhr
Sooo .... das hat sich erledigt. Man kann die entsprechenden Exposed Filter, je nach Rolle, einfach mit dem Untermodul "Views Selective Exposed Filters" von View Hacks anzeigen lassen. Trifft ein Filter auf die Rolle nicht zu, wird er automatisch ausgeblendet. Damit kann man wunderbar Multi-Step-Filter erstellen.
Drupal rockt!!!