Index: site-map.tpl.php
===================================================================
RCS file: site-map.tpl.php
diff -N site-map.tpl.php
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ site-map.tpl.php	21 May 2010 18:55:26 -0000
@@ -0,0 +1,79 @@
+<?php
+// $Id$
+
+/**
+ * @file site-map.tpl.php
+ *
+ * Theme implementation to display the site map.
+ *
+ * Available variables:
+ * - $message:
+ * - $rss_legend:
+ * - $front_page:
+ * - $blogs:
+ * - $books:
+ * - $menus:
+ * - $faq:
+ * - $taxonomys:
+ * - $additional:
+ *
+ * @see template_preprocess()
+ * @see template_preprocess_site_map()
+ */
+?>
+
+<div id="site-map">
+  <?php if($message): ?>
+    <div class="site-map-message">
+      <?php print $message; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($rss_legend): ?>
+    <div class="site-map-rss-legend">
+      <?php print $rss_legend; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($front_page): ?>
+    <div class="site-map-front-page">
+      <?php print $front_page; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($blogs): ?>
+    <div class="site-map-blogs">
+      <?php print $blogs; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($books): ?>
+    <div class="site-map-books">
+      <?php print $books; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($menus): ?>
+    <div class="site-map-menus">
+      <?php print $menus; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($faq): ?>
+    <div class="site-map-faq">
+      <?php print $faq; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($taxonomys): ?>
+    <div class="site-map-taxonomys">
+      <?php print $taxonomys; ?>
+    </div>
+  <?php endif; ?>
+
+  <?php if($additional): ?>
+    <div class="site-map-additional">
+      <?php print $additional; ?>
+    </div>
+  <?php endif; ?>
+</div>
Index: site_map.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/site_map/site_map.admin.inc,v
retrieving revision 1.1.2.7.2.4
diff -u -p -u -p -r1.1.2.7.2.4 site_map.admin.inc
--- site_map.admin.inc	7 May 2010 11:16:29 -0000	1.1.2.7.2.4
+++ site_map.admin.inc	21 May 2010 18:55:27 -0000
@@ -21,6 +21,7 @@ function site_map_admin_settings() {
     '#rows' => 5,
     '#description' => t('Define a message to be displayed above the site map.'),
   );
