diff --git a/core/modules/forum/lib/Drupal/forum/Tests/ForumTest.php b/core/modules/forum/lib/Drupal/forum/Tests/ForumTest.php index f84ae07..0232b21 100644 --- a/core/modules/forum/lib/Drupal/forum/Tests/ForumTest.php +++ b/core/modules/forum/lib/Drupal/forum/Tests/ForumTest.php @@ -271,7 +271,7 @@ private function doAdminTests($user) { // Add forum to the Tools menu. $edit = array(); - $this->drupalPost('admin/structure/menu/manage/tools/edit', $edit, t('Save')); + $this->drupalPost('admin/structure/menu/manage/tools', $edit, t('Save')); $this->assertResponse(200); // Edit forum taxonomy. diff --git a/core/modules/menu/lib/Drupal/menu/Controller/MenuController.php b/core/modules/menu/lib/Drupal/menu/Controller/MenuController.php index 2ee5a9e..a2b69a8 100644 --- a/core/modules/menu/lib/Drupal/menu/Controller/MenuController.php +++ b/core/modules/menu/lib/Drupal/menu/Controller/MenuController.php @@ -86,6 +86,7 @@ public function getParentOptions(Request $request) { * Returns the menu link submission form. */ public function addLink(Menu $menu) { + drupal_set_title(t('Add menu link')); $menu_link = $this->entityManager->getStorageController('menu_link')->create(array( 'mlid' => 0, 'plid' => 0, diff --git a/core/modules/menu/lib/Drupal/menu/Form/MenuLinkDeleteForm.php b/core/modules/menu/lib/Drupal/menu/Form/MenuLinkDeleteForm.php index 20a3262..e00dbc7 100644 --- a/core/modules/menu/lib/Drupal/menu/Form/MenuLinkDeleteForm.php +++ b/core/modules/menu/lib/Drupal/menu/Form/MenuLinkDeleteForm.php @@ -33,7 +33,7 @@ protected function getQuestion() { * {@inheritdoc} */ protected function getCancelPath() { - return 'admin/structure/menu/manage/' . $this->menuLink->menu_name . '/edit'; + return 'admin/structure/menu/manage/' . $this->menuLink->menu_name; } /** @@ -60,6 +60,6 @@ public function submitForm(array &$form, array &$form_state) { $t_args = array('%title' => $this->menuLink->link_title); drupal_set_message(t('The menu link %title has been deleted.', $t_args)); watchdog('menu', 'Deleted menu link %title.', $t_args, WATCHDOG_NOTICE); - $form_state['redirect'] = 'admin/structure/menu/manage/' . $this->menuLink->menu_name . '/edit'; + $form_state['redirect'] = 'admin/structure/menu/manage/' . $this->menuLink->menu_name; } } diff --git a/core/modules/menu/lib/Drupal/menu/Form/MenuLinkResetForm.php b/core/modules/menu/lib/Drupal/menu/Form/MenuLinkResetForm.php index 190dd11..aa1165c 100644 --- a/core/modules/menu/lib/Drupal/menu/Form/MenuLinkResetForm.php +++ b/core/modules/menu/lib/Drupal/menu/Form/MenuLinkResetForm.php @@ -72,6 +72,6 @@ public function buildForm(array $form, array &$form_state, MenuLink $menu_link = public function submitForm(array &$form, array &$form_state) { $new_menu_link = $this->menuLink->reset(); drupal_set_message(t('The menu link was reset to its default settings.')); - $form_state['redirect'] = 'admin/structure/menu/manage/' . $new_menu_link->menu_name . '/edit'; + $form_state['redirect'] = 'admin/structure/menu/manage/' . $new_menu_link->menu_name; } } diff --git a/core/modules/menu/lib/Drupal/menu/MenuFormController.php b/core/modules/menu/lib/Drupal/menu/MenuFormController.php index 62aaac1..5fd91c5 100644 --- a/core/modules/menu/lib/Drupal/menu/MenuFormController.php +++ b/core/modules/menu/lib/Drupal/menu/MenuFormController.php @@ -134,7 +134,7 @@ public function save(array $form, array &$form_state) { watchdog('menu', 'Menu %label has been added.', array('%label' => $menu->label()), WATCHDOG_NOTICE, l(t('Edit'), $uri['path'] . '/edit')); } - $form_state['redirect'] = 'admin/structure/menu/manage/' . $menu->id() . '/edit'; + $form_state['redirect'] = 'admin/structure/menu/manage/' . $menu->id(); } /** diff --git a/core/modules/menu/lib/Drupal/menu/MenuListController.php b/core/modules/menu/lib/Drupal/menu/MenuListController.php index e557d92..448f729 100644 --- a/core/modules/menu/lib/Drupal/menu/MenuListController.php +++ b/core/modules/menu/lib/Drupal/menu/MenuListController.php @@ -48,7 +48,7 @@ public function getOperations(EntityInterface $entity) { $uri = $entity->uri(); $operations['edit']['title'] = t('Edit menu'); - $operatuins['edit']['href'] = $uri['path']; + $operations['edit']['href'] = $uri['path']; $operations['add'] = array( 'title' => t('Add link'), 'href' => $uri['path'] . '/add', diff --git a/core/modules/menu/lib/Drupal/menu/Tests/MenuTest.php b/core/modules/menu/lib/Drupal/menu/Tests/MenuTest.php index 74a1e93..aa5eaa7 100644 --- a/core/modules/menu/lib/Drupal/menu/Tests/MenuTest.php +++ b/core/modules/menu/lib/Drupal/menu/Tests/MenuTest.php @@ -107,14 +107,14 @@ function addCustomMenuCRUD() { $menu->save(); // Assert the new menu. - $this->drupalGet('admin/structure/menu/manage/' . $menu_name . '/edit'); + $this->drupalGet('admin/structure/menu/manage/' . $menu_name); $this->assertRaw($label, 'Custom menu was added.'); // Edit the menu. $new_label = $this->randomName(16); $menu->set('label', $new_label); $menu->save(); - $this->drupalGet('admin/structure/menu/manage/' . $menu_name . '/edit'); + $this->drupalGet('admin/structure/menu/manage/' . $menu_name); $this->assertRaw($new_label, 'Custom menu was edited.'); } @@ -187,7 +187,7 @@ function deleteCustomMenu($menu) { $this->assertFalse($result, 'All menu links associated to the custom menu were deleted.'); // Make sure there's no delete button on system menus. - $this->drupalGet('admin/structure/menu/manage/main/edit'); + $this->drupalGet('admin/structure/menu/manage/main'); $this->assertNoRaw('edit-delete', 'The delete button was not found'); // Try to delete the main menu. @@ -256,7 +256,7 @@ function doMenuTests($menu_name) { // Note in the UI the 'links[mlid:x][hidden]' form element maps to enabled, // or NOT hidden. $edit['links[mlid:' . $item1['mlid'] . '][hidden]'] = TRUE; - $this->drupalPost('admin/structure/menu/manage/' . $item1['menu_name'] . '/edit', $edit, t('Save')); + $this->drupalPost('admin/structure/menu/manage/' . $item1['menu_name'], $edit, t('Save')); // Verify in the database. $this->assertMenuLink($item1['mlid'], array('hidden' => 0)); @@ -294,7 +294,7 @@ function testSystemMenuRename() { $edit = array( 'label' => $this->randomName(16), ); - $this->drupalPost('admin/structure/menu/manage/main/edit', $edit, t('Save')); + $this->drupalPost('admin/structure/menu/manage/main', $edit, t('Save')); // Make sure menu shows up with new name in block addition. $default_theme = variable_get('theme_default', 'stark'); @@ -329,7 +329,7 @@ public function testBlockContextualLinks() { )); $this->assertResponse(200); $json = drupal_json_decode($response); - $this->assertIdentical($json[$id], ''); + $this->assertIdentical($json[$id], ''); } /** @@ -616,7 +616,7 @@ private function verifyAccess($response = 200, $menu_name = 'tools') { } // View tools menu customization node. - $this->drupalGet('admin/structure/menu/manage/' . $menu_name . '/edit'); + $this->drupalGet('admin/structure/menu/manage/' . $menu_name); $this->assertResponse($response); if ($response == 200) { $this->assertText(t('Tools'), 'Tools menu node was displayed'); diff --git a/core/modules/menu/menu.admin.inc b/core/modules/menu/menu.admin.inc index ebaa22f..5752eb2 100644 --- a/core/modules/menu/menu.admin.inc +++ b/core/modules/menu/menu.admin.inc @@ -54,20 +54,6 @@ function menu_overview_form($form, &$form_state) { menu_tree_check_access($tree, $node_links); $menu_admin = FALSE; - // Inline the "Add link" action so it displays right above the table of - // links. No access check needed, since this form has the same access - // restriction as adding menu items to the menu. - $form['inline_actions'] = array( - '#prefix' => '', - ); - $form['inline_actions']['add'] = array( - '#theme' => 'menu_local_action', - '#link' => array( - 'href' => 'admin/structure/menu/manage/' . $form_state['menu']->id() . '/add', - 'title' => t('Add link'), - ), - ); $form = array_merge($form, _menu_overview_tree_form($tree, $delta)); $form['#empty_text'] = t('There are no menu links yet. Add link.', array('@link' => url('admin/structure/menu/manage/' . $form_state['menu']->id() .'/add'))); diff --git a/core/modules/menu/menu.module b/core/modules/menu/menu.module index 09ed36f..f216202 100644 --- a/core/modules/menu/menu.module +++ b/core/modules/menu/menu.module @@ -88,25 +88,22 @@ function menu_menu() { 'title' => 'Edit menu', 'route_name' => 'menu_edit_menu', ); - // Not officially a local action, but displayed as such in - // menu_overview_form(). $items['admin/structure/menu/manage/%menu/add'] = array( 'title' => 'Add menu link', + 'type' => MENU_LOCAL_ACTION, 'route_name' => 'menu_link_add', - 'tab_root' => 'admin/structure/menu/manage/%menu', ); $items['admin/structure/menu/manage/%menu/edit'] = array( 'title' => 'Edit menu', - 'route_name' => 'menu_edit_menu', + 'title callback' => 'entity_page_label', + 'title arguments' => array(4), 'type' => MENU_DEFAULT_LOCAL_TASK, - 'tab_root' => 'admin/structure/menu/manage/%menu', 'weight' => -10, 'context' => MENU_CONTEXT_PAGE | MENU_CONTEXT_INLINE, ); $items['admin/structure/menu/manage/%menu/delete'] = array( 'title' => 'Delete menu', 'route_name' => 'menu_delete_menu', - 'tab_root' => 'admin/structure/menu/manage/%menu', ); $items['admin/structure/menu/item/%menu_link/edit'] = array( 'title' => 'Edit menu link', @@ -172,7 +169,7 @@ function menu_enable() { $base_link = entity_create('menu_link', array( 'menu_name' => $system_link->menu_name, - 'router_path' => 'admin/structure/menu/manage/%', + 'router_path' => 'admin/structure/menu/manage/%menu', 'module' => 'menu', )); diff --git a/core/modules/menu/menu.routing.yml b/core/modules/menu/menu.routing.yml index 02c13ab..2d2c47f 100644 --- a/core/modules/menu/menu.routing.yml +++ b/core/modules/menu/menu.routing.yml @@ -55,7 +55,7 @@ menu_add_menu: _permission: 'administer menu' menu_edit_menu: - pattern: '/admin/structure/menu/manage/{menu}/edit' + pattern: '/admin/structure/menu/manage/{menu}' defaults: _entity_form: 'menu.edit' requirements: diff --git a/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php b/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php index 79ba04f..79bd8de 100644 --- a/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php +++ b/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php @@ -30,7 +30,7 @@ public function form(array $form, array &$form_state) { // Get the current breadcrumb and add a link to that menu's overview page. $breadcrumb = menu_get_active_breadcrumb(); - $breadcrumb[] = l($current_title, 'admin/structure/menu/manage/' . $menu_link->menu_name . '/edit'); + $breadcrumb[] = l($current_title, 'admin/structure/menu/manage/' . $menu_link->menu_name); drupal_set_breadcrumb($breadcrumb); } @@ -208,7 +208,7 @@ public function save(array $form, array &$form_state) { if ($saved) { drupal_set_message(t('The menu link has been saved.')); - $form_state['redirect'] = 'admin/structure/menu/manage/' . $menu_link->menu_name . '/edit'; + $form_state['redirect'] = 'admin/structure/menu/manage/' . $menu_link->menu_name; } else { drupal_set_message(t('There was an error saving the menu link.'), 'error'); diff --git a/core/modules/system/lib/Drupal/system/Tests/Menu/BreadcrumbTest.php b/core/modules/system/lib/Drupal/system/Tests/Menu/BreadcrumbTest.php index aee4ee1..77dab9e 100644 --- a/core/modules/system/lib/Drupal/system/Tests/Menu/BreadcrumbTest.php +++ b/core/modules/system/lib/Drupal/system/Tests/Menu/BreadcrumbTest.php @@ -111,16 +111,16 @@ function testBreadCrumbs() { $trail += array( 'admin/structure/menu' => t('Menus'), ); - $this->assertBreadcrumb('admin/structure/menu/manage/tools/edit', $trail); + $this->assertBreadcrumb('admin/structure/menu/manage/tools', $trail); $mlid_node_add = db_query('SELECT mlid FROM {menu_links} WHERE link_path = :href AND module = :module', array( ':href' => 'node/add', ':module' => 'system', ))->fetchField(); $trail += array( - 'admin/structure/menu/manage/tools/edit' => t('Tools'), + 'admin/structure/menu/manage/tools' => t('Tools'), ); - $this->assertBreadcrumb("admin/structure/menu/item/$mlid_node_add/edit", $trail); + $this->assertBreadcrumb("admin/structure/menu/item/$mlid_node_add", $trail); $this->assertBreadcrumb('admin/structure/menu/manage/tools/add', $trail); // Verify Node administration breadcrumbs. @@ -467,7 +467,7 @@ function testBreadCrumbs() { $edit = array( 'parent' => "$menu:{$link_user['mlid']}", ); - $this->drupalPost("admin/structure/menu/item/{$link_admin_user['mlid']}/edit", $edit, t('Save')); + $this->drupalPost("admin/structure/menu/item/{$link_admin_user['mlid']}", $edit, t('Save')); $this->drupalLogout(); $trail = $home; diff --git a/core/modules/user/lib/Drupal/user/Tests/UserAccountLinksTests.php b/core/modules/user/lib/Drupal/user/Tests/UserAccountLinksTests.php index 2aca88a..deec20e 100644 --- a/core/modules/user/lib/Drupal/user/Tests/UserAccountLinksTests.php +++ b/core/modules/user/lib/Drupal/user/Tests/UserAccountLinksTests.php @@ -75,7 +75,7 @@ function testDisabledAccountLink() { // Verify that the 'My account' link is enabled. Do not assume the value of // auto-increment is 1. Use XPath to obtain input element id and name using // the consistent label text. - $this->drupalGet('admin/structure/menu/manage/account/edit'); + $this->drupalGet('admin/structure/menu/manage/account'); $label = $this->xpath('//label[contains(.,:text)]/@for', array(':text' => 'Enable My account menu link')); $this->assertFieldChecked((string) $label[0], "The 'My account' link is enabled by default."); @@ -84,7 +84,7 @@ function testDisabledAccountLink() { $edit = array( (string) $input[0] => FALSE, ); - $this->drupalPost('admin/structure/menu/manage/account/edit', $edit, t('Save')); + $this->drupalPost('admin/structure/menu/manage/account', $edit, t('Save')); // Get the homepage. $this->drupalGet('');