﻿/**
 * Funkce pro odpocet casu v realnem case
 * 
 * @author Tomas Porwolik
 * 
 * @param element_id
 *            (string) - id elementu pro zobrazeni odpoctu
 * @param rok
 *            (int) - YYYY
 * @param mesic
 *            (int) - M (1-12)
 * @param den
 *            (int) - D (1-31)
 * @param hodina
 *            (int) - H (0-59)
 * @param minuta
 *            (int) - M (0-59)
 * @param sekunda
 *            (int) - S (0-59)
 * 
 * @return void
 */
function countdown(element_id, rok, mesic, den, hodina, minuta, sekunda) {
	var datum_cilove = new Date();
	var datum_nyni = new Date();
	datum_cilove.setFullYear(rok, mesic - 1, den);
	datum_cilove.setHours(hodina, minuta, sekunda);
	var rozdil = datum_cilove.getTime() - datum_nyni.getTime();

	var element = document.getElementById(element_id);

	if (rozdil > 0) {
		var dny = Math.floor(rozdil / (60 * 60 * 24 * 1000));
		rozdil %= (60 * 60 * 24 * 1000);

		var hodiny = Math.floor(rozdil / (60 * 60 * 1000));
		rozdil %= (60 * 60 * 1000);

		var minuty = Math.floor(rozdil / (60 * 1000));
		rozdil %= (60 * 1000);

		var sekundy = Math.floor(rozdil / 1000);

		var dny_text;
		if (dny == 0 || dny > 4) {
			dny_text = "dní";
		} else if (dny == 1) {
			dny_text = "den"
		} else {
			dny_text = "dny"
		}

		var dny_celkem, hod_celkem, min_celkem, sek_celkem;

		if (dny != 0) {
			dny_celkem = dny + " " + dny_text + " ";
			hod_celkem = hodiny + " hod ";
			min_celkem = minuty + " min ";
		} else {
			dny_celkem = "";
			if (hodiny != 0) {
				hod_celkem = hodiny + " hod ";
				min_celkem = minuty + " min ";
			} else {
				hod_celkem = "";
				if (minuty != 0) {
					min_celkem = minuty + " min ";
				} else {
					min_celkem = "";
				}
			}
		}

		sek_celkem = sekundy + " sek";

		element.innerHTML = dny_celkem + hod_celkem + min_celkem + sek_celkem;
	} else {
		element.innerHTML = "A je to tady!";
	}

	window.setTimeout(
			"countdown('" + element_id + "', " + rok + ", " + mesic + ", "
					+ den + ", " + hodina + ", " + minuta + ", " + sekunda
					+ ")", 500);
}

