function views_plugin_argument_validate_node::validate_form
2.x views_plugin_argument_validate_node.inc | views_plugin_argument_validate_node::validate_form(&$form, &$form_state) |
Overrides views_plugin_argument_validate::validate_form
File
- modules/
node/ views_plugin_argument_validate_node.inc, line 13 - Contains the 'node' argument validator plugin.
Class
- views_plugin_argument_validate_node
- Validate whether an argument is an acceptable node.
Code
function validate_form(&$form, &$form_state) {
$types = node_get_types();
foreach ($types as $type => $info) {
$options[$type] = check_plain(t($info->name));
}
$arg = $this->get_argument();
if (empty($arg)) {
$arg = array();
}
$form[$this->option_name] = array(
'#type' => 'checkboxes',
'#prefix' => '<div id="edit-options-validate-argument-node-type-wrapper">',
'#suffix' => '</div>',
'#title' => t('Types'),
'#options' => $options,
'#default_value' => $arg,
'#description' => t('If you wish to validate for specific node types, check them; if none are checked, all nodes will pass.'),
'#process' => array('expand_checkboxes', 'views_process_dependency'),
'#dependency' => array('edit-options-validate-type' => array($this->id)),
);
$form['validate_argument_node_access'] = array(
'#type' => 'checkbox',
'#title' => t('Validate user has access to the node'),
'#default_value' => !empty($this->argument->options['validate_argument_node_access']),
'#process' => array('views_process_dependency'),
'#dependency' => array('edit-options-validate-type' => array($this->id)),
);
$form['validate_argument_nid_type'] = array(
'#type' => 'select',
'#title' => t('Argument type'),
'#options' => array(
'nid' => t('Node ID'),
'nids' => t('Node IDs separated by , or +'),
),
'#default_value' => isset($this->argument->options['validate_argument_nid_type']) ? $this->argument->options['validate_argument_nid_type'] : 'nid',
'#process' => array('views_process_dependency'),
'#dependency' => array('edit-options-validate-type' => array($this->id)),
);
}