//clientzeit beim seitenaufruf
var start=new Date();
//serverzeit beim seitenaufruf
var server = new Date();

//serverzeit mitzaehlen
function serverdate(){
	var aktuell			= new Date();
	vergangen			= aktuell.getTime() - start.getTime();
	aktuellservertime	= server.getTime() + vergangen;
	setTimeout("serverdate()",1000);
}

serverdate()

//Browsercheck Start
d	= document;
n	= navigator.userAgent.toLowerCase();
os	= navigator.platform;
OP	= (n.indexOf("Opera") != -1) ? 1 : 0;
IE	= (d.all && !OP) ? 1 : 0;
N4	= (d.layers && !d.getElementById) ? 1 : 0;
ng	= (!d.all && d.getElementById) ? 1 : 0;
N6	= (ng && (n.indexOf('netscape6')!=-1 || n.indexOf('netscape/7')!=-1)) ? 1 : 0;
Mac = (os.indexOf("Mac") != -1) ? 1 : 0;
//Browsercheck End

//Global Variables to hold the respective values Start
var gDigital	= new Date(aktuellservertime);
var gOfst_h		= gDigital.getTimezoneOffset()/60;
var gMonth		= gDigital.getMonth();
var gDate		= gDigital.getDate();
var gDay		= gDigital.getDay();
var gYear		= gDigital.getFullYear();
//Global Variables to hold the respective values End

// Frankfurt
function clockFrankfurt(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;
	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;


	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours 	= 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";

	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>Frankfurt: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockFrankfurt.document.write(ausgabe);
		document.layers.ClockFrankfurt.document.close();
		}
	else if (IE)
		{
		ClockFrankfurt.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockFrankfurt").innerHTML=ausgabe;
		}
	setTimeout("clockFrankfurt(" + zone + ")", 1000);
}
//////////////////////////////////////////////////////////////////////
// London
function clockLondon(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;
	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;


	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours 	= 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";
	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>London: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockLondon.document.write(ausgabe);
		document.layers.ClockLondon.document.close();
		}
	else if (IE)
		{
		ClockLondon.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockLondon").innerHTML=ausgabe;
		}
	setTimeout("clockLondon(" + zone + ")", 1000);
}
//////////////////////////////////////////////////////////////////////
// New York
function clockNY(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;

	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;


	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours 	= 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";
	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>New York: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockNY.document.write(ausgabe);
		document.layers.ClockNY.document.close();
		}
	else if (IE)
		{
		ClockNY.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockNY").innerHTML=ausgabe;
		}
	setTimeout("clockNY(" + zone + ")", 1000);
}
//////////////////////////////////////////////////////////////////////
// Singapore
function clockSingapore(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;
	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;

	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours 	= 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";
	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>Singapore: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockSingapore.document.write(ausgabe);
		document.layers.ClockSingapore.document.close();
		}
	else if (IE)
		{
		ClockSingapore.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockSingapore").innerHTML=ausgabe;
		}
	setTimeout("clockSingapore(" + zone + ")", 1000);
}
//////////////////////////////////////////////////////////////////////
// Sydney
function clockSydney(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;
	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;


	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours = 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";
	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>Sydney: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockSydney.document.write(ausgabe);
		document.layers.ClockSydney.document.close();
		}
	else if (IE)
		{
		ClockSydney.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockSydney").innerHTML=ausgabe;
		}
	setTimeout("clockSydney(" + zone + ")", 1000);
}
//////////////////////////////////////////////////////////////////////
// Tokyo
function clockTokyo(zone){

	if (!document.layers && !document.all && !N6) return;

	var digital = new Date(aktuellservertime);
	var ofst_h	= digital.getTimezoneOffset()/60;
	var ofst_m	= digital.getTimezoneOffset()%60;
	var hours 	= digital.getHours() + parseInt(ofst_h) + parseInt(zone);
	var minutes = digital.getMinutes() + parseInt(ofst_m);
	var seconds = digital.getSeconds();
	var amOrPm 	= "AM";

	if (minutes<0)
		{
		minutes = 60 + minutes;
		hours	= hours -1;
		}
	if (minutes>=60)
		{
		minutes = minutes-60;
		hour	= hours+1;
		}
	if (minutes <= 9) 	minutes = "0" + minutes;


	if (hours > 24) 	hours 	= hours-24;
	if (hours < 0) 		hours 	= hours+24;
	if (hours == 0) 	hours = 12;

	if (hours >= 12 && hours != 24) amOrPm  = "PM";
	else							amOrPm	= "AM";
	if (hours > 12)		hours	= hours-12;

	if (seconds <= 9) 	seconds = "0" + seconds;

	if (hours <= 9) 	hours = "0" + hours;

	dispTime = hours + ":" + minutes + ":" + seconds + " " + amOrPm ;
	ausgabe="<font face=verdana,arial size=1  style='font-size:9px'><b>Tokyo: </b>" + dispTime + "</font>";
	if (document.layers)
		{
		document.layers.ClockTokyo.document.write(ausgabe);
		document.layers.ClockTokyo.document.close();
		}
	else if (IE)
		{
		ClockTokyo.innerHTML = ausgabe;
		}
	else if(N6){
			document.getElementById("ClockTokyo").innerHTML=ausgabe;
		}
	setTimeout("clockTokyo(" + zone + ")", 1000);
}
	
