function _node_breadcrumb_rule_form in Node breadcrumb 6
1 call to _node_breadcrumb_rule_form()
File
- ./
node_breadcrumb.module, line 71
Code
function _node_breadcrumb_rule_form($fieldset_title, $node_type, $tids, $condition, $mid, $weight, $weight_delta, $submit) {
$form = array(
'#type' => 'fieldset',
'#title' => $fieldset_title,
);
// node type
$types = node_get_types();
$types_select = array(
'#type' => 'select',
'#title' => t('Content type'),
'#options' => array(
'' => "<" . t('none') . ">",
),
);
foreach ($types as $type) {
$types_select['#options'][$type->type] = $type->name;
}
if ($type) {
$types_select['#default_value'] = $node_type;
}
$form['node_type'] = $types_select;
// term
if (module_exists('taxonomy')) {
$form['tid'] = array(
'#type' => 'fieldset',
'#title' => t('Categories'),
'#attributes' => array(
'class' => 'node_breadcrumb_categories',
),
);
$vocabularies = taxonomy_get_vocabularies();
$none_option = "<" . t('none') . ">";
$vid2tid = array();
if (is_array($tids)) {
foreach ($tids as $tid) {
if ($tid > 0) {
$term = taxonomy_get_term($tid);
$vid2tid[$term->vid] = $tid;
}
elseif ($tid < 0) {
$vid2tid[-$tid] = $tid;
}
}
}
foreach ($vocabularies as $vocabulary) {
$taxonomy_form = taxonomy_form($vocabulary->vid);
unset($taxonomy_form['#options']['']);
$taxonomy_form['#multiple'] = FALSE;
$taxonomy_form['#default_value'] = $vid2tid[$vocabulary->vid] ? $vid2tid[$vocabulary->vid] : 0;
unset($taxonomy_form['#size']);
unset($all_option);
$all_option->option = array(
-$vocabulary->vid => "<" . t("any") . ">",
);
array_unshift($taxonomy_form['#options'], $all_option);
array_unshift($taxonomy_form['#options'], $none_option);
$form['tid']["vid_{$vocabulary->vid}"] = $taxonomy_form;
}
}
// php condition
$form['condition'] = array(
'#type' => 'textarea',
'#rows' => 1,
'#title' => t('Condition'),
'#description' => t('Additional PHP expression, e. g., $node->type == \'story\' || $node->type == \'news\''),
'#default_value' => $condition,
);
// menu item
$menu_item = menu_link_load($mid);
$form['mid'] = array(
'#type' => 'select',
'#title' => t('Menu item'),
'#required' => true,
'#options' => menu_parent_options(menu_get_menus(), array(
'mlid' => 0,
)),
'#default_value' => "{$menu_item['menu_name']}:{$mid}",
);
// weight
$form['weight'] = array(
'#type' => 'weight',
'#title' => t('Weight'),
'#default_value' => $weight,
'#required' => true,
'#delta' => $weight_delta,
);
// submit
$form['submit'] = array(
'#type' => 'submit',
'#value' => $submit,
);
return $form;
}