/* ////////////////////////////////////////////////////////////////
                                Menü                               
                               By i4m                              
///////////////////////////////////////////////////////////////////

Struktur:

<ul id="//menuid//">
  <li><a>//Hauptmenüpunkt//</a>
    <ul>
      <li><a>//Untermenüpunkt//</a></li>
    </ul>
  </li>  //Der LI-Schluss-Tag muss nach der UL der Untermenüpunkte stehen!
</ul>
<script language="javascript">newmenu('//menuid//');</script>

*/


menu_timeout = 300;  // Millisekunden bis das Menü wieder verschwindet. (sollte über 100 sein)
activeitem = true;  // Wenn der Haupmenüpunkt aktiv bleiben soll beim überfahren des Submenüs

function hasli(objekt, tag){  // gibt die Anzahl der Unterobjekte zurück
	if(tag=="a"){  // gibt die Anzahl der A-Unterobjekte zurück
		if(objekt.getElementsByTagName("div")[0].getElementsByTagName("a").length > 0){
			return objekt.getElementsByTagName("div")[0].getElementsByTagName("a").length;	
		}
		return false;
	}
	else{  // gibt die Anzahl der LI-Unterobjekte zurück
		if(objekt.getElementsByTagName("li").length > 0){
			return objekt.getElementsByTagName("li").length;	
		}
		return false;		
	}
}
function newmenu(menuid){  // intialisiert das Menü
	isie = Boolean(document.body.currentStyle)  // Überprüft ob es Sich um einen IE handelt
	isns = Boolean(window.navigator.userAgent.indexOf("Netscape") != -1);  // Überprüft ob es Sich um einen NS handelt
	isnoff15 = Boolean(window.navigator.userAgent.indexOf("Firefox") != -1 && window.navigator.userAgent.indexOf("1.5") == -1 );  // FF nicht Versoin 1.5
	if(isnoff15){  // erstellt ein Element mit dem später die Textbreite festgestellt wird.
		document.write('<a href="#" id="textbreite"></a>');
	}
	menupunkte = new Array();  // Hauptmenüpunkte
	submenupunkte = new Array();  // Sumbenüpunkte
	menuover = new Array();  // Hier wird gespeichert welches Menü gerade Aktiv ist
	liobjekte = document.getElementById(menuid).getElementsByTagName("li");  // Alle LI-Objekte im Menü
	for(i=0; i<liobjekte.length; i++){
		if(hasli(liobjekte[i], "li")){  // Wenn der Menüpunkt Untermenüpunkte hat
			submenupunkte[menupunkte.length] = new Array();  // neues Array für die Submenüpunkte
			menupunkte[menupunkte.length] = liobjekte[i];  // Objekt in Array speichern
			menupunkte[menupunkte.length-1].innerHTML = menupunkte[menupunkte.length-1].innerHTML.split("<UL").join("<DIV").split("</UL>").join("</DIV>").split("<LI>").join("").split("</LI>").join("").split("<ul").join("<div").split("</ul>").join("</div>").split("<li>").join("").split("</li>").join("");  // alle UL durch DIV ersetzen und alle LI löschen
			menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].style.visibility = "hidden";  // dieses Submenü ausblenden
			menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].mid = menupunkte.length-1;  // Eigenschaft mid dem Submenü hinzufügen
			menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].onmouseover = function(){  // Ereigniss wenn der Cursor über das Submenü bewegt wird
				submenu_over(this.mid);
			}			
			menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].onmouseout = function(){  // Ereigniss wenn der Cursor das Submenü verlässt
				submenu_out(this.mid);
			}
			menupunkte[menupunkte.length-1].getElementsByTagName("a")[0].mid = menupunkte.length-1;  // Eigenschaft mid dem Hauptmenüpunkt hinzufügen
			menupunkte[menupunkte.length-1].getElementsByTagName("a")[0].onmouseover = function(){  // Ereigniss wenn der Cursor über den Hauptmenüpunkt bewegt wird
				menu_over(this.mid);
			}
			menupunkte[menupunkte.length-1].getElementsByTagName("a")[0].onmouseout = function(){  // Ereigniss wenn der Cursor den Hauptmenüpunkt verlässt
				menu_out(this.mid);
			}
			var maxwidth = 0;  // Variable zur Feststellung des breitesten Elements des Submenüs wird auf 0 gesetzt
			if(isnoff15){  // Wenn es sich um einen FF nicht 1.5 handelt wird dem Element zur Feststellung der Breite der Style des ersten A übergeben
				document.getElementById("textbreite").style.fontSize = window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").fontSize;
				document.getElementById("textbreite").style.fontFamily = window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").fontFamily;
				document.getElementById("textbreite").style.fontWeight = window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").fontWeight;
				document.getElementById("textbreite").style.paddingLeft = window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").paddingLeft;
				document.getElementById("textbreite").style.paddingRight = window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").paddingRight;
			}
			for(j = 0; j < hasli(menupunkte[menupunkte.length-1], "a"); j++){  // Alle Untermenüpunkte werden durchgelaufen
				menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].getElementsByTagName("a")[j].id = "m"+i+"sm"+j;  // eindeutige ID wird gesetzt
				submenupunkte[menupunkte.length-1][j] = menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].getElementsByTagName("a")[j];  // Element wird dem Array für Submenüpunkte zugeteilt
				if(isie | isns){  // Wennn es sich un einen IE oder NS handelt muss die Breite des Untermenüpunkts festgestellt werden
					if(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].offsetWidth*1 > maxwidth){
						//alert(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].offsetWidth);
						maxwidth = liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].offsetWidth*1;
						//alert(maxwidth);
						maxwidth=maxwidth+1;
					}
				}
				else if(isnoff15 && textwidth(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].innerHTML) > maxwidth){  // Wennn es sich un einen FF nicht 1.5 handelt muss die Breite des Untermenüpunkts festgestellt werden mit Hilfe der Funktion Textwidth
					maxwidth = textwidth(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].innerHTML);
				}
			}  
			if(isie | isns | isnoff15){ // Wenn die Breite festgestellt werden musste wird sie gesetzt
				liobjekte[i].getElementsByTagName("div")[0].style.width = maxwidth + "px";  // der DIV-Container des Submenüs wird auf die richtige Breite gesetzt
				if(isie){  // Wenn es sich um einen IE handelt kann der aktuelle Stye mit der Eigenschaft currentStyle festgestellt werden
					maxwidth = maxwidth - (parseInt(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0].currentStyle.paddingLeft) + parseInt(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0].currentStyle.paddingRight));
				}
				else{  // Ansonsten wird der Style mit getComputedStyle festgestellt
					maxwidth = maxwidth - (parseInt(window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").getPropertyValue("padding-left"))  +  parseInt(window.getComputedStyle(liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[0],"").getPropertyValue("padding-right")));
				}
				for(j = 0; j < hasli(liobjekte[i], "a"); j++){  // Alle Untermenüpunkte werden durchgelaufen
					liobjekte[i].getElementsByTagName("div")[0].getElementsByTagName("a")[j].style.width = maxwidth + "px";  // die Breite des Untermenüpunkts wird gesetzt
				}
			}
		}
	}
	for(i=0; i<menupunkte.length; i++){
		menupunkte[i].getElementsByTagName("a")[0].urclass = menupunkte[i].getElementsByTagName("a")[0].className;
	}
	// CSS-Classen für erstes und letztes Element werden gesetzt
	menupunkte[menupunkte.length-1].getElementsByTagName("div")[0].className += " last";
	menupunkte[0].getElementsByTagName("div")[0].className += " first";
	menupunkte[menupunkte.length-1].getElementsByTagName("a")[0].className += " last"
	menupunkte[0].getElementsByTagName("a")[0].className += " first";
	for(i=0; i< menupunkte.length; i++){
		submenupunkte[i][0].className += " first";
		submenupunkte[i][submenupunkte[i].length-1].className += " last";
	}
	if(isie){  // Wenn es sich um einen IE handelt wird der Selectbox-Bug umgangen
		fixIeSelectBoxBug();
	}
	if(isnoff15){ // Wenn es sich um einen FF nicht 1.5 handelt wird das Element zur Feststellung der Breite entfernt
		document.getElementById("textbreite").innerHTML = "";
		document.body.innerHTML.split('<a href="#" id="textbreite"></a>').join("");
	}
}
function menu_over(mid){
	menueinbl(mid);  // Submenü wird eingeblendet und andere ausgeblendet
	menuover[mid] = true;  // Wenn diese eigenschaft true ist dann wird das Submenü bei einem Timeout nicht ausgeblendet
	window.clearInterval(interval);  // Intervall wird gelöscht
}
function menu_out(mid){
	menuover[mid] = false;  // Wenn diese eigenschaft true ist dann wird das Submenü bei einem Timeout nicht ausgeblendet
	window.clearInterval(interval);  // Intervall wird gelöscht
	interval = window.setInterval("menuout_time("+mid+")", menu_timeout);  // Intervall wird gesetzt
}
function submenu_over(mid){
	menuover[mid] = true;  // Wenn diese eigenschaft true ist dann wird das Submenü bei einem Timeout nicht ausgeblendet
	window.clearInterval(interval);  // Intervall wird gelöscht
}
function submenu_out(mid){
	menuover[mid] = false;  // Wenn diese eigenschaft true ist dann wird das Submenü bei einem Timeout nicht ausgeblendet
	window.clearInterval(interval);  // Intervall wird gelöscht
	interval = window.setInterval("menuout_time("+mid+")", menu_timeout);  // Intervall wird gesetzt
}
function menuout_time(mid){  // Wird durch einen Intervall aufgerufen
	if(menuover[mid] == false){  // Wenn diese eigenschaft true ist dann wird das Submenü bei einem Timeout nicht ausgeblendet
		menupunkte[mid].getElementsByTagName("div")[0].style.visibility = "hidden";
		menupunkte[mid].getElementsByTagName("a")[0].className = menupunkte[mid].getElementsByTagName("a")[0].className.split("aktiv").join("");
	}
	window.clearInterval(interval);  // Intervall wird gelöscht
}
function menueinbl(mid){
	// Alle Submenüs werden ausgeblendet
	menupunkte[aktivmenu].getElementsByTagName("div")[0].style.visibility = "hidden";
	menupunkte[aktivmenu].getElementsByTagName("a")[0].className = menupunkte[aktivmenu].getElementsByTagName("a")[0].className.split("aktiv").join("");
	menupunkte[aktivmenu].style.zIndex = 1;
	aktivmenu = mid;
	menupunkte[mid].style.zIndex = 200;
	menupunkte[mid].getElementsByTagName("div")[0].style.visibility = "visible";  // Übergebenes Submenü wird eingeblendet
	if(activeitem){  // Wenn die Eigenschaft für ein aktiviertes Menüitem true ist werden die AKTIV-Classen gesetzt
		if(mid==0){
			menupunkte[mid].getElementsByTagName("a")[0].className = menupunkte[mid].getElementsByTagName("a")[0].urclass + " first firstaktiv";
		}
		else if(mid == menupunkte.length-1){
			menupunkte[mid].getElementsByTagName("a")[0].className = menupunkte[mid].getElementsByTagName("a")[0].urclass + " last lastaktiv";
		}
		else{
			menupunkte[mid].getElementsByTagName("a")[0].className += " aktiv";
		}
	}	
}
function fixIeSelectBoxBug(){  // IE Selectbox Bug wir durch eine Hinterlegung eines IFrames umgangen
	for(i=0; i<menupunkte.length; i++){
		menupunkte[i].getElementsByTagName("div")[0].innerHTML = menupunkte[i].getElementsByTagName("div")[0].innerHTML + '<iframe id="m'+ i +'-iframe" src="javascript:false;" scrolling="no" frameborder="0" style="position: absolute; top: 0px; left: 0px; display: none; filter:alpha(opacity=0);"></iframe> </A>';
		zwsubmenupunkte = menupunkte[i].getElementsByTagName("div")[0].innerHTML.split("</A>")
		for(j=0; j<submenupunkte[i].length; j++){
			zwsubmenupunkte[j] = zwsubmenupunkte[j] + ' <span> </span> </A>';
		}
		menupunkte[i].getElementsByTagName("div")[0].innerHTML = zwsubmenupunkte.join("");
		
		subma = menupunkte[i].getElementsByTagName("div")[0];
		iframe = document.getElementById('m'+ i +'-iframe');
		iframe.style.width = subma.offsetWidth;
		iframe.style.height = subma.offsetHeight;
		iframe.style.top = -parseInt(subma.currentStyle.borderTopWidth);
		iframe.style.left = -parseInt(subma.currentStyle.borderLeftWidth);
		iframe.style.zIndex = subma.style.zIndex - 1;
		iframe.style.display = "block";	
	}
}
function textwidth(text){  // Wenn es sich um einen FF nicht 1.5 handelt wird diese Funktion benötigt um die Breite der Links festzustellen
	document.getElementById("textbreite").innerHTML =  text;
	return document.getElementById("textbreite").offsetWidth;
}
var interval;  // die Intervall Variable für das Timeout wird erstellt
aktivmenu = 0;

