function rules_forms_rules_event_info in Rules Forms Support 7
Same name and namespace in other branches
- 7.2 rules_forms.rules.inc \rules_forms_rules_event_info()
Implements hook_rules_event_info().
File
- ./
rules_forms.rules.inc, line 18 - Rules events, conditions, and actions hooks for Rules Forms module.
Code
function rules_forms_rules_event_info() {
$form_info = rules_forms_get_form_info();
$defaults = array(
'group' => 'Rules Forms',
'access callback' => 'rules_forms_integration_access',
);
$events = array();
foreach ($form_info as $form_id => $info) {
// Ignore forms with malformed information.
if (!isset($info['label']) || $info['label'] == FALSE) {
continue;
}
$events['rules_forms_' . $form_id . '_form_built'] = $defaults + array(
'label' => t('@form is being built', array(
'@form' => $info['label'],
)),
'variables' => rules_forms_event_variables() + rules_forms_element_variables($form_id),
);
$events['rules_forms_' . $form_id . '_form_submit'] = $defaults + array(
'label' => t('@form is submitted', array(
'@form' => $info['label'],
)),
'variables' => rules_forms_event_variables() + rules_forms_element_variables($form_id),
);
$events['rules_forms_' . $form_id . '_form_validate'] = $defaults + array(
'label' => t('@form is being validated', array(
'@form' => $info['label'],
)),
'variables' => rules_forms_event_variables() + rules_forms_element_variables($form_id),
);
if ($info['buttons'] && isset($info['submit'])) {
foreach ($info['submit'] as $element_id => $label) {
// Add button validate events.
$events['rules_forms_' . $form_id . '_button_' . str_replace(':', '_', $element_id) . '_validate'] = $defaults + array(
'label' => t('@form @button button is being validated', array(
'@form' => $info['label'],
'@button' => strtolower($label),
)),
'variables' => rules_forms_event_variables() + rules_forms_element_variables($form_id),
);
// Add button submit events.
$events['rules_forms_' . $form_id . '_button_' . str_replace(':', '_', $element_id) . '_submit'] = $defaults + array(
'label' => t('@form @button button is being submitted', array(
'@form' => $info['label'],
'@button' => strtolower($label),
)),
'variables' => rules_forms_event_variables() + rules_forms_element_variables($form_id),
);
}
}
}
return $events;
}