diff -urp -x .DS_Store sites/all/modules/collapsiblock/collapsiblock.js sites/all/modules/collapsiblockNew/collapsiblock.js
--- sites/all/modules/collapsiblock/collapsiblock.js	2008-03-29 06:46:22.000000000 +1100
+++ sites/all/modules/collapsiblockNew/collapsiblock.js	2008-12-12 22:46:26.000000000 +1100
@@ -7,8 +7,10 @@ Drupal.behaviors.collapsiblock = functio
     var titleElt = $(selector +':first', this);
     if (titleElt.size()) {
       titleElt = titleElt[0];
-      // Status values: 1 = not collapsible, 2 = collapsible and expanded, 3 = collapsible and collapsed
+      // Status values: 1 = not collapsible, 2 = collapsible and expanded, 3 = collapsible and collapsed, 4 = always collapsed
       var status = Drupal.settings.collapsiblock.blocks[this.id] ? Drupal.settings.collapsiblock.blocks[this.id] : Drupal.settings.collapsiblock.default_state;
+      var slidetype = Drupal.settings.collapsiblock.slide_type;
+      var slidespeed = parseInt(Drupal.settings.collapsiblock.slide_speed);
       if (status == 1) {
         return;
       }
@@ -20,15 +22,23 @@ Drupal.behaviors.collapsiblock = functio
           $.cookie('collapsiblock-' + id, st == 0 ? 1 : 0, {path: Drupal.settings.jstools.basePath});
           if ($(this).is('.collapsiblockCollapsed')) {
             $(this).removeClass('collapsiblockCollapsed');
-            $(this.target).slideDown(200);
+            if (slidetype == 1) {
+              $(this.target).slideDown(slidespeed);
+            } else {
+              $(this.target).animate({height:'show', opacity:'show'}, slidespeed);
+            }
           } 
           else {
             $(this).addClass('collapsiblockCollapsed');
-            $(this.target).slideUp(200);
+            if (slidetype == 1) {
+              $(this.target).slideUp(slidespeed);
+            } else {
+              $(this.target).animate({height:'hide', opacity:'hide'}, slidespeed);
+            }
           }
         });
       // Leave active blocks uncollapsed.
-      if (((status == 3 && (! $.cookie('collapsiblock-' + id))) || $.cookie('collapsiblock-' + id) == 1) && !$(this).find('a.active').size()) {
+      if (((status == 3 && (! $.cookie('collapsiblock-' + id))) || $.cookie('collapsiblock-' + id) == 1) && !$(this).find('a.active').size() || (status == 4)) {
         $(titleElt).addClass('collapsiblockCollapsed');
         $(titleElt.target).hide();
       }
diff -urp -x .DS_Store sites/all/modules/collapsiblock/collapsiblock.module sites/all/modules/collapsiblockNew/collapsiblock.module
--- sites/all/modules/collapsiblock/collapsiblock.module	2008-06-20 08:22:30.000000000 +1000
+++ sites/all/modules/collapsiblockNew/collapsiblock.module	2008-12-12 22:18:00.000000000 +1100
@@ -38,9 +38,24 @@ function collapsiblock_admin_settings() 
   $form['collapsiblock_default_state'] = array(
     '#type' => 'radios',
     '#title' => t('Default block collapse behavior'),
-    '#options' => array(1 => t('None.'), 2 => t('Collapsible, expanded by default.'), 3 => t('Collapsible, collapsed by default.')),
+    '#options' => array(1 => t('None.'), 2 => t('Collapsible, expanded by default.'), 3 => t('Collapsible, collapsed by default.'), 4 => t('Collapsible, collapsed all the time.')),
     '#default_value' => variable_get('collapsiblock_default_state', 1),
   );
+  $form['collapsiblock_slide_type'] = array(
+    '#type' => 'radios',
+    '#title' => t('Default animation type'),
+    '#options' => array(1 => t('Slide'), 2 => t('Fade and slide')),
+    '#description' => t('Slide is the Drupal default while Fade and slide adds a nice fade effect.'),
+    '#default_value' => variable_get('collapsiblock_slide_type', 1),
+  );
+  $form['collapsiblock_slide_speed'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Animation speed'),
+    '#size' => 4,
+    '#maxlength' => 4,
+    '#description' => t('The animation speed in milliseconds.'),
+    '#default_value' => variable_get('collapsiblock_slide_speed', 200),
+  );
   $form = system_settings_form($form);
   return $form;
 }
@@ -54,7 +69,7 @@ function collapsiblock_load() {
     $path = drupal_get_path('module', 'collapsiblock');
     jstools_add_js($path . '/collapsiblock.js');
     drupal_add_js(drupal_get_path('module', 'jstools') .'/jquery.cookie.js');
-    drupal_add_js(array('collapsiblock' => array('blocks' => variable_get('collapsiblock_settings', array()), 'default_state' => variable_get('collapsiblock_default_state', 1)) + jstools_theme_data('collapsiblock')), 'setting');
+    drupal_add_js(array('collapsiblock' => array('blocks' => variable_get('collapsiblock_settings', array()), 'default_state' => variable_get('collapsiblock_default_state', 1), 'slide_type' => variable_get('collapsiblock_slide_type', 1), 'slide_speed' =>  variable_get('collapsiblock_slide_speed', 200)) + jstools_theme_data('collapsiblock')), 'setting');
     drupal_add_css($path .'/collapsiblock.css');
     $loaded = TRUE;
   }
@@ -67,13 +82,13 @@ function collapsiblock_form_alter(&$form
     $form['collapsiblock'] = array(
       '#type' => 'fieldset',
       '#title' => t('Collapsible'),
-      '#collapsible' => true,
+      '#collapsible' => TRUE,
       '#weight' => -5
     );
     $form['collapsiblock']['collapse_type'] = array(
       '#type' => 'radios',
       '#title' => t('Block collapse behavior'),
-      '#options' => array(1 => t('None.'), 2 => t('Collapsible, expanded by default.'), 3 => t('Collapsible, collapsed by default.')),
+      '#options' => array(1 => t('None.'), 2 => t('Collapsible, expanded by default.'), 3 => t('Collapsible, collapsed by default.'), 4 => t('Collapsible, collapsed all the time.')),
       '#default_value' => $settings['block-' . $form['module']['#value'] . '-' . $form['delta']['#value']] ? $settings['block-' . $form['module']['#value'] . '-' . $form['delta']['#value']] : variable_get('collapsiblock_default_state', 1),
     );
   }
