From 36430b4c6411ced6cae2e954ea86dca7ff2906d4 Mon Sep 17 00:00:00 2001 From: Neil Drumm Date: Wed, 29 Nov 2006 06:36:12 +0000 Subject: #87090 by kkaefer. Render blocks before page content so they may insert headers. --- includes/theme.inc | 5 ++++- themes/chameleon/chameleon.theme | 16 ++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/includes/theme.inc b/includes/theme.inc index 45f3cc093..d27486f6e 100644 --- a/includes/theme.inc +++ b/includes/theme.inc @@ -363,6 +363,9 @@ function theme_placeholder($text) { * A string containing the entire HTML page. */ function theme_page($content) { + // Get blocks before so that they can alter the header (JavaScript, Stylesheets etc.) + $blocks = theme('blocks', 'all'); + $output = "\n"; $output .= ''; $output .= ''; @@ -375,7 +378,7 @@ function theme_page($content) { $output .= ' '; $output .= '
'; - $output .= theme('blocks', 'all'); + $output .= $blocks; $output .= ''; $output .= theme('breadcrumb', drupal_get_breadcrumb()); diff --git a/themes/chameleon/chameleon.theme b/themes/chameleon/chameleon.theme index 65e159ac8..f4b5b702f 100644 --- a/themes/chameleon/chameleon.theme +++ b/themes/chameleon/chameleon.theme @@ -32,6 +32,10 @@ function chameleon_page($content, $show_blocks = TRUE) { $title = drupal_get_title(); + // Get blocks before so that they can alter the header (JavaScript, Stylesheets etc.) + $blocks_left = theme_blocks('left'); + $blocks_right = theme_blocks('right'); + $output = "\n"; $output .= "\n"; $output .= "\n"; @@ -71,10 +75,8 @@ function chameleon_page($content, $show_blocks = TRUE) { $output .= " \n"; $output .= " \n"; - if ($show_blocks) { - if ($blocks = theme_blocks("left")) { - $output .= " \n"; - } + if ($show_blocks && !empty($blocks_left)) { + $output .= " \n"; } $output .= " \n"; - if ($show_blocks) { - if ($blocks = theme_blocks("right")) { - $output .= " \n"; - } + if ($show_blocks && !empty($blocks_right)) { + $output .= " \n"; } $output .= " \n"; -- cgit v1.2.3
$blocks$blocks_left\n"; @@ -103,10 +105,8 @@ function chameleon_page($content, $show_blocks = TRUE) { $output .= " $blocks$blocks_right