var g_lang = 'de';
var current_site = 0;
var PicArr = new Array(24);
var ArrIsInitialized = 0;
var wasclicked = 0;
var do_reloadLang = 1;

function noop(){}

function InitPics(idx_beg, name)
{
	var _lang = 'en';
	PicArr[idx_beg+0] = new Image(); PicArr[idx_beg+0].src = 'graphics/' + name + '_' + _lang + '_n.gif';
	PicArr[idx_beg+1] = new Image(); PicArr[idx_beg+1].src = 'graphics/' + name + '_' + _lang + '_o.gif';
	PicArr[idx_beg+2] = new Image(); PicArr[idx_beg+2].src = 'graphics/' + name + '_' + _lang + '_a.gif';
	PicArr[idx_beg+3] = new Image(); PicArr[idx_beg+3].src = 'graphics/' + name + '_' + _lang + '_ao.gif';
}

function InitAllPics()
{
	if (!ArrIsInitialized)
	{
		InitPics(0,  'start');
		InitPics(4,  'bilder');
		InitPics(8,  'katalog');
		InitPics(12, 'kontakt');
		InitPics(16, 'links');
		InitPics(20, 'press');
	}
	ArrIsInitialized = 1;
}

function onLoadMain()
{
	document.body.onselectstart = function () {return false;};
	document.body.oncontextmenu = function () {return false;};
	document.body.ondragstart = function () {return false;};
}	

function setpicobj(obj, idx_offset)
{
	if (obj.src != PicArr[idx_offset].src)
		obj.src = PicArr[idx_offset].src;
}

function setpicswitch(switchwhat, idx_offset)
{
	switch(switchwhat)
	{
		case 0: setpicobj(document.start,    idx_offset + 0);  break
		case 1: setpicobj(document.pictures, idx_offset + 4);  break
		case 2: setpicobj(document.catalog,  idx_offset + 8);  break
		case 3: setpicobj(document.contact,  idx_offset + 12); break
		case 4: setpicobj(document.links,    idx_offset + 16); break
		case 5: setpicobj(document.press,    idx_offset + 20); break
	}
}

function setpicexept(exceptwhat, idx_offset)
{
	if (exceptwhat != 0) setpicobj(document.start,    idx_offset + 0);
	if (exceptwhat != 1) setpicobj(document.pictures, idx_offset + 4);
	if (exceptwhat != 2) setpicobj(document.catalog,  idx_offset + 8);
	if (exceptwhat != 3) setpicobj(document.contact,  idx_offset + 12);		
	if (exceptwhat != 4) setpicobj(document.links,    idx_offset + 16);	
	if (exceptwhat != 5) setpicobj(document.press,    idx_offset + 20);	
}

function checksite()
{
	var _url = mainframe.location.href;
	var pos = _url.lastIndexOf("/");
	
	if (pos != -1) //e.g. IE
	{
		_url = _url.slice(pos+1);
		
		if (-1 != _url.indexOf('main'))     current_site = 0;
		if (-1 != _url.indexOf('pictures')) current_site = 1;
		if (-1 != _url.indexOf('catalog'))  current_site = 2;
		if (-1 != _url.indexOf('contact'))  current_site = 3;
		if (-1 != _url.indexOf('links'))    current_site = 4;
		if (-1 != _url.indexOf('press'))    current_site = 5;

		if (!wasclicked)
		{
			setpicexept(current_site, 0);
			setpicswitch(current_site, 2);
			
		}
		wasclicked = 0;
		closeLightBox();//only for secure
	}
	else
	{
		window.setTimeout("checksite()",100);
	}
}