function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}
window.onload = externalLinks;

function gallery(id,cat,imgs,lang){
	url = "/gallery.php?id="+id+"&cat="+cat+"&imgs="+imgs+"&lang="+lang;
	width = "800";
	height = "414";
	newwindow=window.open(url,name,'height='+height+',width='+width);
	if (window.focus) {newwindow.focus()}
}


/*/////////////////////////////////////////////////////////////////////////////////
                                    JS Kalender
	Beispiel:
		kalender = new Calender(document.getElementById('jscalender'), 'de');
		kalender.callBackFunction = function(tag,monat,jahr){
			document.forms[0].vdd.value = tag;
			document.forms[0].vmm.value = monat;
			document.forms[0].vyy.value = jahr;
			kalender.hide();
		}
	callBackFunction wird aufgerufen wenn auf ein Datum geklickt wird
/////////////////////////////////////////////////////////////////////////////////*/
function Calender(obref, lang){
	var self = this;
	this.obref = obref;
	this.day_names_l = new Array();
	this.month_names_l = new Array();
	this.day_names_l['de'] = new Array('Mo','Di','Mi','Do','Fr','Sa','So');
	this.month_names_l['de'] = new Array('Jänner','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember');
	this.day_names_l['en'] = new Array('Mo','Tu','We','Th','Fr','Sa','Su');
	this.month_names_l['en'] = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
	this.day_names_l['fr'] = new Array('Lu','Ma','Me','Je','Ve','Sa','Di');
	this.month_names_l['fr'] = new Array('Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre');
	this.day_names_l['it'] = new Array('Lun','Mar','Mer','Gio','Ven','Sab','Dom');
	this.month_names_l['it'] = new Array('gennaio','febbraio','marzo','aprile','maggio','giugno','luglio','agosto','settembre','ottobre','novembre','dicembre');
	this.day_names = this.day_names_l[lang];
	this.month_names = this.month_names_l[lang];
	this.days = new Array();
	this.init = function(){
		html_output = '<div class="jsc_head"><a class="jsc_back" href="javascript:void(0);">&laquo;</a><h2></h2><a class="jsc_next" href="javascript:void(0);">&raquo;</a></div>\n';
		html_output += '<div class="jsc_body">\n';
		for(i=0;i<7;i++){
			html_output += '<span>' + self.day_names[i] + '</span>\n';
		}
		zw=0;
		for(i=0;i<41;i++){
			zw++;
			if(zw==6 || zw==7){
				html_output += '<a href="javascript:void(0);" class="jsc_special"></a>\n';
			}
			else{
				html_output += '<a href="javascript:void(0);"></a>\n';
			}
			if(zw==7){
				zw=0;
			}
		}
		html_output += '<a class="jsc_close" href="javascript:void(0);">x</a>\n';
		html_output += '</div>';
		self.obref.innerHTML = html_output;
		self.obref.getElementsByTagName('a')[self.obref.getElementsByTagName('a').length-1].onclick = function(){
			self.hide();
		}
		self.obref.getElementsByTagName('a')[0].onclick = function(){
			if(self.akt_month>1){
				self.setDate(self.akt_month-1, self.akt_year);
			}
			else{
				self.setDate(12, self.akt_year-1);
			}
		}
		self.obref.getElementsByTagName('a')[1].onclick = function(){
			if(self.akt_month<12){
				self.setDate(self.akt_month+1, self.akt_year);
			}
			else{
				self.setDate(1, self.akt_year+1);
			}
		}
		for(i=2;i<43;i++){
			self.obref.getElementsByTagName('a')[i].onclick = function(){
				self.itemOnClick(this);
			}
		}
		zw = new Date();
	}
	this.show = function(){
		self.obref.style.display = 'block';
	}
	this.hide = function(){
		self.obref.style.display = 'none';	
	}
	this.setDate = function(month, year){
		self.akt_month = month;
		self.akt_year = year;
		blankdays = new Date(year,month-1,1).getDay();
		blankdays += -1;
		if(blankdays<0){
			blankdays=6;
		}
		for(i=27;month-1==new Date(year,month-1,i).getMonth();i++){
			maxdays = i;
		}
		for(i=0;i<blankdays+1;i++){
			self.days[i] = '';
		}
		for(i=i-1;i<maxdays+blankdays;i++){
			self.days[i] = i-blankdays+1;
		}
		for(;i<41;i++){
			self.days[i] = '';
		}
		self.aktualHTML();
	}
	this.aktualHTML = function(){
		self.obref.getElementsByTagName('h2')[0].innerHTML = self.month_names[self.akt_month-1] + ' ' + self.akt_year;
		for(i=0;i<self.days.length;i++){
			self.obref.getElementsByTagName('a')[i+2].innerHTML = self.days[i];
			self.obref.getElementsByTagName('a')[i+2].className = self.obref.getElementsByTagName('a')[i+2].className.replace(/jsc_blank/gi, '');
			if(self.days[i]==""){
				self.obref.getElementsByTagName('a')[i+2].className += " jsc_blank";
			}
		}
	}
	this.itemOnClick = function(obj){
		if(obj.innerHTML!=''){
			self.callBackFunction(obj.innerHTML*1,self.akt_month,self.akt_year);
		}
	}
	this.hide();
	this.init();
	self.setDate(zw.getMonth()+1,zw.getFullYear());
}