﻿var refreshNeeded = false;
function AttivaRefresh() {
    refreshNeeded = true;
}
function checkVisibility() {
    var i = 0;
    var isVisible = false;
    while (document.getElementById("SM" + i) != null && !isVisible) {
        isVisible = (document.getElementById("SM" + i).style.visibility == "visible");
        i++;
    }
    return isVisible;
}
function ChiudiTutti() {
    var i = 0;
    while (document.getElementById("SM" + i) != null) {
        changeOpac(0, "SM" + i);
        document.getElementById("SM" + i).style.visibility = "hidden";
        i++;
    }
    return refreshNeeded;
}
function ApriMenu(i) {
    var isVisible = checkVisibility();
    
    if (!isVisible) {              
        changeOpac(0, "SM" + i);
        document.getElementById("SM" + i).style.visibility = "visible";
        opacity("SM" + i, 0, 100, 500);
        refreshNeeded = false;
        return false;
    } else {
        //refreshNeeded = true;
        return ChiudiTutti();
    }
}
function ChiudiMenu(i) {
    document.getElementById("SM" + i).style.visibility = "hidden";
    var returnValue = refreshNeeded;
    refreshNeeded = false;
    return returnValue;
}
function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}
//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}
