﻿function NYclock() 
{ 
 // Функция "До Нового года осталось"
	now= new Date(); 

	NYear = now.getYear() + 1; 
	if(NYear<2000) {NYear = NYear + 1900;}

	ex = new Date(NYear,0,1,0,0,0); 
	x = (ex.getTime() - now.getTime())/1000; 
	
	// Количество дней до Нового года
	HMDays  = Math.floor(x/60/60/24);
	HMDaysX = HMDays - 10*Math.floor(HMDays/10);
	if(HMDaysX==1 && HMDaysX!=11){HMDaysL = ' день ';}
	else
	{
		if((HMDaysX>1 && HMDaysX<5)&&(HMDays<12 || HMDays>14)){HMDaysL = ' дня ';}
		else HMDaysL = ' дней ';
	}

	// Количество часов до Нового года
	HMHours   = Math.floor((x/60/60) - 24*HMDays);
	HMHoursX = HMHours - 10*Math.floor(HMHours/10);
	if(HMHoursX==1 && HMHours!=11){HMHoursL = ' час ';}
	else
	{
		if((HMHoursX>1 && HMHoursX<5)&&(HMHours<12 || HMHours>14)){HMHoursL = ' часа ';}
		else HMHoursL = ' часов ';
	}
	
	// Количество минут до Нового года
	HMMinutes = Math.floor((x/60/60 - Math.floor(x/60/60))*60);
	HMMinutesX = HMMinutes - 10*Math.floor(HMMinutes/10);
	if(HMMinutesX==1 && HMMinutes!=11){HMMinutesL = ' минута ';}
	else
	{
		if((HMMinutesX>1 && HMMinutesX<5)&&(HMMinutes<12 || HMMinutes>14)){HMMinutesL = ' минуты ';}
		else HMMinutesL = ' минут ';
	}
 
	// Количество секунд до Нового года 
	HMSeconds = Math.floor((((x/60/60 - Math.floor(x/60/60))*60) - HMMinutes)*60); 
	HMSecondsX = HMSeconds - 10*Math.floor(HMSeconds/10);
	if(HMSecondsX==1 && HMSeconds!=11){HMSecondsL = ' секунда ';}
	else
	{
		if((HMSecondsX>1 && HMSecondsX<5)&&(HMSeconds<12 || HMSeconds>14)){HMSecondsL = ' секунды ';}
		else HMSecondsL = ' секунд ';
	}

	ostStr    = 'До Нового года осталось: ' + HMDays + HMDaysL + HMHours  + HMHoursL + HMMinutes + HMMinutesL + HMSeconds + HMSecondsL; 

	// Поиск элемента с Id clock1 и вывод в него надписи "До Нового года осталось ..."
	document.getElementById('clock1').innerHTML     = ostStr; 
	// Время обновления времени задаем 1000 миллисекунд, то бишь 1 секунда
	Timer= setTimeout("NYclock()",1000); 
}