+  $form['site_map_message_format'] = filter_form(variable_get('site_map_message_format', FILTER_FORMAT_DEFAULT));
 
   $form['site_map_content'] = array(
     '#type' => 'fieldset',
Index: site_map.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/site_map/site_map.module,v
retrieving revision 1.39.2.17.2.7
diff -u -p -u -p -r1.39.2.17.2.7 site_map.module
--- site_map.module	7 May 2010 11:22:23 -0000	1.39.2.17.2.7
+++ site_map.module	21 May 2010 18:55:27 -0000
@@ -2,7 +2,8 @@
 // $Id: site_map.module,v 1.39.2.17.2.7 2010/05/07 11:22:23 frjo Exp $
 
 /**
- * @file
+ * @file site_map.module
+ *
  * Original author: Nic Ivy
  * Now maintained by by Fredrik Jonsson fredrik at combonet dot se
  */
@@ -19,20 +20,30 @@ function site_map_perm() {
  */
 function site_map_theme() {
   return array(
-    'site_map_display' => array(
+    'site_map' => array(
       'arguments' => array(),
+      'template' => 'site-map',
+      'file' => 'site_map.theme.inc',
     ),
     'site_map_box' => array(
       'arguments' => array('title' => NULL, 'content' => NULL, 'class' => NULL),
+      'file' => 'site_map.theme.inc',
     ),
     'site_map_feed_icon' => array(
       'arguments' => array('url' => NULL, 'type' => 'node'),
+      'file' => 'site_map.theme.inc',
     ),
     'site_map_menu_tree' => array(
       'arguments' => array('tree' => NULL),
+      'file' => 'site_map.theme.inc',
     ),
     'site_map_menu_item' => array(
       'arguments' => array('link' => NULL, 'has_children' => NULL, 'menu' => NULL),
+      'file' => 'site_map.theme.inc',
+    ),
+    'site_map_rss_legend' => array(
+      'arguments' => array(),
+      'file' => 'site_map.theme.inc',
     ),
   );
 }
@@ -95,152 +106,7 @@ function site_map_page() {
     drupal_add_css(drupal_get_path('module', 'site_map') .'/site_map.css');
   }
 
-  return theme('site_map_display');
-}
-
-/**
- * Return a themed site map.
- *
- * @return
- *   A string containing the site map output.
- */
-function theme_site_map_display() {
-  $output = '';
-
-  $message = filter_xss_admin(variable_get('site_map_message', ''));
-  $output .= $message ? '<p>'. $message .'</p>' : '';
-
-  if ((variable_get('site_map_show_rss_links', 1) != 0) && module_exists('commentrss') && variable_get('commentrss_site', COMMENTRSS_SITE_FRONT_PAGE)) {
-    $output .= '<p><strong>'. t('Legend:') .'</strong><br />';
-    $output .= '<span class="rss">'. theme('site_map_feed_icon', NULL) .'</span> '. t('Link to a content RSS feed');
-    $output .= '<br /><span class="rss">'. theme('site_map_feed_icon', NULL, 'comment') .'</span> '. t('Link to a comment RSS feed');
-    $output .= '</p>';
-  }
-
-  if (variable_get('site_map_show_front', 1)) {
-    $output .= _site_map_front_page();
-  }
-
-  if (variable_get('site_map_show_blogs', 1)) {
-    $output .= _site_map_blogs();
-  }
-
-/*   $output .= _site_map_audio(); */
-
-/*   $output .= _site_map_video(); */
-
-  // Compile the books trees.
-  $output .= _site_map_books();
-
-  // Compile the menu trees.
-  $output .= _site_map_menus();
-
-  if (variable_get('site_map_show_faq', 1)) {
-    $output .= _site_map_faq();
-  }
-
-  // Compile the vocabulary trees.
-  $output .= _site_map_taxonomys();
-
-  // Invoke all custom modules and get themed HTML to be integrated into the site map.
-  $additional = module_invoke_all('site_map');
-  foreach ($additional as $themed_site_map_code) {
-    $output .= $themed_site_map_code;
-  }
-
-  $output = '<div id="site-map" class="site-map">'. $output .'</div>';
-
-  return $output;
-}
-
-/**
- * Return a themed sitemap box.
- *
- * @param $title
- *   The subject of the box.
- * @param $content
- *   The content of the box.
- * @param $class
- *   Optional extra class for the box.
- * @return
- *   A string containing the box output.
- */
-function theme_site_map_box($title, $content, $class = '') {
-  $output = '';
-  if ($title || $content) {
-    $class = $class ? 'sitemap-box '. $class : 'sitemap-box';
-    $output .= '<div class="'. $class .'">';
-    if ($title) {
-      $output .= '<h2 class="title">'. $title .'</h2>';
-    }
-    if ($content) {
-      $output .= '<div class="content">'. $content .'</div>';
-    }
-    $output .= '</div>';
-  }
-
-  return $output;
-}
-
-/**
- * Return a themed feed icon.
- *
- * @param $url
- *   The feed URL.
- * @param $type
- *   The type of feed icon.
- * @return
- *   A string containing the linked image.
- */
-function theme_site_map_feed_icon($url, $type = 'node') {
-  $output = '';
-
-  switch ($type) {
-    case 'node':
-      $output = theme('image', (drupal_get_path('module', 'site_map') .'/feed-small.png'), t('Syndicate content'), t('Syndicate content'));
-      break;
-    case 'comment':
-      $output = theme('image', (drupal_get_path('module', 'site_map') .'/feed-small-comment.png'), t('Syndicate comments'), t('Syndicate comments'));
-      break;
-  }
-
-  if ($url) {
-    $output = l($output, $url, array('attributes' => array('class' => 'feed-link'), 'html' => TRUE));
-  }
-
-  return $output;
-}
-
-/**
- * This is a clone of the core theme_menu_tree() function with the exception of
- * the site_map specific class name used in the UL that also allow themers to
- * override the function only for the sitemap page.
- *
- * Generate the HTML output for a menu tree
- *
- * @ingroup themeable
- */
-function theme_site_map_menu_tree($tree) {
-  return '<ul class="site-map-menu">'. $tree .'</ul>';
-}
-
-/**
- * This is a one by one clone of the core theme_menu_item() function that allows
- * custom theming of the sitemap page items.
- *
- * Generate the HTML output for a menu item and submenu.
- *
- * @ingroup themeable
- */
-function theme_site_map_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) {
-  $class = ($menu ? 'expanded' : ($has_children ? 'collapsed' : 'leaf'));
-  if (!empty($extra_class)) {
-    $class .= ' '. $extra_class;
-  }
-  if ($in_active_trail) {
-    $class .= ' active-trail';
-  }
-  return '<li class="'. $class .'">'. $link . $menu ."</li>\n";
+  return theme('site_map');
 }
 
 function _site_map_front_page() {
@@ -263,7 +129,7 @@ function _site_map_front_page() {
     }
   }
 
-  return theme('site_map_box', $title, $output, 'sitemap-front'. $class);
+  return theme('site_map_box', $title, $output, 'site-map-front-box'. $class);
 }
 
 /**
@@ -311,7 +177,7 @@ function _site_map_blogs() {
       $blogs[] = $blog_item;
     }
     $output .= theme('item_list', $blogs);
-    $output = theme('site_map_box', $title, $output, 'sitemap-blog'. $class);
+    $output = theme('site_map_box', $title, $output, 'site-map-blog-box'. $class);
   }
 
   return $output;
@@ -333,7 +199,7 @@ function _site_map_audio() {
         $output = $rss_link .' '. $output;
       }
     }
-    $output = theme('site_map_box', $title, $output, 'sitemap-audio'. $class);
+    $output = theme('site_map_box', $title, $output, 'site-map-audio-box'. $class);
   }
 
   return $output;
@@ -355,7 +221,7 @@ function _site_map_video() {
         $output = $rss_link .' '. $output;
       }
     }
-    $output = theme('site_map_box', $title, $output, 'sitemap-video'. $class);
+    $output = theme('site_map_box', $title, $output, 'site-map-video-box'. $class);
   }
 
   return $output;
@@ -380,7 +246,7 @@ function _site_map_books() {
     }
 
     if ($output) {
-      $output = theme('site_map_box', $title, $description . $output, 'sitemap-book');
+      $output = theme('site_map_box', $title, $description . $output, 'site-map-book-box');
     }
   }
 
@@ -405,7 +271,7 @@ function _site_map_menus() {
       $menu_display = _site_map_menu_tree_output($tree);
       if (!empty($menu_display)) {
         $title = $menu['title'];
-        $output .= theme('site_map_box', $title, $menu_display, 'sitemap-menu');
+        $output .= theme('site_map_box', $title, $menu_display, 'site-map-menu-box');
       }
     }
   }
@@ -418,7 +284,7 @@ function _site_map_faq() {
   if (module_exists('faq')) {
     $title = variable_get('faq_title', t('Frequently Asked Questions'));
     $output = faq_get_faq_list();
-    $output = theme('site_map_box', $title, $output, 'sitemap-faq');
+    $output = theme('site_map_box', $title, $output, 'site-map-faq-box');
   }
 
   return $output;
@@ -546,7 +412,7 @@ function _site_map_taxonomy_tree($vid, $
       $output .= "</li>\n</ul>\n";
     }
   }
-  $output = theme('site_map_box', $title, $output, 'sitemap-terms sitemap-terms-'. $vid . $class);
+  $output = theme('site_map_box', $title, $output, 'site-map-terms-box sitemap-terms-box-'. $vid . $class);
 
   return $output;
 }
Index: site_map.theme.inc
===================================================================
RCS file: site_map.theme.inc
diff -N site_map.theme.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ site_map.theme.inc	21 May 2010 18:55:27 -0000
@@ -0,0 +1,150 @@
+<?php
+// $Id: site_map.theme.inc,v 1.4 2010/04/18 15:10:58 frjo Exp $
+
+/**
+ * @file site_map.theme.inc
+ *
+ * Site map theme functions.
+ */
+
+
+function theme_site_map_rss_legend() {
+  $output .= '<p><strong>'. t('Legend:') .'</strong><br />';
+  $output .= '<span class="rss">'. theme('site_map_feed_icon', NULL) .'</span> '. t('Link to a content RSS feed');
+  $output .= '<br /><span class="rss">'. theme('site_map_feed_icon', NULL, 'comment') .'</span> '. t('Link to a comment RSS feed');
+  $output .= '</p>';
+
+  return $output;
+}
+
+/**
+ * Return a themed site map box.
+ *
+ * @param $title
+ *   The subject of the box.
+ * @param $content
+ *   The content of the box.
+ * @param $class
+ *   Optional extra class for the box.
+ * @return
+ *   A string containing the box output.
+ */
+function theme_site_map_box($title, $content, $class = '') {
+  $output = '';
+  if ($title || $content) {
+    $class = $class ? 'site-map-box '. $class : 'site-map-box';
+    $output .= '<div class="'. $class .'">';
+    if ($title) {
+      $output .= '<h2 class="title">'. $title .'</h2>';
+    }
+    if ($content) {
+      $output .= '<div class="content">'. $content .'</div>';
+    }
+    $output .= '</div>';
+  }
+
+  return $output;
+}
+
+/**
+ * Return a themed feed icon.
+ *
+ * @param $url
+ *   The feed URL.
+ * @param $type
+ *   The type of feed icon.
+ * @return
+ *   A string containing the linked image.
+ */
+function theme_site_map_feed_icon($url, $type = 'node') {
+  $output = '';
+
+  switch ($type) {
+    case 'node':
+      $output = theme('image', (drupal_get_path('module', 'site_map') .'/feed-small.png'), t('Syndicate content'), t('Syndicate content'));
+      break;
+    case 'comment':
+      $output = theme('image', (drupal_get_path('module', 'site_map') .'/feed-small-comment.png'), t('Syndicate comments'), t('Syndicate comments'));
+      break;
+  }
+
+  if ($url) {
+    $output = l($output, $url, array('attributes' => array('class' => 'feed-link'), 'html' => TRUE));
+  }
+
+  return $output;
+}
+
+/**
+ * This is a clone of the core theme_menu_tree() function with the exception of
+ * the site_map specific class name used in the UL that also allow themers to
+ * override the function only for the site map page.
+ *
+ * Generate the HTML output for a menu tree
+ *
+ * @ingroup themeable
+ */
+function theme_site_map_menu_tree($tree) {
+  return '<ul class="site-map-menu">'. $tree .'</ul>';
+}
+
+/**
+ * This is a one by one clone of the core theme_menu_item() function that allows
+ * custom theming of the site map page items.
+ *
+ * Generate the HTML output for a menu item and submenu.
+ *
+ * @ingroup themeable
+ */
+function theme_site_map_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) {
+  $class = ($menu ? 'expanded' : ($has_children ? 'collapsed' : 'leaf'));
+  if (!empty($extra_class)) {
+    $class .= ' '. $extra_class;
+  }
+  if ($in_active_trail) {
+    $class .= ' active-trail';
+  }
+  return '<li class="'. $class .'">'. $link . $menu ."</li>\n";
+}
+
+/**
+ * Process variables for site-map.tpl.php.
+ *
+ * @see site-map.tpl.php
+ */
+function template_preprocess_site_map(&$variables) {
+  $variables['message'] = check_markup(variable_get('site_map_message', ''), variable_get('site_map_message_format', FILTER_FORMAT_DEFAULT));
+
+  if ((variable_get('site_map_show_rss_links', 1) != 0) && module_exists('commentrss') && variable_get('commentrss_site', COMMENTRSS_SITE_FRONT_PAGE)) {
+    $variables['rss_legend'] = theme('site_map_rss_legend');
+  }
+
+  if (variable_get('site_map_show_front', 1)) {
+    $variables['front_page'] = _site_map_front_page();
+  }
+
+  if (variable_get('site_map_show_blogs', 1)) {
+    $variables['blogs'] = _site_map_blogs();
+  }
+
+  // Compile the books trees.
+  if (module_exists('books')) {
+    $variables['books'] = _site_map_books();
+  }
+
+  // Compile the menu trees.
+  $variables['menus'] = _site_map_menus();
+
+  if (variable_get('site_map_show_faq', 1)) {
+    $variables['faq'] = _site_map_faq();
+  }
+
+  // Compile the vocabulary trees.
+  $variables['taxonomys'] = _site_map_taxonomys();
+
+  // Invoke all custom modules and get themed HTML to be integrated into the site map.
+  $additional = module_invoke_all('site_map');
+  foreach ($additional as $themed_site_map_code) {
+    $variables['additional'] .= $themed_site_map_code;
+  }
+}
