 //JavaScript Document

window.onload = init;

function init(){
		/*need to be mindful of daylight savings time otherwise aust is 10 offset */
		updateClock(10,"sydney");
		updateClock(2,"sweden");
		setInterval("updateClock(10,'sydney')",1000);
		setInterval("updateClock(2,'sweden')",1000);

}



function updateClock(offset,elementId) {	
	var clientTime = new Date();
	var currentTime = new Date();
	/*test for AEST daylight saving time between 4th oct to 4th aprl, checks leap years */
	if(offset == 10){
		/*tests if leap year */
		if(currentTime.getYear() % 4 == 0 ){
			if(currentTime.getDOY() >= 278 || currentTime.getDOY() <= 95 )
				{var timeOffset = 11 * (60 * 60 * 1000);} 
			else {var timeOffset = offset * (60 * 60 * 1000);} 
		} 		
		else {			
				if(currentTime.getDOY() >= 277 || currentTime.getDOY() <= 93 )
				{var timeOffset = 11 * (60 * 60 * 1000);}		
	 			else {var timeOffset = offset * (60 * 60 * 1000);} 		
			}
	} 	
	else if (offset != 10){		
		var timeOffset = offset * (60 * 60 * 1000);
	}
	
	currentTime.setTime(clientTime.getTime() + timeOffset);
	var currentHours = currentTime.getUTCHours();
	var currentMinutes = currentTime.getUTCMinutes();
	var currentSeconds = currentTime.getUTCSeconds();
	var currentMonth = currentTime.getUTCMonth();
	var currentDay = currentTime.getUTCDay();
	/*appends a 0 in front of numbers between the range of 0-9 */
	currentMinutes = (currentMinutes < 10 ? "0" : "") + currentMinutes;
	currentSeconds = (currentSeconds < 10 ? "0" : "") + currentSeconds;
	var clockNode = document.getElementById(elementId);
	var textNode = currentHours + ":" + currentMinutes + ":" + currentSeconds;
	clockNode.innerHTML=textNode;	
}


Date.prototype.getDOY = function() {
var onejan = new Date(this.getFullYear(),0,1);
return Math.ceil((this - onejan) / 86400000);
} 


