diff options
author | Steven Wittens <steven@10.no-reply.drupal.org> | 2007-01-14 02:12:29 +0000 |
---|---|---|
committer | Steven Wittens <steven@10.no-reply.drupal.org> | 2007-01-14 02:12:29 +0000 |
commit | 110080c533388fb87d6c22fd5ea287a4b86d5e54 (patch) | |
tree | 2190a0adffa6e76e94a1f93ace72bb9c8a5f8bbb | |
parent | e9e4a3a44614125b0a576740fb1894fc1fc07417 (diff) | |
download | brdo-110080c533388fb87d6c22fd5ea287a4b86d5e54.tar.gz brdo-110080c533388fb87d6c22fd5ea287a4b86d5e54.tar.bz2 |
#108695: Fix problem with using nodes as 404/403 pages.
-rw-r--r-- | modules/node/node.module | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/node/node.module b/modules/node/node.module index 6fde82264..bab68e652 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -1151,6 +1151,20 @@ function node_menu($may_cache) { ); } } + // Error pages must to be present in the menu cache and be accessible to + // all. More often than not these are individual nodes. + for ($error_code = 403; $error_code <= 404; $error_code++) { + if (preg_match('|^node/(?P<nid>\d+)(?:/view)?$|', drupal_get_normal_path(variable_get('site_'. $error_code, '')), $matches) && ($node = node_load($matches['nid']))) { + $items[] = array( + 'path' => 'node/'. $node->nid, + 'title' => t('View'), + 'callback' => 'node_page_view', + 'callback arguments' => array($node), + 'access' => TRUE, + 'type' => MENU_CALLBACK, + ); + } + } } else { // Add the CSS for this module |