function rules_admin_default_argument_form in Rules 6
Returns the argument form for the given element
2 calls to rules_admin_default_argument_form()
- rules_admin_form_edit_action in rules_admin/
rules_admin.rule_forms.inc - Returns the edit form for an action
- rules_admin_form_edit_condition in rules_admin/
rules_admin.rule_forms.inc - Returns the edit form for a condition
File
- rules_admin/
rules_admin.rule_forms.inc, line 765
Code
function rules_admin_default_argument_form(&$form, &$form_state, $element) {
$form['input_help'] = rules_input_evaluators_help($element, $form_state['proxy']
->get_available_variables($form_state['element']['#id']));
$form['settings'] = array(
'#tree' => TRUE,
);
$form['map'] = array(
'#tree' => TRUE,
);
$function = $element['#name'] . '_form';
$info = rules_retrieve_element_info($element);
if (isset($info['arguments']) && count($info['arguments'])) {
$variables = $form_state['proxy']
->get_available_variables($element['#id']);
foreach ($info['arguments'] as $name => $arg_info) {
$arg = rules_get_data_object($arg_info);
if ($arg
->uses_input_form()) {
$value = isset($element['#settings'][$name]) ? $element['#settings'][$name] : NULL;
$form['settings'][$name] = $arg
->get_default_input_form($arg_info, $value, $form_state);
}
else {
$args = rules_admin_map_get_possible_arguments($arg_info, $variables);
$form['map'][$name] = array(
'#type' => 'select',
'#title' => $arg_info['label'],
'#options' => $args,
'#default_value' => rules_admin_element_map_variable_name($name, $element),
'#description' => isset($arg_info['description']) ? $arg_info['description'] : '',
);
}
}
if (element_children($form['map'])) {
$form['map'] += array(
'#type' => 'fieldset',
'#title' => t('Arguments configuration'),
'#weight' => -2,
);
}
}
}