var g_home_rsrv_email ="";

function fnReserve_SetDefaults()
{
	var i=0;
	fnHide("div_reserve_success");
	fnHide("div_reserve_fail");
	fnHide_PleaseWait();
	fnReserve_HideErr();
	fnSetElemValue("input_name","");
	fnSetElemValue("input_phone","");
	fnSetSelectedIndex("select_num_in_party",1);
	fnSetElemValue("input_email","");
	fnSetChecked("checkbox_join_tea_club");
	//fnSetUnchecked("checkbox_silver_tea_service");
	fnOnCheckSilverTeaService();
	fnSetElemValue("textarea_notes","");
	fnShow("div_reserve");		
	fnEnable("button_req_reservation");

	fnConfigureMonthSelect();
}

function fnReserve_ShowErr(str_err)
{
	fnSetInnerhtml("div_order_err", str_err);
	fnShow("div_order_err");
}
function fnReserve_HideErr()
{
	fnHide("div_order_err");
	fnSetInnerhtml("div_order_err", "");
}

function fnValidateReservation()
{
	var b_ok=1;
	var str_err="";
	var str_temp = "";
		
	fnSetInnertext("span_home_rsrv_validation", "");
	fnHide("span_home_rsrv_validation");
	
	if (fnGetSelectedValue("select_time")=="-1")
	{
		b_ok=0;
		str_err +="Please select a seating time.";
		fnChangeClass("span_reserve_label_time","style_form_col1_red");
	}
	else
		fnChangeClass("span_reserve_label_time","style_form_col1");

	if ((!fnGetElemValue("input_name")) || ("" == fnGetElemValue("input_name")))
	{
		b_ok=0;
		str_err ="Please enter required fields.";
		fnChangeClass("span_reserve_label_name","style_form_col1_red");
	}				
	else
		fnChangeClass("span_reserve_label_name","style_form_col1");

	if ((!fnGetElemValue("input_phone")) || ("" == fnGetElemValue("input_phone")))
	{
		b_ok=0;
		str_err ="Please enter required fields.";
		fnChangeClass("span_reserve_label_phone","style_form_col1_red");
	}				
	else
		fnChangeClass("span_reserve_label_phone","style_form_col1");
		
	if ((!fnGetElemValue("input_email")) || ("" == fnGetElemValue("input_email")))
	{
		b_ok=0;
		str_err ="Please enter required fields.";
		fnChangeClass("span_reserve_label_email","style_form_col1_red");
	}				
	else
	{
		if (fnIsValidEmail(fnGetElemValue("input_email")))
		{
			fnChangeClass("span_reserve_label_email","style_form_col1");
		}
		else
		{
			b_ok=0;
			if (!str_err || str_err.length <=0)
				str_err ="E-mail address must be a valid format (e.g. john@yahoo.com). ";
			fnChangeClass("span_reserve_label_email","style_form_col1_red");
		}
	}

	// Validate Date 
	var str_selected_date = fnSelects2SQLDate();
	var jsdate_selected = fnSQLDate2JSDate(str_selected_date);
	var selected_hour = Math.round(fnSafeParseInt(fnGetElemValue("select_time"),1000)/100);
	jsdate_selected.setHours(selected_hour);
	var jsdate_now = new Date();
	var delta_ms = jsdate_selected.getTime() - jsdate_now.getTime();
	var delta_hrs = ((delta_ms/1000)/60)/60;
	if (delta_hrs<0)
	{
		b_ok=0;
		if (!str_err || str_err.length <=0)
			str_err ="Reservations cannot be made for the past.";
		fnChangeClass("span_reservation_date","style_form_col1_red");
	}				
	else if (delta_hrs<24)
	{
		b_ok=0;
		if (!str_err || str_err.length <=0)
			str_err ="Online Reservations must be done 24 hours in advance.";
		fnChangeClass("span_reservation_date","style_form_col1_red");
	}				
	else
		fnChangeClass("span_reservation_date","style_form_col1");

	// Generate Error Feedback if appropriate
	if (!b_ok)
	{
		fnSetInnertext("span_home_rsrv_validation", str_err);
		fnShow("span_home_rsrv_validation");
	}
	
	// Return Success or Error
	return b_ok;
}
function fnBodyOnload()
{
	fnHide_PleaseWait();
	fnReserve_HideErr();
	fnHide("div_reserve_success");
	fnHide("div_reserve_fail");
	fnShow("div_reserve");	
	fnHide("div_disabling_backdrop");
	fnEnable("button_req_reservation");

	var str_param = "" +INDEX_TRACKING__PROJ_ID +"=3046032983269033849";
	str_param += fnParamToURL(INDEX_TRACKING__ACTIVITY_CODE) + "15";
	fnAJAXCall_Post("addTrackingAdminEntry.do", str_param);			
}


// Send the order to the server
function fnReqReservation()
{
	var j=0;
	var i=0;
	
	// Validate
	if (!fnValidateReservation())
		return;
	
	g_home_rsrv_email = fnGetElemValue("input_email");

	//fnDisable("button_req_reservation");
	
	// Show the please wait dialog
	//fnShow_PleaseWait();
	
	// Assemble the post param
	var str_param = AJAX_PARAM_NAME +"=" +encodeURIComponent(fnGetElemValue("input_name"));
	str_param += fnParamToURL(AJAX_PARAM_EMAIL) +encodeURIComponent(fnGetElemValue("input_email"));
	if (fnGetChecked("checkbox_join_tea_club"))
		str_param += fnParamToURL(AJAX_PARAM_JOIN_TEA_CLUB) +"1";
	//if (fnGetChecked("checkbox_silver_tea_service"))
	//	str_param += fnParamToURL(AJAX_PARAM_SILVER_TEA_SERVICE) +"1";
	str_param += fnParamToURL(AJAX_PARAM_PHONE) +encodeURIComponent(fnFormatPhone(fnGetElemValue("input_phone")));
	str_param += fnParamToURL(AJAX_PARAM_RESERVATION_DATE) +encodeURIComponent(fnSelects2SQLDate());
	str_param += fnParamToURL(AJAX_PARAM_RESERVATION_TIME) +encodeURIComponent(fnGetElemValue("select_time"));
	str_param += fnParamToURL(AJAX_PARAM_NUM_IN_PARTY) +encodeURIComponent(fnGetElemValue("select_num_in_party"));
	str_param += fnParamToURL(AJAX_PARAM_NOTES) +encodeURIComponent(fnGetElemValue("textarea_notes"));

	fnAJAXCall_Post("http://www.Quasitime.com/tdt/lavenderMakeReservation.do", str_param);
}

function fnOnCheckSilverTeaService()
{
}

function fnConfirmGoBack()
{
	fnReserve_HideErr();
	fnHide("div_confirm_order");
	fnShow("div_order");			
	fnHide("div_order_success");
	fnHide("div_order_fail");
	fnEnable("button_confirm_place_order");
}


