﻿//browser variables
var browser = navigator.appName;

//help functie om in DNN een volledige id te vinden met een gedeelte
function getRealId(partialid) {
    var re = new RegExp(partialid, 'g');
    var elems = document.getElementsByTagName('*'), i = 0, el;
    while (el = elems[i++]) {
        if (el.id.match(re)) {
            return el.id;
        }
    }
    return "";
}

//functies om over Google Maps Api div element heen te kunnen met submenu dropdown divs (z-index)
function GoogleApiCheck()
{
    var check = false;
	var googleapiDiv = document.getElementById('map_canvas');
	if(googleapiDiv) {
	    check = true;
	}
	return check;
}
function GoogleApiEnableDisable(enableDisable)
{
	var googleapiDiv = document.getElementById('map_canvas');
	if(googleapiDiv) {
	    if (enableDisable) {
	        googleapiDiv.style.zIndex = 1;
	    }
	    else {
	        googleapiDiv.style.zIndex = -1;
	    }	
	}		
}

//Functies voor het openen van submenu dropdown divs
var timeout = 500;
var closetimer = 0;
var ddmenuitem = 0;

// open hidden layer
function mopen(id) {
    // cancel close timer
    mcancelclosetime();

    if (GoogleApiCheck()) {
        GoogleApiEnableDisable(false);
    }
    // close old layer
    if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';

    // get new layer and show it
    ddmenuitem = document.getElementById(id);
    if (ddmenuitem) ddmenuitem.style.visibility = 'visible';

}
// close showed layer
function mclose() {
    if (GoogleApiCheck()) {
        GoogleApiEnableDisable(true);
    }
    if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';
}

// go close timer
function mclosetime() {
    closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime() {
    if (closetimer) {
        window.clearTimeout(closetimer);
        closetimer = null;
    }
}

// close layer when click-out
document.onclick = mclose;
