﻿// Effects Functions

	var fps = 40;
	function slideUp(eleId, varY, transTime) {
		if(eleId) {
			j = 0;
			oDiv = document.getElementById(eleId);
			startY = varY;
			approxSteps = fps * (transTime / 1000);
			delay = transTime / approxSteps;
			sinInc = (Math.PI/2) / approxSteps;
			moveY = 1;
		}
 		if (j <= approxSteps) {
			var posY = (startY+moveY) - Math.ceil(Math.sin(j * sinInc) * startY);
			oDiv.style.height = posY + "px";
			j++;
			setTimeout("slideUp()", delay);
		} else {
		    //hide the object and back him to the original height
		    oDiv.style.display = 'none';
		    oDiv.style.height = startY;
			return;
		}
	}


	function slideDown(eleId, varY, transTime) {
		if(eleId) {
			j = 0;
			oDiv = document.getElementById(eleId);
			startY = 1;
			approxSteps = fps * (transTime / 1000);
			delay = transTime / approxSteps;
			sinInc = (Math.PI/2) / approxSteps;
			moveY = varY;
		}
 		if (j <= approxSteps) {
			var posY = startY + Math.ceil(Math.sin(j * sinInc) * moveY);
			oDiv.style.height = posY + "px";
			j++;
			setTimeout("slideDown()", delay);
		} else {
			return;
		}
	}
	
	function opacity(id, opacStart, opacEnd, millisec,bHide)
{
var speed = Math.round(millisec / 100);
var timer = 0;

if(opacStart > opacEnd)
{
for(i = opacStart; i >= opacEnd; i--) {
setTimeout("changeOpac(" + i + ",'" + id + "'," + bHide + ")",(timer * speed));
timer++;
}
}
else if(opacStart < opacEnd)
{
for(i = opacStart; i <= opacEnd; i++)
{
setTimeout("changeOpac(" + i + ",'" + id + "'," + bHide + ")",(timer * speed));
timer++;

}
}
}

function hideObject(objid)
{
document.getElementById(objid).style.display = 'none';
}

function changeOpac(opacity, id, bhide)
{
    if(document.getElementById(id)) {
        var object = document.getElementById(id).style;
        object.opacity = (opacity / 100);
        object.MozOpacity = (opacity / 100);
        object.KhtmlOpacity = (opacity / 100);
        object.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=" + opacity + ")";

        if (opacity == 0 && bhide)
            hideObject(id);

        if (opacity == 100)
            resetOpac(id);
    }
}

function resetOpac(id)
{
var object = document.getElementById(id).style;
object.opacity = '';
object.MozOpacity = '';
object.KhtmlOpacity = '';
object.filter = '';
object.display = 'block';
}
