var euromap =
{
	params :
	{
		trigger : null
		,map : null
		,hover : null
		,info : null
		,overlays :
		{
			map : null
			,info : null
		}
	}
	,init : function()
	{
		if(euromap.params.trigger = afw.common.functions.getElement('euromap_trigger'))
		{
			euromap.params.trigger.onclick = euromap.showMap;
		}
	}
	,showMap : function()
	{
		var osd, template = afw.common.functions.getElement('euromap-osd-template');
		if(template)
		{
			osd = template.cloneNode(true);
			osd.id = 'osd_' + afw.common.functions.randomID();
			euromap.params.overlays.map = afw.module.overlay.open();
			euromap.params.map = document.createElement('IMG');
			euromap.params.map.src = '/images/euromap-530.png';
			euromap.params.map.alt = '';
			euromap.params.map.border = 0;
			euromap.params.map.useMap = '#euromap-map';
			euromap.params.overlays.map.appendChild(euromap.params.map);
			euromap.params.overlays.map.appendChild(osd);
			var dim = afw.common.functions.getDimensions(euromap.params.overlays.map);
			euromap.params.overlays.map.style.marginLeft = '-' + parseInt(dim.width / 2) + 'px';
			euromap.params.overlays.map.style.marginTop = '-' + parseInt(dim.height / 2) + 'px';
		}
	}
	,showInfo : function(ccode, dom)
	{
		dom.blur();
		var sections, dim, s, template = afw.common.functions.getElement('euromap-info-template');
		if(template && euromap_i18n[ccode])
		{
			euromap.params.overlays.info = afw.module.overlay.open();
			euromap.params.info = template.cloneNode(true);
			euromap.params.info.id = 'infobox_' + afw.common.functions.randomID();
			sections =
			{
				text :
				{
					title : euromap_i18n[ccode].title
					,office : euromap_i18n[ccode].office
					,contracting : euromap_i18n[ccode].contracting
					,production : euromap_i18n[ccode].production
					,sales : euromap_i18n[ccode].sales
				}
				,dom :
				{
					title : afw.common.functions.getChildren(euromap.params.info, 'DIV', 'title')[0]
					,office : afw.common.functions.getChildren(euromap.params.info, 'DIV', 'office')[0]
					,contracting : afw.common.functions.getChildren(euromap.params.info, 'DIV', 'contracting')[0]
					,production : afw.common.functions.getChildren(euromap.params.info, 'DIV', 'production')[0]
					,sales : afw.common.functions.getChildren(euromap.params.info, 'DIV', 'sales')[0]
				}
			};
			for(s in sections.text)
			{
				if(sections.text[s] == '')
				{
					sections.dom[s].style.display = 'none';
				}
				else
				{
					afw.common.functions.getChildren(sections.dom[s], 'DIV', 'text')[0].innerHTML = sections.text[s];
				}
			}
			euromap.params.overlays.info.appendChild(euromap.params.info);
			dim = afw.common.functions.getDimensions(euromap.params.overlays.info);
			euromap.params.overlays.info.style.marginLeft = '-' + parseInt(dim.width / 2) + 'px';
			euromap.params.overlays.info.style.marginTop = '-' + parseInt(dim.height / 2) + 'px';
		}
	}
	,hover : function(ccode)
	{
		if(!euromap.params.hover)
		{
			euromap.params.hover = document.createElement('IMG');
			euromap.params.hover.id = 'euromap-map-hover';
			euromap.params.hover.alt = '';
			euromap.params.hover.border = 0;
			euromap.params.hover.useMap = '#euromap-map';
			euromap.params.overlays.map.appendChild(euromap.params.hover);
		}
		euromap.params.hover.style.display = 'block';
		euromap.params.hover.src = '/images/euromap-530-' + ccode + '.png';
	}
	,hoverOut : function()
	{
		if(euromap.params.hover)
		{
			euromap.params.hover.style.display = 'none';
		}
	}
};
afw.common.functions.addEvent('load', window, euromap.init);