function change(action, goto)
{
	if (action==2 || action==1)
	{
		setpicexept(current_site, 0);
		setpicswitch(current_site, 2);
	}
	if (action==1) //mouseover
	{
		if (goto == current_site)
			setpicswitch(goto, 3);
		else
			setpicswitch(goto, 1);
	}
	if (action==0 /*current_site != goto*/) //click
	{
		setpicswitch(current_site, 0);
		current_site = goto;
		setpicswitch(current_site, 3);
		wasclicked = 1;
		
		switch(current_site)
		{
			case 0: mainframe.location.href='main.html';     break;
			case 1: mainframe.location.href='pictures.html'; break;
			case 2: mainframe.location.href='catalog.html';  break;
			case 3: mainframe.location.href='contact.html';  break;
			case 4: mainframe.location.href='links.html';    break;
			case 5: mainframe.location.href='press.html';    break;
		}
	}	
}


function replaceBlank()
{
	document.location.replace('main.html');
	InitAllPics();
}

//-------------------------------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------------------------

var popupopened = null;

function openDisclaimer()
{
	if (popupopened && popupopened.closed == false && popupopened.name == "Disclaimer")
		popupopened.focus();
	else
	{
		if (popupopened && popupopened.closed == false)
			popupopened.close();
		popupopened = window.open("disclaimer.html", "Disclaimer", "width=500,height=600,dependent=yes,menubar=no,status=no,toolbar=no,scrollbars=yes");
	}
}

function openImpressum()
{
	if (popupopened && popupopened.closed == false && popupopened.name == "Impressum")
		popupopened.focus();
	else
	{
		if (popupopened && popupopened.closed == false)
			popupopened.close();
		popupopened = window.open("impressum.html", "Impressum", "width=300,height=200,dependent=yes,menubar=no,resizable=no,status=no,toolbar=no");	
	}
}


//-------------------------------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------------------------

var Lightboxbg_is_initialized = 0;
var Lightbox_is_visible = 0;
var Lightbox_Elements = new Array();
var Lightbox_ElementsDesc = new Array();

function addLightBoxElements(pics, desc)
{
	Lightbox_Elements.length = 0;
	for (var i = 0; i < pics.length; i++)
	{
		Lightbox_Elements[i] = pics[i];
		Lightbox_ElementsDesc[i] = desc[i];
	}
}

function detectMacXFF() {
  var userAgent = navigator.userAgent.toLowerCase();
  if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) {
    return true;
  }
  return false;
}

function setLightBoxElement(graphic, _title)
{
	if (!Lightboxbg_is_initialized)
	{
		//set lightboxBG
		var _Shade = document.getElementById('lightboxbg');
		if (detectMacXFF()) 
		{
			//osx ff css opacity + flash wmode transparent doesn't work
			_Shade.style.backgroundImage="url(graphics/opaque_lb.jpg)";
			_Shade.style.borderStyle = "solid";
			_Shade.style.borderWidth = "1px";
			 _Shade.style.borderColor = "#646464";
		} 
		else
		{
			_Shade.style.backgroundColor = "#FFF";
			_Shade.style.MozOpacity = .8;
			_Shade.style.opacity = .8;
			_Shade.style.filter = "alpha(opacity=80)";
		}
		Lightboxbg_is_initialized = 1;
	}
		
	//set lightbox-image
	var lbc = document.getElementById('lightboxcontent');
	if (lbc)
	{
		lbc.style.visibility="hidden";
			
		var ni=new Image();
		ni.src = graphic;
		lbc.src = ni.src;
		setLightBoxTitle(_title);
	}
	//set visibility of lightbox
	if (!Lightbox_is_visible)
	{
		var lb = document.getElementById('lightbox');
		lb.style.visibility="visible";
		Lightbox_is_visible = 1;
	}	
	window.setTimeout("setLightBoxElementComplete()",800);
}

function setLightBoxElementComplete()
{
	var lbc = document.getElementById('lightboxcontent');
	var lbcd = document.getElementById('lightboxcontent2');
	if (lbc && lbcd)
	{
		if (!lbc.complete)
			window.setTimeout("setLightBoxElementComplete()",200);
		else if (Lightbox_is_visible)
		{
			lbc.style.visibility="visible";
			lbcd.style.visibility="visible";
			setLightBoxPrevAndNextButtons(lbc.src);
		}
	}
}

