Добавил к сворачиванию категорий красивый эфект, сохранение осталось, упростил настройку
в html-верх
<script type="text/javascript">
//cookies
function setcookie(a,b,c) {if(c){var d = new Date();d.setTime(d.getTime()+c);}if(a && b) document.cookie = a+'='+b+(c ? '; expires='+d.toUTCString() : '');else return false;}
function getcookie(a) {var b = new RegExp(a+'=([^;]){1,}');var c = b.exec(document.cookie);if(c) c = c[0].split('=');else return false;return c[1] ? c[1] : false;}var aimg = {
open: '-',
close: '+'
}
function categorytoggle(el){
var cat = $(el).parents('div.category');
cat.children('div.container').toggle('slow');
el.innerHTML = el.innerHTML == aimg.open ? aimg.close : aimg.open;
var catc = getcookie(cat.attr('id'));
catc = catc == 'close' ? 'open' : 'close';
setcookie(cat.attr('id'),catc,3600*24*30*1000);
}
</script>
вместо выделенных + и - можно вставить любой другой символ или картинку
<img src="адрес" border="0" />
+ соответствует закрытому блоку, а - открытому
в хтмл-низ ставить это
<script type="text/javascript"> $('#pun-main div.category > h2 div.catleft').after('<a href="#" onclick="categorytoggle(this); return false;" style="float: right;">'+aimg.open+'</a>'); for(var i=1;i<=$('#pun-main div.category').length;i++) if(getcookie('pun-category'+i)=='close'){ $('#pun-category'+i+' > div.container').css({display: 'none'}); $('#pun-category'+i+' > h2 > a').html(aimg.close) } </script>