var Clock = {
	
	options: {
		delayMin: 1,   // в секундах
		delayMax: 1   // та же фигня
	},
	
	delay: 0,
	rng: 0,
	
	SetTime : function() {
		var daysOfWeek = ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"];
		var months = ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"];
		var currentDate = new Date();
		var mins = currentDate.getMinutes();
		if (mins<10) 
			mins = '0' + mins;
		with (Utils) {
			SetText('time', currentDate.getHours() + '<span id="blink">:</span>' + mins);
			SetText('day', currentDate.getDate() + ' ' + months[currentDate.getMonth()]);
			SetText('dayOfWeek', '<b>' + daysOfWeek[currentDate.getDay()] + '</b>');
		}
		if(currentDate.getSeconds()%2==0)
				document.getElementById("blink").style.visibility='hidden';
				else
				document.getElementById("blink").style.visibility='visible';
	},

	Start: function() {
		Clock.SetTime();
		this.rng = this.options.delayMax - this.options.delayMin;
		this.delay = (this.options.delayMin + this.rng * Math.random()) * 1000; 
		
		setInterval(
			function() {
				Clock.SetTime();
				
				
			}, 
			this.delay
		);	
	}
};


window.onload = function() { 
	// часики пошли
	Clock.Start();
	
};

var Utils = {
	ReturnObjById : function(id) {
		return document.getElementById ? document.getElementById(id) : document.all ? document.all[id] : document.layers[id];
	},
	SetText : function(id, txt) {
		var container = this.ReturnObjById(id);
		container.innerHTML = txt;
	},
	XmlHttp : function() {
		try {xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}
		catch(e) {
			try {xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}
			catch(E) {xmlHttp=false;}
		}
		if (!xmlHttp && typeof XMLHttpRequest!='undefined') {
			xmlHttp=new XMLHttpRequest();
		}
		return xmlHttp;
	}
};

