function rules_forms_property_value_form_alter in Rules Forms Support 7.2
Form alter callback for the data_set action.
This function was largely taken from Rules.
2 string references to 'rules_forms_property_value_form_alter'
- rules_forms_rules_action_info in ./
rules_forms.rules.inc - Implements hook_rules_action_info().
- rules_forms_rules_condition_info in ./
rules_forms.rules.inc - Implements hook_rules_condition_info().
File
- ./
rules_forms.rules.inc, line 326 - Rules events, conditions, and actions hooks for Rules Forms module.
Code
function rules_forms_property_value_form_alter(&$form, &$form_state, $options, RulesAbstractPlugin $element) {
if (!empty($options['init']) && !isset($form_state['rules_element_step'])) {
$form['negate']['#access'] = FALSE;
unset($form['parameter']['value']);
// Make this callback useful for conditions that use a regex field.
if (isset($form['parameter']['regex'])) {
unset($form['parameter']['regex']);
}
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Continue'),
'#limit_validation_errors' => array(
array(
'parameter',
'data',
),
),
'#submit' => array(
'rules_form_submit_rebuild',
),
);
$form_state['rules_element_step'] = 'data_value';
// Clear the parameter mode for the value parameter, so its gets the proper
// default value based upon the type of the the selected data on rebuild.
unset($form_state['parameter_mode']['value']);
}
else {
// Change the data parameter to be not editable.
$form['parameter']['data']['settings']['#access'] = FALSE;
$form['parameter']['data']['info'] = array(
'#prefix' => '<p>',
'#markup' => t('<strong>Selected data:</strong> %selector', array(
'%selector' => $element->settings['data:select'],
)),
'#suffix' => '</p>',
);
$type = $form['parameter']['value']['settings']['value']['#type'];
if ($type != 'textfield' && $type != 'textarea') {
$form['parameter']['regex']['#access'] = FALSE;
$form['parameter']['regex']['settings']['regex']['#type'] = 'value';
$form['parameter']['regex']['settings']['regex']['#value'] = 0;
}
}
}