﻿function JsManager() {
    //this._form = document.forms[0];
}
JsManager.prototype.showSubMenu = function(e, idMenu, display) {
    var obj = document.getElementById(idMenu);
    e = getEvent(e);
    var caller = getEventTarget(e);
    if (obj) {
        if (display == 1) {
            obj.style.position = 'absolute';
            obj.style.display = 'block';
            obj.style.left = getPos(caller)[0] + 'px';
            obj.style.top = getPos(caller)[1] + 'px';

            //alert('left:' + obj.style.left + ' top:' + obj.style.top);
        } else {
            obj.style.display = 'none';
        }
    }
};
JsManager.prototype.getEvent = function(e) {
    if (!e) return window.event;
    return e;
};
JsManager.prototype.getEventTarget = function(e) {
    var target = (e.target) ? e.target : e.srcElement;
    if (target.nodeType == 3) target = target.parentNode;   //bug di Safari
    return target;
};
JsManager.prototype.createHidden = function(namesValues) {
    if (document.createElement) {
        var arr = namesValues.split(',');
        for (i = 0; i < arr.length; i++) {
            var tokens = arr[i].split('=');
            var oldObj = document.getElementById(tokens[0]);
            if (oldObj) {
                oldObj.value = '';
                oldObj.value = tokens[1];
            } else {
                var newField = document.createElement("input");
                newField.type = "hidden";
                newField.name = tokens[0];
                newField.id = tokens[0];
                newField.value = tokens[1];
                document.forms[0].appendChild(newField);
            }
        }
    } else {
        alert('Il browser in uso non supporta operazioni fondamentali per l\'uso di questo sito.')
    }
};
JsManager.prototype.removeHidden = function(namesValues) {
    var arr = namesValues.split(',');
    for (i = 0; i < arr.length; i++) {
        var tokens = arr[i].split('=');

        if (document.getElementById(tokens[0])) {
            document.forms[0].removeChild(tokens[0]);
        }
    }
};

JsManager.prototype.getPos = function(caller) {
    var oNode = caller;
    var iLeft = 0;
    var iTop = 0;
    while (oNode) {
        //if (oNode != null) {
        iLeft += oNode.offsetLeft;
        iTop += oNode.offsetTop;

        oNode = oNode.offsetParent;
        //}
    }
    return new Array(iLeft, iTop);
};
JsManager.prototype.setLight2Image = function(img,isOver){
    opacity= (isOver ? 30 : 100);
     if (navigator.appName.indexOf("Netscape")!=-1 &&parseInt(navigator.appVersion)>=5){
        img.style.MozOpacity=opacity/100;
     }
     else if (navigator.appName.indexOf("Microsoft")!= -1 &&parseInt(navigator.appVersion)>=4){
        img.filters.alpha.opacity=opacity;
     }
};
JsManager.prototype.doActivateMenu = function(nomeMenu){
    var arrHyp=document.getElementsByTagName('a');
    for (var i=0;i<arrHyp.length;i++){
        var hyp=arrHyp[i];
        if (!hyp.name) continue;
        hyp.style.color='';
        if (hyp.name==nomeMenu){
            hyp.style.color='#fff';
        }
    }
};
JsManager.prototype.doFindCatImage = function(tagName,isOver){
    var arrImg=document.getElementsByTagName('img');
    for (var i=0;i<arrImg.length;i++){
        var img=arrImg[i];
        if (!img.name) continue;
        if (img.name==tagName){
            this.setLight2Image(img,isOver);
            break;
        }
    }
};
