var slider = function() {
    var array = []; var speed = 10; var timer = 10;
    return {
        init: function(t, c) {
            var s, ds, l, i, y;
            s = document.getElementById(t); ds = s.getElementsByTagName('div'); l = ds.length; i = y = 0;
            for (i = 0; i < l; i++) {
                var d, did; d = ds[i]; did = d.id;
                if (did.indexOf("header") != -1) {
                    y++; d.onclick = new Function("slider.process(this)");
                } else if (did.indexOf("content") != -1) {
                    array.push(did.replace('-content', '')); d.maxh = d.offsetHeight;
                    if (c != y) { d.style.height = '0px'; d.style.display = 'none' }
                    else { d.style.display = 'block' }
                }
            }
        },
        process: function(d) {
            var cl, i; cl = array.length; i = 0;
            for (i; i < cl; i++) {
                var s, h, c, cd;
                s = array[i]; h = document.getElementById(s + '-header');
                c = s + '-content'; cd = document.getElementById(c); clearInterval(cd.timer);
                if (h == d && cd.style.display == 'none') {
                    cd.style.display = 'block'; this.islide(c, 1);
                } else if (cd.style.display == 'block') { this.islide(c, -1) }
            }
        },
        islide: function(i, d) { var c, m; c = document.getElementById(i); m = c.maxh; c.direction = d; c.timer = setInterval("slider.slide('" + i + "')", timer) },
        slide: function(i) {
            var c, m, h, dist; c = document.getElementById(i); m = c.maxh; h = c.offsetHeight;
            dist = (c.direction == 1) ? Math.round((m - h) / speed) : Math.round(h / speed);
            if (dist <= 1) { dist = 1 }
            c.style.height = h + (dist * c.direction) + 'px'; c.style.opacity = h / c.maxh; c.style.filter = 'alpha(opacity=' + (h * 100 / c.maxh) + ')';
            if (h < 2 && c.direction != 1) {
                c.style.display = 'none'; clearInterval(c.timer);
            } else if (h > (m - 2) && c.direction == 1) { clearInterval(c.timer) }
        }
    };
} ();