// $Id: collapsiblock.js,v 1.2 2008/03/28 19:46:22 nedjo Exp $ Drupal.behaviors.collapsiblock = function (context) { $('div.block:not(.collapsiblock-processed)', context).addClass('collapsiblock-processed').each(function () { var selector = Drupal.settings.collapsiblock && Drupal.settings.collapsiblock.titleSelector ? Drupal.settings.collapsiblock.titleSelector : 'h2'; var id = this.id; var titleElt = $(selector +':first', this); if (titleElt.size()) { titleElt = titleElt[0]; // Status values: 1 = not collapsible, 2 = collapsible and expanded, 3 = collapsible and collapsed var mystatus = Drupal.settings.collapsiblock.blocks[this.id] ? Drupal.settings.collapsiblock.blocks[this.id] : Drupal.settings.collapsiblock.default_state; if (mystatus == 1) { return; } titleElt.target = $(this).find('div.content'); $(titleElt) .addClass('collapsiblock') .click(function () { var st = $.cookie('collapsiblock-' + id); if(st === null){ st = mystatus; } $.cookie('collapsiblock-' + id, st == 2 ? 3 : 2, {path: Drupal.settings.jstools.basePath,expire:365}); /* EZ No cookies: $.cookie('collapsiblock-' + id, st == 2 ? 3 : 2, {path: Drupal.settings.jstools.basePath}); */ if ($(this).is('.collapsiblockCollapsed')) { $(this).removeClass('collapsiblockCollapsed'); $(this.target).slideDown(200); } else { $(this).addClass('collapsiblockCollapsed'); $(this.target).slideUp(200); } }); // Leave active blocks uncollapsed. var sts = $.cookie('collapsiblock-' + id); if(sts === null){ sts = mystatus; } if (sts == 3) { $(titleElt).addClass('collapsiblockCollapsed'); $(titleElt.target).hide(); } } }); };