//////////////////////////////////////////////////////////////////////
// N47 css bug
function fn47(){

	if (!document.layers && !document.all && !N6) return;

	ausgabe="<font face=verdana,arial size=1 color=white style='font-size:9px'></font>";
	if (document.layers)
		{
		document.layers.n47.document.write(ausgabe);
		document.layers.n47.document.close();
		}
}

// Set the Daylight saving value
function ClockNYDS(){

	var intDay	= 0;
	var zone	= -5;	//Winter -5 and for Summer -4
	var hours 	= gDigital.getHours() + gOfst_h + zone + gDigital.getMinutes()/60;

	if(gMonth == 3){
		intDay = GetSunday('F', gDay, gDate, gMonth, gYear);

		if(gDate == intDay && hours >= 1.5)	zone = -4;
		else{
			if(gDate > intDay)	zone = -4;
		}
	}
	else{
		if(gMonth > 3 && gMonth < 9){
			zone = -4;
		}
		else{
			if(gMonth == 9){
				intDay = GetSunday('L', gDay, gDate, gMonth, gYear);
			
				if(gDate == intDay && hours < 1)	zone = -4;
				else{
					if(gDate < intDay)	zone = -4;
				}			
			}
		}		
	}		

	clockNY(zone);
}

function ClockSydneyDS(){

	var intDay	= 0;
	var zone	= 10;	//Summer 11 and for Winter 10
	var hours 	= gDigital.getHours() + parseInt(gOfst_h) + parseInt(zone);

	if(gMonth == 9){
	
		intDay = GetSunday('L', gDay, gDate, gMonth, gYear);
	
		if(gDate == intDay && hours >= 2)	zone = 11;
		else{
			if(gDate > intDay)	zone = 11;
		}
	}
	else{
		if(gMonth > 9 || gMonth < 2){			
			zone = 11;
		}
		else{
			if(gMonth == 2){
					intDay = GetSunday('L', gDay, gDate, gMonth, gYear);
				
					if(gDate == intDay && hours < 2)	zone = 11;
					else{
						if(gDate < intDay)	zone = 11;
					}
			}
		}		
	}		
	
	clockSydney(zone);
}

function ClockFrankfurtDS(){

	var intDay	= 0;
	var zone	= 1;	//Summer 2 and for Winter 1
	var hours 	= gDigital.getHours() + gOfst_h + zone;

	if(gMonth == 2){
		intDay = GetSunday('L', gDay, gDate, gMonth, gYear);
	
		if(gDate == intDay && hours >= 2)	zone = 2;
		else{
			if(gDate > intDay)	zone = 2;
		}
	}
	else{
		if(gMonth > 2 && gMonth < 9){			
			zone = 2;
		}
		else{
			if(gMonth == 9){
				intDay = GetSunday('L', gDay, gDate, gMonth, gYear);

				if(gDate == intDay && hours < 2)	zone = 2;
				else{
					if(gDate < intDay)	zone = 2;
				}
			}		
		}		
	}
	
	clockFrankfurt(zone);
}

function ClockLondonDS(){

	var intDay	= 0;
	var zone	= 0;	//Summer 1 and for Winter 0
	var hours 	= gDigital.getHours() + gOfst_h + zone + gDigital.getMinutes()/60;

	if(gMonth == 2){
		intDay = GetSunday('L', gDay, gDate, gMonth, gYear);
	
		if(gDate == intDay && hours >= 2)	zone = 1;
		else{
			if(gDate > intDay)	zone = 1;
		}
	}
	else{
		if(gMonth > 2 && gMonth < 9){			
			zone = 1;
		}
		else{
			if(gMonth == 9){
				intDay = GetSunday('L', gDay, gDate, gMonth, gYear);

				if(gDate == intDay && hours < 2)	zone = 1;
				else{
					if(gDate < intDay)	zone = 1;
				}
			}		
		}		
	}

	clockLondon(zone);
}

function ClockSingaporeDS(){

	var zone = 8;
	clockSingapore(zone);
}

function ClockTokyoDS(){

	var zone = 9;
	clockTokyo(zone);
}

function GetSunday(FirstLast, lDay, lDate, lMonth, lYear){

var lLastDay = 31;	// Default last day for Jan/Mar/May/Jul/Aug/Oct/Dec
var lSunday;

	// Set the last day for February
	if(lMonth == 1){
		if(lYear/4 == 0)	lLastDay = 29;
		else lLastDay = 28;
	}

	//Set the last day for Apr/Jun/Sep/Nov
	if(lMonth == 3 || lMonth == 5 || lMonth == 8 || lMonth == 10)	lLastDay = 30;

	lSunday = lDate + 7 - lDay;
	
	// Calculate the First Sunday
	if(FirstLast == 'F'){
		lSunday = lSunday - parseInt(lSunday/7) * 7
	}
	else{	// Calculate the Last Sunday
		while(lSunday < lLastDay){
			lSunday = lSunday + 7;
		}
		if(lSunday > lLastDay) lSunday = lSunday - 7;
	}

	return lSunday;
}