diff options
author | Dries Buytaert <dries@buytaert.net> | 2010-05-18 12:07:39 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2010-05-18 12:07:39 +0000 |
commit | 245454bece3e3a460ed1504117a4dd7eb635fd8d (patch) | |
tree | e964263d96cfaace7ba6c3bf6db24ba4e64b06aa | |
parent | 6babaebe025c76d7bda4c10c08b0ee0a797733a8 (diff) | |
download | brdo-245454bece3e3a460ed1504117a4dd7eb635fd8d.tar.gz brdo-245454bece3e3a460ed1504117a4dd7eb635fd8d.tar.bz2 |
- Patch #790650 by casey: dashboard always appears in drag-and-drop mode when Seven is not used (and on 404 pages).
-rw-r--r-- | modules/dashboard/dashboard.js | 3 | ||||
-rw-r--r-- | modules/dashboard/dashboard.module | 8 | ||||
-rw-r--r-- | modules/system/system.admin.inc | 9 |
3 files changed, 13 insertions, 7 deletions
diff --git a/modules/dashboard/dashboard.js b/modules/dashboard/dashboard.js index 6f89d30d7..c680062b0 100644 --- a/modules/dashboard/dashboard.js +++ b/modules/dashboard/dashboard.js @@ -8,9 +8,6 @@ Drupal.behaviors.dashboard = { attach: function () { $('#dashboard').prepend('<div class="customize"><ul class="action-links"><li><a href="#">' + Drupal.t('Customize dashboard') + '</a></li></ul><div class="canvas"></div></div>'); $('#dashboard .customize .action-links a').click(Drupal.behaviors.dashboard.enterCustomizeMode); - if ($('#dashboard .region .block').length == 0) { - Drupal.settings.dashboard.launchCustomize = true; - } Drupal.behaviors.dashboard.addPlaceholders(); if (Drupal.settings.dashboard.launchCustomize) { Drupal.behaviors.dashboard.enterCustomizeMode(); diff --git a/modules/dashboard/dashboard.module b/modules/dashboard/dashboard.module index 2bde008a9..76a7e2d26 100644 --- a/modules/dashboard/dashboard.module +++ b/modules/dashboard/dashboard.module @@ -198,6 +198,14 @@ function dashboard_theme() { * Whether to launch in customization mode right away. TRUE or FALSE. */ function dashboard_admin($launch_customize = FALSE) { + // Only continue if provided arguments are expected. This function serves + // as the callback for the top-level admin/ page, so any unexpected arguments + // are likely the result of someone typing in the URL of an administrative + // page that doesn't actually exist; for example, admin/some/random/page. + if (!is_bool($launch_customize)) { + return MENU_NOT_FOUND; + } + $js_settings = array( 'dashboard' => array( 'drawer' => url('admin/dashboard/drawer'), diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc index 4777f204f..6d9fb5767 100644 --- a/modules/system/system.admin.inc +++ b/modules/system/system.admin.inc @@ -10,11 +10,12 @@ * Menu callback; Provide the administration overview page. */ function system_main_admin_page($arg = NULL) { - // If we received an argument, they probably meant some other page. - // Let's 404 them since the menu system cannot be told we do not - // accept arguments. + // Only continue if provided arguments are expected. This function serves + // as the callback for the top-level admin/ page, so any unexpected arguments + // are likely the result of someone typing in the URL of an administrative + // page that doesn't actually exist; for example, admin/some/random/page. if (isset($arg) && substr($arg, 0, 3) != 'by-') { - return drupal_not_found(); + return MENU_NOT_FOUND; } // Check for status report errors. |