/*/////////////////////////////////////////////////////////////////////////////////
                    loadComplete (wird vor </body> aufgerufen)
	Beinhaltet die Anweisungen die beim onLoad ausgeführt werden sollen.
/////////////////////////////////////////////////////////////////////////////////*/
function loadComplete(){
	parseExternalLinks();
	correctPNG();
	/* Hier die Anweisungen einfügen */
}

/*/////////////////////////////////////////////////////////////////////////////////
                                       popup
	öffnet ein neuse Fenster,
	obj = Link der das Fenster öffnet
	w = Breite des Fensters
	h = Höhe des Fensters
/////////////////////////////////////////////////////////////////////////////////*/
function popup(obj,w,h) {
	var url = (obj.getAttribute) ? obj.getAttribute('href') : obj.href;
	if (!url) return true;
	if(w && h){
		var args = 'width='+w+',height='+h+',resizable=yes';
	}
	else{
		var args = 'resizable=yes,hotkeys=yes,location=yes,menubar=yes,scrollbars=yes,status=yes,toolbar=yes';
	}
	pop = window.open(url,'',args);
	return (pop) ? false : true;
}	
	
/*/////////////////////////////////////////////////////////////////////////////////
                                 parseExternalLinks
	öffnet Links mit target="_blank" oder rel="external" in einem neuen Fenster
/////////////////////////////////////////////////////////////////////////////////*/
function parseExternalLinks(){
	for(i=0; i<document.getElementsByTagName("a").length; i++){
		zwobj = document.getElementsByTagName("a")[i];
		if((zwobj.getAttribute) ? zwobj.getAttribute('rel') : zwobj.rel == "external"){
			zwobj.onclick = function(){
				return popup(this);	
			}
		}
		else if((zwobj.getAttribute) ? zwobj.getAttribute('target') : zwobj.target == "_blank"){
			zwobj.onclick = function(){
				return popup(this);
			}
			zwobj.target="";
		}
	}
}

/*/////////////////////////////////////////////////////////////////////////////////
                                      Ajax
	getNewHttpObject() giebt ein neues Ajax-Objekt zurück
	getsrc(url,elementContainer) füllte den elementContainer mit dem Quellcode von 
	der angegebenen url
/////////////////////////////////////////////////////////////////////////////////*/
function getNewHttpObject() {
    var objType = false;
    try {
        objType = new ActiveXObject('Msxml2.XMLHTTP');
    } catch(e) {
        try {
            objType = new ActiveXObject('Microsoft.XMLHTTP');
        } catch(e) {
            objType = new XMLHttpRequest();
        }
    }
    return objType;
}
function getsrc(url,elementContainer){
	document.getElementById(elementContainer).innerHTML = '<blink>Loading...<\/blink>';
	var theHttpRequest = getNewHttpObject();
	theHttpRequest.onreadystatechange = function() {processAXAH(elementContainer);};
	theHttpRequest.open("GET", url);
	theHttpRequest.send(false);
	function processAXAH(elementContainer){
	   if (theHttpRequest.readyState == 4) {
		   if (theHttpRequest.status == 200) {
			   document.getElementById(elementContainer).innerHTML = theHttpRequest.responseText;
		   } else {
			   document.getElementById(elementContainer).innerHTML="<p><span class='redtxt'>Error!<\/span> HTTP request return the following status message:&nbsp;" + theHttpRequest.statusText +"<\/p>";
		   }
	   }
	}			
}

/*/////////////////////////////////////////////////////////////////////////////////
                                    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());
}

function correctPNG() 
   {
   var arVersion = navigator.appVersion.split("MSIE")
			var version = parseFloat(arVersion[1])

if ((version >= 5.5) && (document.body.filters)) 
{
   for(var i=0; i<document.images.length; i++)
   {
      var img = document.images[i]
      var imgName = img.src.toUpperCase()
      if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
      {
         var imgID = (img.id) ? "id='" + img.id + "' " : ""
         var imgClass = (img.className) ? "class='" + img.className + "' " : ""
         var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
         var imgStyle = "display:inline-block;" + img.style.cssText 
         if (img.align == "left") imgStyle = "float:left;" + imgStyle
         if (img.align == "right") imgStyle = "float:right;" + imgStyle
         if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
         var strNewHTML = "<span " + imgID + imgClass + imgTitle
         + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
         + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
         + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
         img.outerHTML = strNewHTML
         i = i-1
      }
   }
}
}

//ncm smooth transition slideshow with randomizer
//ver 2.0, (c) stevi
//allgemeine einstellungen:
var rSlideShowSpeed = 5000;
var rCrossFadeDuration = 3;

// so lassen
var zuf = true;
var rPic = new Array()
var rRandom = new Array();
var rImages = new Array();
var rPreLoad = new Array();
var rNum, rT, rJ = 0;
var i,y,z;
var duplicate=false;
var cat = "";

function init(category) {
	init(category, false);
}

function init(category, zufall) {
	zuf = zufall;
	cat = category;
	switch (category) {
		case 'top':	rPic[0]='0.jpg'; rPic[1]='1.jpg'; rPic[2]='2.jpg'; rPic[3]='3.jpg'; rPic[4]='4.jpg'; rPic[5]='5.jpg'; rPic[6]='6.jpg'; rPic[7]='7.jpg';rPic[8]='8.jpg'; rPic[9]='9.jpg';rPic[10]='10.jpg';rPic[11]='11.jpg';break;		}
	rNum = rPic.length;
	randomize();
	for (i = 0; i < rImages.length; i++){
	   rPreLoad[i] = new Image()
	   rPreLoad[i].src = rImages[i]
	}
	document.write("<img src='/images/" + rImages[0] + "' width='500' height='302' name='rSlide'>");
}

function randomize(){
	z=0;
	while (z!=(rNum)){
		y=Math.floor(Math.random()*(rNum));
		for(i=0;i<rRandom.length;i++){	if (y==rRandom[i]){	duplicate=true;	}
	}
	if (duplicate==true){ duplicate=false;	continue; }
	else
		if (duplicate==false){	rRandom[z] = y;	z+=1;	}
	}
	if(zuf) { 
		for(i=0; i<rRandom.length; i++) { rImages[i] = "/images/" + cat + "/"  + rPic[rRandom[i]]; }	//hier korrekten pfad zu unterverzeichnis der slideshow eintragen
	}
	else {
		for(i=0; i<rPic.length; i++) { rImages[i] = "/images/" + cat + "/"  + rPic[i]; }	//hier	
	}
}

function runRandomSlideShow(){
   if (document.all){
      document.images.rSlide.style.filter='blendTrans(duration='+rCrossFadeDuration+')'
      document.images.rSlide.filters.blendTrans.Apply()      
   }
   document.images.rSlide.src = rPreLoad[rJ].src
   if (document.all){
      document.images.rSlide.filters.blendTrans.Play()
   }
   rJ = rJ + 1
   if (rJ > (rImages.length-1)) rJ=0
   rT = setTimeout('runRandomSlideShow()', rSlideShowSpeed)
}
