var worldmappath = new Array();
worldmappath[0] = new Array();
worldmappath[1] = new Array();
worldmappath[2] = new Array();

/* image stystem path */
var WMimgPath = '/SiteCollectionImages/';
/* map image properties */
var WMbgImagePath = 'bg_rightwmTeaser.jpg';
var WMbgImageAlt = 'Allianz Worldmap';
/* headline text */
var WMheadlineText = 'Career Finder';
/*  map attribute */
var WMmapAttribute = 'wmteaserworldmap';
/* styleklasse für die image divs*/
var WMstyleClass = 'wmteaserimage';
/* variablen zum splitten der urls */
var WMsplitdot = '.';
var WMsplitslash = '/';

/* arrays mit image-area attributen */
var WMimgAttributes = new Array();
WMimgAttributes[0] = new Array();
WMimgAttributes[0]['imgalt'] = 'Allianz USA';
WMimgAttributes[0]['imgpath'] = 'bg_rightwmTeaserUsHI.jpg';
WMimgAttributes[1] = new Array();
WMimgAttributes[1]['imgalt'] = 'Allianz Europe';
WMimgAttributes[1]['imgpath'] = 'bg_rightwmTeaserEuropeHI.jpg';
WMimgAttributes[2] = new Array();
WMimgAttributes[2]['imgalt'] = 'Allianz Asia';
WMimgAttributes[2]['imgpath'] = 'bg_rightwmTeaserAsiaHI.jpg';

var WMareaAttributes = new Array();
WMareaAttributes[0] = new Array();
WMareaAttributes[0]['title'] = 'americas';
WMareaAttributes[0]['coords'] = ['8,0,50,50'];
WMareaAttributes[1] = new Array();
WMareaAttributes[1]['title'] = 'europe';
WMareaAttributes[1]['coords'] = ['63,20,90,43'];
WMareaAttributes[2] = new Array();
WMareaAttributes[2]['title'] = 'asiapacific';
WMareaAttributes[2]['coords'] = ['100,40,145,80'];

var WMselectAttributes = new Array();
WMselectAttributes[0] = new Array();
WMselectAttributes[0]['opttext'] = 'Please select';
WMselectAttributes[1] = new Array();
WMselectAttributes[1]['opttext'] = 'Americas';
WMselectAttributes[2] = new Array();
WMselectAttributes[2]['opttext'] = 'Europe';
WMselectAttributes[3] = new Array();
WMselectAttributes[3]['opttext'] = 'Asia Pacific';

// browserabfrage 
var WMname = navigator.userAgent.toLowerCase();
//InternetExplorer
var WMie = (WMname.indexOf("msie") > -1);

function getWMElem(key) {
    return document.getElementById(key);
} // end func

function createWMElem(key) {
    return document.createElement(key);
} // end func

function splitWMElem(elem, attribute) {
	var res=String(elem).split(attribute);
    for (i = 0; i < res.length; i++) {
    if (res[i] != undefined && res[i] != "undefined" && res[i] != "") {
		for(p=0;p<WMareaAttributes.length;p++){
			if(res[i].toLowerCase() == WMareaAttributes[p]['title']){
				return res[i];
			}
		}
    }
	}
} // end func

function iesplit(elem) {
    var res = String(elem).split('/');
    for (i = 0; i < res.length; i++) {
        if (res[i] != undefined && res[i] != "undefined" && res[i] != "") {
			for(p=0;p<WMareaAttributes.length;p++){
				if(res[i].toLowerCase() == WMareaAttributes[p]['title']){
					return res[i];
				}
			}
        }
    }
} // end func

function showWMElem() {
    if (WMie) {
        var elem = iesplit(this);
    } else {
        elem = splitWMElem(String(this), WMsplitslash);
    }
    elem = elem.toLowerCase();
    getWMElem(elem).style.display = "block";
} // end func

function hideWMElem() {
    if (WMie) {
        var elem = iesplit(this);
        //elem = splitWMElem(elem, WMsplitdot)[0];
    } else {
        elem = splitWMElem(String(this), WMsplitslash);
    }
    elem = elem.toLowerCase();
    getWMElem(elem).style.display = "none";
} // end func

function buildWMTeaser(obj) {
    // wm teaser div erzeugen
    var TeaserObj = getWMElem(obj);
    // headline setzen 
    var headline = createWMElem('h3');
    headline.innerHTML = WMheadlineText;
    // rahmendiv 
    var wrapper_div = createWMElem('div');
    wrapper_div.id = 'worldmapteaserdiv';
    wrapper_div.style.background = '#b7bdca';
    // map bg image 
    var bg_image = createWMElem('img');
    bg_image.src = WMimgPath + WMbgImagePath;
    bg_image.alt = WMbgImageAlt;
    bg_image.useMap = '#' + WMmapAttribute;
    // hintergrundbild an rahmendiv hängen
    wrapper_div.appendChild(bg_image);
    // map tag erzeugen
    var map = createWMElem('map');
    map.name = WMmapAttribute;
    map.id = WMmapAttribute;

    for (i = 0; i < 3; i++) {
        areaTag = createWMElem("area");
        areaTag.shape = "RECT";
        areaTag.coords = WMareaAttributes[i]['coords'];
        areaTag.title = WMimgAttributes[i]['imgalt'];
        areaTag.href = worldmappath[i];
        // events deffinieren
        areaTag.onmouseover = showWMElem;
        areaTag.onmouseout = hideWMElem;
        // areas an map tag hängen
        map.appendChild(areaTag);
        // map tag an rahmendiv hängen


        // div für die overlay images erzeugen
        countryDiv = createWMElem('div');
        countryDiv.className = WMstyleClass;
        countryDiv.id = WMareaAttributes[i]['title'];
        // overlayimages setzen
        var countryImg = createWMElem('img');
        countryImg.src = WMimgPath + WMimgAttributes[i]['imgpath'];
        countryImg.useMap = '#' + WMmapAttribute;
        countryImg.alt = WMimgAttributes[i]['imgalt'];
        // elemente zusammenfügen		
        wrapper_div.appendChild(map);
        wrapper_div.appendChild(countryDiv);
        countryDiv.appendChild(countryImg);
    }
    var selectBox = createWMElem('select');
    for (i = 0; i < WMselectAttributes.length; i++) {
        var option = createWMElem('option');
        if (i > 0)
            option.value = worldmappath[i - 1];
        option.innerHTML = WMselectAttributes[i]['opttext'];
        selectBox.appendChild(option);
    }
    selectBox.onchange = function() { location.href = this.options[this.selectedIndex].value; };
    wrapper_div.appendChild(selectBox);
    // objecte an teaser anhängen	
    TeaserObj.appendChild(headline);
    TeaserObj.appendChild(wrapper_div);

} // end func

function checkWMTeaser() {
    var obj = 'worldmapteaser';
    var leftteaser = 'leftworldmapteaser'

    if (getWMElem(obj)) {
        buildWMTeaser(obj);
    }
    if (getWMElem(leftteaser)) {
        leftWMTeaserElements();
    }
}

function leftWMTeaserElements() {
    var teaser = getWMElem('leftworldmapteaser');
    var map = teaser.getElementsByTagName('area');
    var option = teaser.getElementsByTagName('option');
    for (i = 0; i < map.length; i++) {
        map[i].href = worldmappath[i];
    }
    for (t = 0; t < option.length; t++) {
        if (t > 0) {
            option[t].value = worldmappath[t - 1];
        }
    }
}