function closeLightBox()
{
	if (Lightbox_is_visible)
	{
		//set visibility of lightbox
		var lb = document.getElementById('lightbox');
		var lbc = document.getElementById('lightboxcontent');
		var lbcd = document.getElementById('lightboxcontent2');
		var pb = document.getElementById('lightboxprevbtn');
		var nb = document.getElementById('lightboxnextbtn');
		if (lb && lbc && pb && nb)
		{
			lb.style.visibility="hidden";
			lbc.style.visibility="hidden";
			lbcd.style.visibility="hidden";
			pb.style.visibility="hidden";
			nb.style.visibility="hidden";
			lbcd
			Lightbox_is_visible = 0;
		}
	}	
}

function setLightBoxTitle(_title)
{
	var lbcs = document.getElementById('lightboxcontentdesc');
	if (lbcs)
		lbcs.innerHTML = _title;
}

function findLightBoxGraphic(graphic)
{
	for (var i=0;i<Lightbox_Elements.length;i++)
	{
		if (Lightbox_Elements[i] == graphic || -1 != graphic.indexOf(Lightbox_Elements[i]))
			return i;
	}
	return -1;
}

function setLightBoxPrevAndNextButtons(graphic)
{
	var i = findLightBoxGraphic(graphic);
	if (i != -1)
	{
		var pb = document.getElementById('lightboxprevbtn');
		if (pb)
		{
			if (i > 0)
				pb.style.visibility="visible";
			else
				pb.style.visibility="hidden";
		}
		var nb = document.getElementById('lightboxnextbtn');
		if (nb)
		{
			if (i < Lightbox_Elements.length-1)
				nb.style.visibility="visible";
			else
				nb.style.visibility="hidden";
		}
	}
}

function changeartnavimage(_action)
{
	switch (_action)
	{
		case 0: //click_prev
			var lbc = document.getElementById('lightboxcontent');
			if (lbc)
			{
				lbc.blur();
				lbc.style.focus = "false";
				var i = findLightBoxGraphic(lbc.src);
				if (i > 0)
					setLightBoxElement(Lightbox_Elements[i-1], Lightbox_ElementsDesc[i-1]);
			}

			break;
		case 1: //mouseover_prev
			var ImagePrevO = new Image();
			ImagePrevO.src = "graphics/katalog_bo.jpg";				
			if (document.lightboxprevbtn.src != ImagePrevO.src)
				document.lightboxprevbtn.src = ImagePrevO.src;
			changeartnavimage(5);
			break;		
		case 2: //mouseout_prev
			var ImagePrevN = new Image();
			ImagePrevN.src = "graphics/katalog_bn.jpg";
			if (document.lightboxprevbtn.src != ImagePrevN.src)
				document.lightboxprevbtn.src = ImagePrevN.src;
			break;
		case 3: //click_next
		
			var lbc = document.getElementById('lightboxcontent');
			if (lbc)
			{
				lbc.blur();
				lbc.style.focus = "false";
				var i = findLightBoxGraphic(lbc.src);
				if (i != -1 && i < Lightbox_Elements.length-1)
					setLightBoxElement(Lightbox_Elements[i+1], Lightbox_ElementsDesc[i+1]);
			}
			
			break;
		case 4: //mouseover_next
			var ImageNextO = new Image();
			ImageNextO.src = "graphics/katalog_fo.jpg";
			if (document.lightboxnextbtn.src != ImageNextO.src)
				document.lightboxnextbtn.src = ImageNextO.src;
			changeartnavimage(2);
			break;	
		case 5: //mouseout_next
			var ImageNextN = new Image();
			ImageNextN.src = "graphics/katalog_fn.jpg";
			if (document.lightboxnextbtn.src != ImageNextN.src)
				document.lightboxnextbtn.src = ImageNextN.src;
			break;			
	}
}

function changeclickto(_call)
{
	var lbc = document.getElementById('lightboxcenter');
	if (lbc)
	{
		var newcall = _call.replace(/__/, "()");
		eval("lbc.onclick = function " + _call + "(){" + newcall + ";}");
	}
}
