danielebarchiesi@4: 'admin/config/content/formats', danielebarchiesi@4: 'arguments' => array( danielebarchiesi@4: array('%filter_format' => array_keys(filter_formats())), danielebarchiesi@4: ), danielebarchiesi@4: ); danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_admin_menu_map() on behalf of Menu module. danielebarchiesi@4: */ danielebarchiesi@4: function menu_admin_menu_map() { danielebarchiesi@4: if (!user_access('administer menu')) { danielebarchiesi@4: return; danielebarchiesi@4: } danielebarchiesi@4: $map['admin/structure/menu/manage/%menu'] = array( danielebarchiesi@4: 'parent' => 'admin/structure/menu', danielebarchiesi@4: 'arguments' => array( danielebarchiesi@4: array('%menu' => array_keys(menu_get_menus())), danielebarchiesi@4: ), danielebarchiesi@4: ); danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_admin_menu_map() on behalf of Node module. danielebarchiesi@4: */ danielebarchiesi@4: function node_admin_menu_map() { danielebarchiesi@4: if (!user_access('administer content types')) { danielebarchiesi@4: return; danielebarchiesi@4: } danielebarchiesi@4: $map['admin/structure/types/manage/%node_type'] = array( danielebarchiesi@4: 'parent' => 'admin/structure/types', danielebarchiesi@4: 'arguments' => array( danielebarchiesi@4: array('%node_type' => array_keys(node_type_get_types())), danielebarchiesi@4: ), danielebarchiesi@4: ); danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_admin_menu_map() on behalf of Field UI module. danielebarchiesi@4: */ danielebarchiesi@4: function field_ui_admin_menu_map() { danielebarchiesi@4: $map = array(); danielebarchiesi@4: foreach (entity_get_info() as $obj_type => $info) { danielebarchiesi@4: foreach ($info['bundles'] as $bundle_name => $bundle_info) { danielebarchiesi@4: if (isset($bundle_info['admin'])) { danielebarchiesi@4: $arguments = array(); danielebarchiesi@4: switch ($obj_type) { danielebarchiesi@4: case 'comment': danielebarchiesi@4: $fields = array(); danielebarchiesi@4: foreach (field_info_instances($obj_type, $bundle_name) as $field) { danielebarchiesi@4: $fields[] = $field['field_name']; danielebarchiesi@4: } danielebarchiesi@4: // @todo Make Comment module expose the original node type bundle, danielebarchiesi@4: // pretty please. danielebarchiesi@4: if (drupal_substr($bundle_name, 0, 13) == 'comment_node_') { danielebarchiesi@4: $bundle_name = drupal_substr($bundle_name, 13); danielebarchiesi@4: } danielebarchiesi@4: // @todo Doesn't work yet. Why? danielebarchiesi@4: $arguments = array( danielebarchiesi@4: '%comment_node_type' => array($bundle_name), danielebarchiesi@4: '%field_ui_menu' => $fields, danielebarchiesi@4: ); danielebarchiesi@4: break; danielebarchiesi@4: danielebarchiesi@4: case 'node': danielebarchiesi@4: $fields = array(); danielebarchiesi@4: foreach (field_info_instances($obj_type, $bundle_name) as $field) { danielebarchiesi@4: $fields[] = $field['field_name']; danielebarchiesi@4: } danielebarchiesi@4: $arguments = array( danielebarchiesi@4: '%node_type' => array($bundle_name), danielebarchiesi@4: '%field_ui_menu' => $fields, danielebarchiesi@4: ); danielebarchiesi@4: break; danielebarchiesi@4: danielebarchiesi@4: case 'taxonomy_term': danielebarchiesi@4: $fields = array(); danielebarchiesi@4: foreach (field_info_instances($obj_type, $bundle_name) as $field) { danielebarchiesi@4: $fields[] = $field['field_name']; danielebarchiesi@4: } danielebarchiesi@4: // Map machine_name to vid. danielebarchiesi@4: $arguments = array( danielebarchiesi@4: '%taxonomy_vocabulary_machine_name' => array($bundle_name), danielebarchiesi@4: '%field_ui_menu' => $fields, danielebarchiesi@4: ); danielebarchiesi@4: break; danielebarchiesi@4: danielebarchiesi@4: case 'user': danielebarchiesi@4: $arguments = array( danielebarchiesi@4: '%field_ui_menu' => array_keys(field_info_fields('user')), danielebarchiesi@4: ); danielebarchiesi@4: break; danielebarchiesi@4: } danielebarchiesi@4: if (!empty($arguments)) { danielebarchiesi@4: $path = $bundle_info['admin']['path']; danielebarchiesi@4: $map["$path/fields/%field_ui_menu"]['parent'] = "$path/fields"; danielebarchiesi@4: $map["$path/fields/%field_ui_menu"]['arguments'][] = $arguments; danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_admin_menu_map() on behalf of Taxonomy module. danielebarchiesi@4: */ danielebarchiesi@4: function taxonomy_admin_menu_map() { danielebarchiesi@4: if (!user_access('administer taxonomy')) { danielebarchiesi@4: return; danielebarchiesi@4: } danielebarchiesi@4: $map['admin/structure/taxonomy/%taxonomy_vocabulary_machine_name'] = array( danielebarchiesi@4: 'parent' => 'admin/structure/taxonomy', danielebarchiesi@4: 'arguments' => array( danielebarchiesi@4: array('%taxonomy_vocabulary_machine_name' => array_keys(taxonomy_vocabulary_get_names())), danielebarchiesi@4: ), danielebarchiesi@4: ); danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_admin_menu_map() on behalf of Views UI module. danielebarchiesi@4: */ danielebarchiesi@4: function views_ui_admin_menu_map() { danielebarchiesi@4: if (!user_access('administer views')) { danielebarchiesi@4: return; danielebarchiesi@4: } danielebarchiesi@4: $views = array(); danielebarchiesi@4: foreach (views_get_enabled_views() as $name => $view) { danielebarchiesi@4: $views[] = $name; danielebarchiesi@4: } danielebarchiesi@4: if (empty($views)) { danielebarchiesi@4: return; danielebarchiesi@4: } danielebarchiesi@4: $map['admin/structure/views/view/%views_ui_cache'] = array( danielebarchiesi@4: 'parent' => 'admin/structure/views', danielebarchiesi@4: 'arguments' => array( danielebarchiesi@4: array('%views_ui_cache' => $views), danielebarchiesi@4: ), danielebarchiesi@4: ); danielebarchiesi@4: return $map; danielebarchiesi@4: } danielebarchiesi@4: