//Letzter eingegebener Wert
var last_value = "";

/**
* Schaltet den Timepicker sichtbar
*/
function open_timepicker() {
	//Wenn schnellstmöglich, dann beim Öffnen Checkbox checken
	if(last_value == "sofort") {				
		if($("asFastAsPossible_check")) { $("asFastAsPossible_check").checked = true; }			
	}
	if($("input_timepicker").innerHTML != "") {
		last_value = $("input_timepicker").innerHTML;
	}

	$("minutes_list").innerHTML = "";	
	$("accept").style.visibility = "hidden";			
	
	$("input_timepicker").innerHTML = "";	
	$("timepicker").style.display = "block";
	
	checkForm();	
}

/**
* Befüllt das Input bei Bestätigen mit dem eingestellten Zeitwert
*/
function accept_timepicker() {
	$("input_timepicker").innerHTML = $("date").innerHTML + ", " + $("input_timepicker").innerHTML;
	$("timepicker").style.display = "none";
	last_value = $("input_timepicker").innerHTML;
	
	$("input_timepicker").style.border = "1px solid #c0c0c0";
	$("lieferzeit_error").innerHTML = "";
	
	//setSessionValue("delivery_time", $("input_timepicker").innerHTML, "delivery_date", $("date").innerHTML, "orderform_lieferzeit", $("input_timepicker").innerHTML);		
	setSessionValue("orderform_lieferzeit", $("input_timepicker").innerHTML, "validation_time", field);
	$("orderform_lieferzeit").value = $("input_timepicker").innerHTML;
	
	checkForm();
}

/**
* Setzt bei Abbruch den letzten eingestellten Wert in das Input
*/
function abort_timepicker() {
	//Bei Abbruch entchecken		
	if($("asFastAsPossible_check")) { $("asFastAsPossible_check").checked = false; }
	//Letzter Eintrag des Inputs	
	new_value = last_value;
	$("timepicker").style.display = "none";
	$("input_timepicker").innerHTML = new_value;
	
	checkForm();	
}

/**
* Checkbox setzen und Input mit dem Wert "schnellstmöglich" befüllen
*/
function check_box() {
	$("input_timepicker").innerHTML	= "sofort";
	$("accept").style.visibility = "visible";
	
	field = $("input_timepicker").innerHTML;
	setSessionValue("orderform_lieferzeit", $("input_timepicker").innerHTML, "validation_time", field);
}

/**
* Stunde setzen und Ajax starten, um die entsprechend möglichen Minuten zu laden
* @param hour Stunde, die übergeben wird
*/
function setHour(hour) {
	//Bei Auswahl vom Timepicker Checkbox entchecken
	if($("asFastAsPossible_check")) { $("asFastAsPossible_check").checked = false; }
	//Accept unsichtbar
	$("accept").style.visibility = "hidden";				
	//Stunde setzen
	value = $("input_timepicker").innerHTML;	
	$("input_timepicker").innerHTML = hour + ":";
	//Ajax ausführen und Minutenauswahl holen
	new Ajax.Updater("minutes_list", domain + "ajax_timepicker.php?sid="+sid,
					{ method : "post",
					  postBody : "hour=" + hour + "&timestamp=" + $("date").innerHTML 
					});															
}

/**
* Stunde aus dem Input holen und Minuten ranhängen
* @param minutes Minuten, die übergeben werden
*/
function setMinutes(minutes) {
	//Wert des Inputs holen
	field = $("input_timepicker").innerHTML;
	//am Doppelpunkt auftrennen
	hours = field.split(":");
	//Wert vor dem Doppelpunkt behalten
	hours = hours[0];	
	//Stunden und Minuten verbinden
	field = hours + ":" + minutes;
	//Input neu befüllen
	$("input_timepicker").innerHTML = field;
	//Accept sichrbar machen
	$("accept").style.visibility = "visible";												
}

/**
* Wechselt über Ajax das Datum
* @param id ID des Schalters (vorheriges oder nächstes Datum)
*/
function change_date(id) {	
	//Wenn vorheriger Eintrag, dann date auf vorheriges Datum setzen
	if(id == "prev_date") {
		var date = "prev";
	}
	//sonst auf nächstes Datum setzen	
	else {
		var date = "next";			
	}	
	
	//Input leeren, damit bei Datumwechsel kein ungültiger Zeitpunkt übernommen wird
	$("input_timepicker").innerHTML = "";
	//Ajax ausführen und Timepicker mit neuem Datum und neuen Öffnungszeiten laden
	new Ajax.Updater("timepicker", domain + "ajax_timepicker.php?sid="+sid,
					{ method : "post",
					  postBody : "refresh=true&date=" + date + "&timestamp=" + $("date").innerHTML 
					});
					
	$("accept").style.visibility = "hidden";			
																										
}

