
var objToHide = '0';

getElementsByClassName = function(srcElm, clName, dive) {
        if (document.getElementsByTagName) {
                this.srcElm = srcElm;
                this.clName = clName;
                this.dive = (dive) ? true : false;
                this.foundElements = [];
                this.allElements = this.srcElm.getElementsByTagName("*");

                for (var i = 0; i < this.allElements.length; i++) {
                        if (this.allElements[i].className == this.clName) {
                                if (this.dive) {
                                        if (this.allElements[i].parentNode == this.srcElm) {
                                                this.foundElements[this.foundElements.length] = this.allElements[i];
                                        }
                                } else {
                                                this.foundElements[this.foundElements.length] = this.allElements[i];
                                                }
                        }
                }
                return this.foundElements;
        } else {
                return [];
        }
}


function findPosX(obj){
        var curleft = 0;
        if (obj.offsetParent){
                while (obj.offsetParent){
                        curleft += obj.offsetLeft
                        obj = obj.offsetParent;
                }
        }
        else if (obj.x)
                curleft += obj.x;
        return curleft;
}

function findPosY(obj)
{
        var curtop = 0;
        if (obj.offsetParent){
                while (obj.offsetParent){
                        curtop += obj.offsetTop
                        obj = obj.offsetParent;
                }
        }
        else if (obj.y)
                curtop += obj.y;
        return curtop;
}


function isObject(obj){
        return obj ? true : false;
}


function create_log(str)
{
        document.getElementById('debug').innerHTML = document.getElementById('debug').innerHTML + str + '<br />';
}

function show_top_menu (idofmenu)
{
        parent_idofmenu = 't_a_id' + idofmenu
        /**/
        var isvisible = document.getElementById('ul'+idofmenu).style.visibility;

        if (!isvisible || isvisible == 'hidden'){

                if (isObject(document.getElementById(parent_idofmenu))){
                        /**/
                        /**/
                        if (isObject(document.getElementById('ul'+idofmenu))){
                                /*
                                roll_pos = findPosX(document.getElementById(parent_idofmenu));
                                //~ document.getElementById(parent_idofmenu).style.backgroundPosition = "0px 0px";
                                document.getElementById('ul'+idofmenu).style.left = roll_pos + 'px';
                                */
                                document.getElementById('ul'+idofmenu).style.visibility = 'visible';


                                /*NEW*/
                                var sel=document.getElementsByTagName("SELECT")
                                var iter;
                                for(iter=0;iter<sel.length;iter++){
                                        var rolY = findPosY(document.getElementById('ul'+idofmenu)) + document.getElementById('ul'+idofmenu).offsetHeight;
                                        var rolXnorm = findPosX(document.getElementById('ul'+idofmenu));
                                        var rolX = rolXnorm + document.getElementById('ul'+idofmenu).offsetWidth;
                                        var selXnorm = findPosX(sel[iter]);
                                        var selX = selXnorm + sel[iter].offsetWidth;
                                        var selY = findPosY(sel[iter]);
                                        if (selY < rolY){
                                                if (selX > rolXnorm && selXnorm < rolX){
                                                        sel[iter].style.visibility="hidden";
                                                }
                                        }
                                }
                                /*NEW*/

                        }

/**/
/**/
                }
        }
} // end of function

function hide_top_menu (idofmenu)
{
        parent_idofmenu = 't_a_id' + idofmenu
        /**/
        if (isObject(document.getElementById(parent_idofmenu))){
                /**/
                /**/
                if (isObject(document.getElementById('ul'+idofmenu))){
                        /**/
                        roll_pos = findPosX(document.getElementById(parent_idofmenu));
                        document.getElementById('ul'+idofmenu).style.visibility = 'hidden';
                        /**/
                }
                /**/
                /**/
        }
        /**/
        /**/
        if (isObject(document.getElementById(idofmenu))){
                document.getElementById(idofmenu).style.display = 'none';
        }
        /**/
        /*NEW*/
        var sel=document.getElementsByTagName("SELECT")
        var iter;
        for(iter=0;iter<sel.length;iter++){
                sel[iter].style.visibility="visible";
        }
        /*NEW*/
}


function show_left_menu (idofmenu)
{
        document.getElementById(idofmenu).style.display = 'list';
}



function show_popup_menu(idofmenu){
        parent_idofmenu = "t_id_" + idofmenu;

       /*
        roll_pos = findPosY(document.getElementById(parent_idofmenu));
        roll_pos = roll_pos - 95;
        document.getElementById('t_ul_id_'+idofmenu).style.top = roll_pos + 'px';
        */
        if(objToHide != idofmenu && objToHide != '0'){
                document.getElementById('t_ul_id_'+objToHide).style.visibility = 'hidden';
        }
        idofmenu = "t_ul_id_" + idofmenu;

        document.getElementById(idofmenu).style.visibility = 'visible';
        objToHide = '0';
}

function hide_popup_menu(idofmenu){

        if(objToHide != idofmenu && objToHide != '0'){
                document.getElementById('t_ul_id_'+objToHide).style.visibility = 'hidden';
        }
        objToHide = idofmenu;
        setTimeout("hide_popup_menu_total("+idofmenu+")", 3);
}

function hide_popup_menu_total(idofmenu){
        if (objToHide == idofmenu){
                idofmenu = "t_ul_id_" + idofmenu;
                document.getElementById(idofmenu).style.visibility = 'hidden';
        }
}

function show_popup_menu_left(idofmenu){
        document.getElementById(idofmenu).style.visibility = 'visible';

        /*NEW*/

        var sel=document.getElementsByTagName("SELECT")
        var iter;
        for(iter=0;iter<sel.length;iter++){
                var rolYnorm = findPosY(document.getElementById(idofmenu));
                var rolY = rolYnorm + document.getElementById(idofmenu).offsetHeight;
                var rolXnorm = findPosX(document.getElementById(idofmenu));
                var rolX = rolXnorm + document.getElementById(idofmenu).offsetWidth;
                var selXnorm = findPosX(sel[iter]);
                var selX = selXnorm + sel[iter].offsetWidth;
                var selYnorm = findPosY(sel[iter]);
                var selY = selYnorm + sel[iter].offsetHeight;
                if (selY > rolYnorm && selYnorm < rolY){
                if (selX > rolXnorm && selXnorm < rolX){
                        sel[iter].style.visibility="hidden";
                }
          }
        }
        /*NEW*/

}

function hide_popup_menu_left(idofmenu){
        document.getElementById(idofmenu).style.visibility = 'hidden';
        /*NEW*/
        var sel=document.getElementsByTagName("SELECT")
        var iter;
        for(iter=0;iter<sel.length;iter++){
                sel[iter].style.visibility="visible";
        }
        /*NEW*/
}