Integration von Rules in Webform

Im Modul Webform ist bisher keine Möglichkeit eingebaut, Ereignisse für Rules auszulösen. Leider wird nach Aussage des Maintainers eine derartige Verbindung auch in naher Zukunft nicht integriert werden.

Drupal wäre jedoch nicht Drupal, wenn man dieses Manko nicht durch ein kleines selbstgeschriebenes Modul beheben könnte.

Das unten stehende Modul löst beim Absenden eines Webforms ein Ereignis aus, das von Rules ausgewertet werden kann. Als Parameter werden sowohl der aktuelle Benutzer, als auch die Webform-Node ansich und die Formulardaten mitgeliefert.

Inhalt von webform_rules.module: Inhalt von webform_rules.rules.inc: array( 'label' => t('A webform has been submitted'), 'module' => 'Webform', 'arguments' => array( 'user' => array('type' => 'user', 'label' => t('User, who submitted the webform.')), 'node' => array('type' => 'node', 'label' => t('The webform node.')), 'data' => array('type' => 'data', 'label' => t('The submitted webform data.')), ), ), ); } ?>

Aktiviert man nun das Modul, hat man in der Liste der verfügbaren Ereignisse einen neuen Eintrag und kann über diesen auf die mitgelieferten Formulardaten zugreifen. Webform Rules event Webform Rules variables

Das fertige Modul zum Herunterladen und Testen könnt ihr euch von drupal.org herunterladen.