var sldcontent_timerlen = 5;
var sldcontent_slideAniLen = 250;

var sldcontent_timerID = new Array();
var sldcontent_startTime = new Array();
var sldcontent_obj = new Array();
var sldcontent_endHeight = new Array();
var sldcontent_moving = new Array();
var sldcontent_dir = new Array();

function sldcontent_slidedown(sldcontent_objname){
        if(sldcontent_moving[sldcontent_objname])
                return;

        if(document.getElementById(sldcontent_objname).style.display != "none")
                return; // cannot slide down something that is already visible

        sldcontent_moving[sldcontent_objname] = true;
        sldcontent_dir[sldcontent_objname] = "down";
        sldcontent_startslide(sldcontent_objname);
}

function sldcontent_slideup(sldcontent_objname){
        if(sldcontent_moving[sldcontent_objname])
                return;

        if(document.getElementById(sldcontent_objname).style.display == "none")
                return; // cannot slide up something that is already hidden

        sldcontent_moving[sldcontent_objname] = true;
        sldcontent_dir[sldcontent_objname] = "up";
        sldcontent_startslide(sldcontent_objname);
}

function sldcontent_startslide(sldcontent_objname){
        sldcontent_obj[sldcontent_objname] = document.getElementById(sldcontent_objname);

        sldcontent_endHeight[sldcontent_objname] = parseInt(sldcontent_obj[sldcontent_objname].style.height);
        sldcontent_startTime[sldcontent_objname] = (new Date()).getTime();

        if(sldcontent_dir[sldcontent_objname] == "down"){
                sldcontent_obj[sldcontent_objname].style.height = "1px";
        }

        sldcontent_obj[sldcontent_objname].style.display = "block";

        sldcontent_timerID[sldcontent_objname] = setInterval('sldcontent_slidetick(\'' + sldcontent_objname + '\');',sldcontent_timerlen);
}

function sldcontent_slidetick(sldcontent_objname){
        var elapsed = (new Date()).getTime() - sldcontent_startTime[sldcontent_objname];

        if (elapsed > sldcontent_slideAniLen)
                sldcontent_endSlide(sldcontent_objname)
        else {
                var d =Math.round(elapsed / sldcontent_slideAniLen * sldcontent_endHeight[sldcontent_objname]);
                if(sldcontent_dir[sldcontent_objname] == "up")
                        d = sldcontent_endHeight[sldcontent_objname] - d;

                sldcontent_obj[sldcontent_objname].style.height = d + "px";
        }

        return;
}

function sldcontent_endSlide(sldcontent_objname){
        clearInterval(sldcontent_timerID[sldcontent_objname]);

        if(sldcontent_dir[sldcontent_objname] == "up")
                sldcontent_obj[sldcontent_objname].style.display = "none";

        sldcontent_obj[sldcontent_objname].style.height = sldcontent_endHeight[sldcontent_objname] + "%";

        delete(sldcontent_moving[sldcontent_objname]);
        delete(sldcontent_timerID[sldcontent_objname]);
        delete(sldcontent_startTime[sldcontent_objname]);
        delete(sldcontent_endHeight[sldcontent_objname]);
        delete(sldcontent_obj[sldcontent_objname]);
        delete(sldcontent_dir[sldcontent_objname]);

        return;
}


function sldcontent_toggleSlide(sldcontent_objname){
	if(document.getElementById(sldcontent_objname).style.display == "none"){
		// div is hidden, so let's slide down
		sldcontent_slidedown(sldcontent_objname);
	}else{
		// div is not hidden, so slide up
		sldcontent_slideup(sldcontent_objname);
	}
}
