function theme_nodehierarchy_menu_overview_form in Node Hierarchy 6.2
Same name and namespace in other branches
- 6.3 nodehierarchy.module \theme_nodehierarchy_menu_overview_form()
- 7.4 nodehierarchy_menu/nodehierarchy_menu.module \theme_nodehierarchy_menu_overview_form()
- 7.2 nodehierarchy.module \theme_nodehierarchy_menu_overview_form()
Theme the menu overview form into a table respecting the node hierarchy rules.
File
- ./
nodehierarchy.module, line 416 - A module to make nodes hierarchical.
Code
function theme_nodehierarchy_menu_overview_form($form) {
drupal_add_js(drupal_get_path("module", "nodehierarchy") . '/nodehierarchy.tabledrag.js');
drupal_add_css(drupal_get_path('module', 'nodehierarchy') . '/nodehierarchy.css');
// Show a notice if items have been omitted.
if (!empty($form['hidden']['#value'])) {
$msg = t('@hidden disabled menu items generated by Node Hierarchy have been omitted from this list.', array(
'@hidden' => $form['hidden']['#value'],
));
$msg .= ' ' . l('Click here to show all items', $_GET['q'], array(
'query' => 'all',
)) . '.';
if (user_access('administer site configuration')) {
$msg .= ' ' . t('To permantently show all items, edit your !settings.', array(
'!settings' => l(t('Node hierarchy settings'), 'admin/settings/nodehierarchy'),
));
}
drupal_set_message($msg, 'warning');
}
$js_settings = array();
$rows = array();
foreach (element_children($form) as $mlid) {
if (isset($form[$mlid]['hidden'])) {
$element =& $form[$mlid];
if ($element['#item']['module'] == 'nodehierarchy') {
list(, $nid) = explode('/', $element['#item']['link_path']);
$node = node_load($nid);
$js_settings['nodehierarchyMenuDrag']['allowed-parents'][$node->type] = nodehierarchy_get_allowed_parent_types($node->type);
// Add special classes to be used for nodehierarchy.js.
$element['#attributes']['class'] .= ' nodehierarchy-menu-item node-type-' . $node->type;
$element['#attributes']['id'] = 'mlid-' . $element['#item']['mlid'];
}
}
}
drupal_add_js($js_settings, 'setting');
return theme_menu_overview_form($form);
}