diff --git a/template.php b/template.php
index 094eeb6..a8fd0fb 100644
--- a/template.php
+++ b/template.php
@@ -1,5 +1,5 @@
 <?php
-// $Id: template.php,v 1.13 2009/07/17 17:06:36 kong Exp $
+// $Id: template.php,v 1.12 2009/05/10 21:56:07 gibbozer Exp $
 
 /**
  * Force refresh of theme registry.
@@ -41,11 +41,15 @@ function phptemplate_preprocess(&$vars, $hook) {
   }
 
   // Theme primary and secondary links.
-  $vars['primary_menu'] = theme('links', $vars['primary_links']);
-  $vars['secondary_menu'] = theme('links', $vars['secondary_links']);
+  if (isset($vars['primary_menu'])) {
+    $vars['primary_menu'] = theme('links', $vars['primary_links']);
+  }
+  if (isset($vars['secondary_menu'])) {
+    $vars['secondary_menu'] = theme('links', $vars['secondary_links']);
+  }
 
   // Set Accessibility nav bar
-  if ($vars['primary_menu'] != '') {
+  if (isset($vars['primary_menu'])) {
   $vars['nav_access'] = '
     <ul id="nav-access" class="hidden">
       <li><a href="#primary-menu" accesskey="N" title="'.t('Skip to Primary Menu').'">'. t('Skip to Primary Menu') .'</a></li>
@@ -96,14 +100,14 @@ function phptemplate_preprocess(&$vars, $hook) {
   */
 
   // Make sure framework styles are placed above all others.
-  if ($vars['css']) {
+  if (isset($vars['css'])) {
     $vars['css_alt'] = css_rearrange($vars['css']);
     $vars['styles'] = drupal_get_css($vars['css_alt']);
   }
 
   // Change sitename text style to be look like site logo if there's no logo.
   $vars['sitename_id'] = 'site-name';
-  if (!$vars['logo']) {
+  if (!isset($vars['logo'])) {
     $vars['sitename_id'] = 'site-name-logo';
   }
 
@@ -116,6 +120,9 @@ function phptemplate_preprocess(&$vars, $hook) {
     $vars['to_top'] = '<p id="to-top"><a href="#top-wrapper">'. t('Back To Top') .'</a></p>';
   }
 
+  if (!isset($vars['closure'])) {
+    $vars['closure'] = '';
+  }
   $vars['closure'] .= '
   <p id="theme-credit"><a href="http://drupal.org/project/beach">Beach Theme</a> '. t('Provided By ') . '<a href="http://drupal.in.th/">'.t('Drupal Thailand').'</a>. '.t('Designed by ').'<a href="http://webzer.net/">Gibbo</a>.</p>
   ';
@@ -127,18 +134,18 @@ function phptemplate_preprocess(&$vars, $hook) {
   $vars['column3_is_last'] = '';
   $vars['column4_is_last'] = '';
 
-  if ($vars['footer_1']) {
+  if (isset($vars['footer_1'])) {
     $vars['footer_column_count']++;
   }
 
-  if ($vars['footer_2']) {
+  if (isset($vars['footer_2'])) {
     $vars['footer_column_count']++;
     if ($vars['footer_1'] && empty($vars['footer_3']) && empty($vars['footer_4'])) {
       $vars['column2_is_last'] = ' last-column';
     }
   }
 
-  if ($vars['footer_3']) {
+  if (isset($vars['footer_3'])) {
     $vars['footer_column_count']++;
     if ($vars['footer_1'] || $vars['footer_2']) {
       if (empty($vars['footer_4'])) {
@@ -147,7 +154,7 @@ function phptemplate_preprocess(&$vars, $hook) {
     }
   }
 
-  if ($vars['footer_4']) {
+  if (isset($vars['footer_4'])) {
     $vars['footer_column_count']++;
     if ($vars['footer_1'] || $vars['footer_2'] || $vars['footer_3']) {
       $vars['column4_is_last'] = ' last-column';
@@ -168,57 +175,16 @@ function css_rearrange($css) {
   // to use only one CSS file (drupal-core.css)
 
   // This will reduce HTTP request for external CSS files
-  
-  $core_css = array(
-    'aggregator/aggregator-rtl.css',
-    'aggregator/aggregator.css',
-    'block/block.css',
-    'book/book-rtl.css',
-    'book/book.css',
-    'color/color-rtl.css',
-    'color/color.css',
-    'comment/comment-rtl.css',
-    'comment/comment.css',
-    'dblog/dblog-rtl.css',
-    'dblog/dblog.css',
-    'forum/forum-rtl.css',
-    'forum/forum.css',
-    'help/help-rtl.css',
-    'help/help.css',
-    'locale/locale.css',
-    'node/node-rtl.css',
-    'node/node.css',
-    'openid/openid.css',
-    'poll/poll-rtl.css',
-    'poll/poll.css',
-    'profile/profile.css',
-    'search/search-rtl.css',
-    'search/search.css',
-    'system/admin-rtl.css',
-    'system/admin.css',
-    'system/defaults-rtl.css',
-    'system/defaults.css',
-    'system/maintenance.css',
-    'system/system-menus-rtl.css',
-    'system/system-menus.css',
-    'system/system-rtl.css',
-    'system/system.css',
-    'taxonomy/taxonomy.css',
-    'tracker/tracker.css',
-    'update/update-rtl.css',
-    'update/update.css',
-    'user/user-rtl.css',
-    'user/user.css',
-  );
-  
+
   $exclude_list = array(
-    'color/color-rtl.css',
-    'color/color.css',
+    'color.css',
+    'color-rtl.css',
   );
-  
-  foreach ($core_css as $file) {
-    if ( ! in_array($file, $exclude_list)) {
-      unset($css['all']['module']['modules/' . $file]);
+
+  foreach($css['all']['module'] as $key => $value) {
+    $file = end(explode('/', $value));
+    if (substr($key, 0, 8) == 'modules/' && !in_array($file, $exclude_list)) {
+      unset($css['all']['module'][$key]);
     }
   }
 
