$(document).ready(function(){

	$(".sidebar").hide();
	$(".strsummaryhtml").show();

	$(".fancysidebar").show();
	$("#searchcontainer").show();
	$(".ShowThisOne").fadeIn('slow');
	$(".fixedcoursedata").hide();
	$(".fixedcoursedata_0").show();

	$("body").delegate("click", "#banktransferselected", function() {
		var varthischecked = $(this).attr("checked");
		if(varthischecked){
			$(".error").each(function(){
				var strtmpfor = $(this).attr("for")
				if(strtmpfor == "CardHolderName" || strtmpfor == "CardNumber" || strtmpfor == "CV2" || strtmpfor == "CardExpYear" || strtmpfor == "CardExpMonth" || strtmpfor == "CardAdd1" || strtmpfor == "CardTownCity" || strtmpfor == "CardPCode"){
					$(this).hide();
				}
			});
		}else{
		}
	});

	$("body").delegate("click", "#banktransferselectedEPDQ", function() {
		var varthischecked = $(this).attr("checked");
		if(varthischecked){
			$(".error").each(function(){
				var strtmpfor = $(this).attr("for")
				if(strtmpfor == "baddr1" || strtmpfor == "baddr2" || strtmpfor == "baddr3" || strtmpfor == "bcity" || strtmpfor == "bcountyprovince" || strtmpfor == "bpostalcode" || strtmpfor == "bcountry"){
					$(this).hide();
				}
			});
			$(".notran").each(function(){
				$(this).attr("disabled","disabled");
			});
			$("#notrandiv").hide();
		}
	});

	$("body").delegate("click", "#cardselected", function() {
		var varthischecked = $(this).attr("checked");
		if(varthischecked){
			$(".notran").each(function(){
				$(this).attr("disabled","");
			});
			$("#notrandiv").show();
		}
	});

	$("body").delegate("change", "#fixedstartdate", function() {
	$(".fixedcoursedata").hide();
	var strNewID = $(this).val();

	var strNewCartTask = "a_c_" + $("#CourseInstsID_" + strNewID).val() + "_" + $("#InternalCode_" + strNewID).val() + "_" + $("#DefInstType_" + strNewID).val() + "_" + $("#CourseDuration_" + strNewID).html().replace(' week','') + "_1_" + $("#StartDate_" + strNewID).val() + "_" + $("#EndDate_" + strNewID).html()
	$("#cart_task").val(strNewCartTask);


	$(".fixedcoursedata_" + strNewID).show();
	});


	$(".ChosenCourseCode").live("change",function() {
		var strThisCourse = $(this).attr("id").split("_")[1];
		var strNewCourse = $(this).val();
		$("#summarysidebar_" + strThisCourse).hide();
		$("#summarysidebar_" + strNewCourse).show();
		$("#ChosenCourseCode_" + strNewCourse).val(strNewCourse);
	});

	var dtTmpDate = new Date()
	var strMaxYear = dtTmpDate.getFullYear() + 1;

	$("#srchcoursestartdatereq").datepicker({
		readOnly: true,
		buttonImage: $("#curdir").val() + '_images/icon-calendar.gif',
		buttonImageOnly: true,
		showOn: 'both',
		dateFormat: 'dd-mm-yy',
		closeText: 'X',
		duration: 'slow',
		minDate: new Date(),
		onSelect: function(dateText, objInstance) {
			$("#srchcourseenddatereq").datepicker("option","minDate",dateText);
		},
		maxDate:"31-12-" + strMaxYear
	});

	$("#srchcourseenddatereq").datepicker({
		readOnly: true,
		buttonImage: $("#curdir").val() + '_images/icon-calendar.gif',
		buttonImageOnly: true,
		showOn: 'both',
		dateFormat: 'dd-mm-yy',
		closeText: 'X',
		duration: 'slow',
		onSelect: function(dateText, objInstance) {
			$("#srchcoursestartdatereq").datepicker("option","maxDate",dateText);
		},
		minDate: new Date(),
		maxDate:"31-12-" + strMaxYear
	});

	$(document).pngFix();
	$(".calltoaction, .contentcolumn .coursetitle").corner("7px");
	$(".sitesearch").validate({
		errorContainer: ".errorcontainer",
		errorLabelContainer: ".errorcontainer",
		messages: {
			searchterm: "Please enter a search term"
		}
	});
	$("#contactform").validate({
		messages:	{
			contactname: "Please enter your name",
			contactemail: {
				required: "Please enter an email address",
				email: "Please enter a valid email address"
			},
			contactquestion: "What did you want to ask us?"
		}
	});
	

	$("#brochureform").validate({
		groups: {
			brochurelang: "brochurelanguagegb brochurelanguagede brochurelanguageit brochurelanguagees"
		},
		rules: {
			brochurelanguagegb: {
				required: function(element) {
				return $(".brochurelangcheck:checked").length == 0;
				}
			},
			brochurelanguagede: {
				required: function(element) {
				return $(".brochurelangcheck:checked").length == 0;
				}
			},
			brochurelanguageit: {
				required: function(element) {
				return $(".brochurelangcheck:checked").length == 0;
				}
			},
			brochurelanguagees: {
				required: function(element) {
				return $(".brochurelangcheck:checked").length == 0;
				}
			}
		},
		errorPlacement: function(error, element) {
			if (element.attr("name") == "brochurelanguagegb" || element.attr("name") == "brochurelanguagede" || element.attr("name") == "brochurelanguageit" || element.attr("name") == "brochurelanguagees") {
				error.insertAfter("label[for=brochurelanguagees]");
			} else {
				error.insertAfter(element);
			}
		},
		messages:	{
			brochurefirstname: "Please enter your first name",
			brochurelastname: "Please enter your family name",
			brochureaddress: "Please enter your address",
			brochurecountry: "Please enter your country",
			brochurenationality: "Please enter your nationality",
			brochureemail: {
				required: "Please enter an email address",
				email: "Please enter a valid email address"
			},
			brochurefind: "Where did you hear about us?",
			brochurelanguagegb: "Please choose at least 1 brochure",
			brochurelanguagede: "Please choose at least 1 brochure",
			brochurelanguageit: "Please choose at least 1 brochure",
			brochurelanguagees: "Please choose at least 1 brochure"
		}
	});


$("#AddBalanceAmt").keyup(function(){
	var value=$(this).val();
	var orignalValue=value;
	value=value.replace(/[0-9]*/g, "");
	value=value.replace(/\./, "");
	if (value!=''){
		orignalValue=orignalValue.replace(/([^0-9].*)/g, "")
		$(this).val(orignalValue);
	}
});
	
	$("#CheckBalanceForm").validate({//No longer valid as Phil needs to add any amount against any (even offline) bookings
		errorPlacement: function(error, element) {
			error.insertAfter(element);
		},
		messages: {
			CheckBalanceEmail: {
				required: "Please enter an email address",
				email: "Please enter a valid email address"
			}
		},
		submitHandler: function(form) {
			var CheckBalanceOID = $("#CheckBalanceOID").val();;
			var CheckBalanceEmail = $("#CheckBalanceEmail").val();;
			$("#CheckBalanceFail").hide();
			$("#AddBalanceForm").hide();
			$.ajax({
				type:"post",
				url:"CheckBalance.php",
				success: function(data){//Response Code|Amount
					var boolShowAddBalanceForm = false;
					var strResponseCode = data.split("|")[0];
					var dblBalance = data.split("|")[1];
					var strResponseMessage = data.split("|")[2];
					if(strResponseCode == "S"){//Success...
						boolShowAddBalanceForm = true;
					}
					if(boolShowAddBalanceForm){
						$("#AddBalanceAmt").val(dblBalance);
						$("#CheckBalanceSuccess").html(strResponseMessage);
						$("#AddBalanceForm").show();
					}else{
						$("#AddBalanceAmt").val("");
						$("#CheckBalanceFail").html(strResponseMessage);
						$("#CheckBalanceFail").show();
					}
//					form.submit();
					return false;
				},
				async:false,
				data:{
					CheckBalanceOID:CheckBalanceOID,
					CheckBalanceEmail:CheckBalanceEmail
				}
			});
		}
	})

	$("#AddBalanceForm").validate({
		submitHandler: function(form) {
			$("#CheckBalanceOID").val("");
			$("#CheckBalanceEmail").val("");
			$("#CheckBalanceFail").hide();
			var AddBalanceOID = $("#AddBalanceOID").val();;
			var AddBalanceAmt = $("#AddBalanceAmt").val();;
			$("#AddBalanceOID").val("");
			$("#AddBalanceAmt").val("");
			$.ajax({
				type:"post",
				url:"AddBalance.php",//Write the balance to the session to be read by the cart.
				success: function(data){
					if(data!=""){
						$("#CheckBalanceFail").html(data);
						return false;
					}else{
//						alert("Form about to be submitted");
						form.submit();
					}
				},
				async:false,
				data:{
					AddBalanceOID:AddBalanceOID,
					AddBalanceAmt:AddBalanceAmt
				}
			});
		}
	})


	$("#BookingForm").validate({
		errorPlacement: function(error, element) {
			error.insertAfter(element);
		},
		rules: {
			ArrivalDate: {
				required: function(element) {
					return !$("#ArrivalTransfer:checked").length == 0;
				}
			},
			CardHolderName: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardNumber: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CV2: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardExpMonth: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardExpYear: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardAdd1: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardTownCity: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardPCode: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			CardCountry: {
				required: function(element) {
					return ($('input[name=CardType]:checked').val() != "Bank Transfer");
				}
			},
			DepartureDate: {
				required: function(element) {
					return !$("#DepartureTransfer:checked").length == 0;
				}
			}
		},
		messages: {
			bookingemail: {
				required: "Please enter an email address",
				email: "Please enter a valid email address"
			}
		},
		submitHandler: function(form) {
			$('#submit4u').hide();
			$('#SpinSubmitCart').show();
			arrayAttendees = new Array;
			arrayAttendees.push("test");
			$(".attendee").each(function(){
				var attendee_id = $(this).attr("id");
				var attendee_data = $(this).val();
				arrayAttendees.push("&" + attendee_id + "=" +attendee_data);
			});
			var BillingEmail = $("#BillingEmail").val();

			var ArrivalTransfer = $("#ArrivalTransfer").attr("checked");
			var DepartureTransfer = $("#DepartureTransfer").attr("checked");
			var ArrivalDate = (ArrivalTransfer ? $("#ArrivalDate").val() : "");
			var DepartureDate = (DepartureTransfer ? $("#DepartureDate").val() : "");
			var ArrivalAirport = (ArrivalTransfer ? $("#ArrivalAirport").val() : "");
			var DepartureAirport = (DepartureTransfer ? $("#DepartureAirport").val() : "");
			var dblTransferTotal = $("#dblTransferTotal").val();
			var dblGrandTotal = $("#dblGrandTotal").val();

			arrayAttendees.push("&BillingEmail=" + BillingEmail);
			arrayAttendees.push("&ArrivalTransfer=" + ArrivalTransfer);
			arrayAttendees.push("&DepartureTransfer=" + DepartureTransfer);
			arrayAttendees.push("&ArrivalDate=" + ArrivalDate);
			arrayAttendees.push("&DepartureDate=" + DepartureDate);
			arrayAttendees.push("&ArrivalAirport=" + ArrivalAirport);
			arrayAttendees.push("&DepartureAirport=" + DepartureAirport);
			arrayAttendees.push("&dblTransferTotal=" + dblTransferTotal);
			arrayAttendees.push("&dblGrandTotal=" + dblGrandTotal);

			$.ajax({
				url:"ProcessAttendees.php",
				success: function(data){
					form.submit();
					return false;
				},
				async:false,
				data:"arrayAttendees=" + arrayAttendees
			});
		}
	});



	$("#BookingFormEPDQ").validate({
		errorPlacement: function(error, element) {
			error.insertAfter(element);
		},
		rules: {
			ArrivalDate: {
				required: function(element) {
					return !$("#ArrivalTransferEPDQ:checked").length == 0;
				}
			},
			BillingFirstName: {
				maxlength: 50
			},
			BillingSurName: {
				maxlength: 50
			},
			Passport: {
				maxlength: 10
			},
			email: {
				maxlength: 64
			},
			Billingaddr1: {
				maxlength: 60
			},
			Billingaddr2: {
				maxlength: 60
			},
			Billingcity: {
				maxlength: 25
			},
			Billingcountyprovince: {
				maxlength: 25
			},
			Billingpostalcode: {
				maxlength: 9
			},
			baddr1: {
				maxlength: 60
			},
			baddr2: {
				maxlength: 60
			},
			baddr3: {
				maxlength: 60
			},
			bcity: {
				maxlength: 25
			},
			bcountyprovince: {
				maxlength: 25
			},
			bpostalcode: {
				maxlength: 9
			},
			btelephonenumber: {
				maxlength: 30
			},
			Mobile: {
				maxlength: 30
			},
			Occupation: {
				maxlength: 64
			},
//			CardHolderName: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardNumber: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CV2: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardExpMonth: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardExpYear: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardAdd1: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardTownCity: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardPCode: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
//			CardCountry: {
//				required: function(element) {
//return ($('input[name=CardType]:checked').val() != "Bank Transfer");
//
//				}
//			},
			DepartureDate: {
				required: function(element) {
					return !$("#DepartureTransfer:checked").length == 0;
				}
			}
		},
		messages: {
			bookingemail: {
				required: "Please enter an email address",
				email: "Please enter a valid email address"
			}
		},
		submitHandler: function(form) {
			$('#submit4u').hide();
			$('#SpinSubmitCart').show();
			arrayAttendees = new Array;
			arrayAttendees.push("test");
			$(".attendee").each(function(){
				var attendee_id = $(this).attr("id");
				var attendee_data = $(this).val();
				arrayAttendees.push("&" + attendee_id + "=" +attendee_data);
			});


			var BillingEmail = $("input[name=email]").val();
			var ArrivalTransfer = ($("#ArrivalTransferEPDQ").attr("checked")?"y":"n");
			var DepartureTransfer = ($("#DepartureTransferEPDQ").attr("checked")?"y":"n");
			var ArrivalDate = (ArrivalTransfer=="y" ? $("#ArrivalDate").val() : "");
			var DepartureDate = (DepartureTransfer=="y" ? $("#DepartureDate").val() : "");
			var ArrivalAirport = (ArrivalTransfer=="y" ? $("#ArrivalAirport").val() : "");
			var DepartureAirport = (DepartureTransfer=="y" ? $("#DepartureAirport").val() : "");
			var dblTransferTotal = $("#dblTransferTotal").val();
			var dblGrandTotal = $("#dblGrandTotal").val();

			var AccommName = ($("#AccommName").length>0?$("#AccommName").val():"");
			var AccommAddress = ($("#AccommAddress").length>0?$("#AccommAddress").val():"");
			var AccommAddress2 = ($("#AccommAddress2").length>0?$("#AccommAddress2").val():"");
			var AccommTown = ($("#AccommTown").length>0?$("#AccommTown").val():"");
			var AccommPostcode = ($("#AccommPostcode").length>0?$("#AccommPostcode").val():"");
			var AccommFrom = ($("#AccommFrom").length>0?$("#AccommFrom").val():"");
			var AccommTo = ($("#AccommTo").length>0?$("#AccommTo").val():"");

			arrayAttendees.push("&BillingEmail=" + BillingEmail);
			arrayAttendees.push("&ArrivalTransfer=" + ArrivalTransfer);
			arrayAttendees.push("&DepartureTransfer=" + DepartureTransfer);
			arrayAttendees.push("&ArrivalDate=" + ArrivalDate);
			arrayAttendees.push("&DepartureDate=" + DepartureDate);
			arrayAttendees.push("&ArrivalAirport=" + ArrivalAirport);
			arrayAttendees.push("&DepartureAirport=" + DepartureAirport);
			arrayAttendees.push("&dblTransferTotal=" + dblTransferTotal);
			arrayAttendees.push("&dblGrandTotal=" + dblGrandTotal);
			arrayAttendees.push("&AccommName=" + AccommName);
			arrayAttendees.push("&AccommAddress=" + AccommAddress);
			arrayAttendees.push("&AccommAddress2=" + AccommAddress2);
			arrayAttendees.push("&AccommTown=" + AccommTown);
			arrayAttendees.push("&AccommPostcode=" + AccommPostcode);
			arrayAttendees.push("&AccommFrom=" + AccommFrom);
			arrayAttendees.push("&AccommTo=" + AccommTo);

			$.ajax({
				url:"ProcessAttendeesEPDQ.php",
				success: function(data){
					$(form).attr("action","./ProcessBooking1.php");//Update Database before submitting payment
					$(form).ajaxSubmit({
						success: function(data){
							if(data.substring(0,13) == "banktransfer_"){
								var oid = data.split("_")[1];
								var strWindowLocation = window.location.toString();
								var RedirectURL =  ( strWindowLocation.indexOf("localhost") > 0 ? "http://localhost/dev.elc-brighton.co.uk/wwwroot/" : (strWindowLocation.indexOf("prowebgroup") > 0 ? "http://elc.dev.prowebgroup.co.uk/" : "http://www.elc-brighton.co.uk/" ));
								top.location.href=RedirectURL + "epdq_return.php?oid=" + oid;//redirection for bank transfer
								return false;
							}else{
								$(form).attr("action","https://secure2.epdq.co.uk/cgi-bin/CcxBarclaysEpdq.e");//Update Database before submitting payment
								$(".nopay").attr("disabled","disabled");
								form.submit();
								return false;
							}
						}
					});
				},
				async:false,
				data:"arrayAttendees=" + arrayAttendees
			});
		}
	});

	$(".coursesearch").validate({
		rules: {
			srchmastercatreq : "required"
		},
		errorPlacement: function(error, element) {
			error.insertBefore("label[for=srchmastercatreq]").delay(800).fadeOut('slow');
			$("label.error").fadeOut('slow');
		},
		messages:{
			srchmastercatreq: "Please specify a course type"
		},
		submitHandler: function(form) {
			if($("#SrchMethod").val()=="a"){
				jQuery(form).ajaxSubmit({
					url:"searchgrid.php",
					target: "#summarytable_div",
					beforeSubmit:CourseSrchAjaxBefore,
					success:CourseSrchAjaxSuccess,
					clearForm: false,
					resetForm: false
				});
				return false;
			}else{
				$('#CourseSearchSubmitImg').hide();
				$('#CourseSearchSubmitSearching').fadeIn('slow');
				form.submit();
				return false;
			}
		}
		
	});

	$("#summarytableform").validate({
		submitHandler: function(form) {
			$('#CourseSearchSubmitImg').hide();
			$('#CourseSearchSubmitSearching').fadeIn('slow');
			form.submit();
			return false;
		}
	});


	$("body").delegate("change", "#CheckBalanceOID", function() {
		$("#AddBalanceOID").val($(this).val());
	});


	$("body").delegate("change", "#ArrivalAirport", function() {
		UpdateTransferTotals();
	});

	$("body").delegate("change", "#DepartureAirport", function() {
		UpdateTransferTotals();
	});


	$("body").delegate("change", "#srchmastercatreq", function() {
		coursetype = $(this).val();
		$.ajax({
			url:$("#curdir").val() + "ELCAdmin/AdminGetTData.php",
			beforeSend: function(){
			},
			success: function(data){
				$("#srchcoursedefreq").html(data);
			},
			data:{
				srchcoursetypereq:coursetype,
				srchtask:"ChangeCourse"
			},
			async:false
		});
	});
	
	$("a.coursedetails").live("click",function() {
		var strcoursetype = $(this).attr("id").split("_")[2];
	});

	$("a#inline").live('mouseover',function(){
		$(this).fancybox({
			'titleShow'		: false,
			'hideOnContentClick': true,
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic'
		});
	 });

	$("body").delegate("change", ".OpenFromDate", function() {
		var curdir = $("#curdir").val();
		var OpenFromDate = $(this).val();
		var cart_task = $(this).attr("id");
		var strtask = $(this).attr("id").split("_")[0];
		var intsummary_id = $(this).attr("id").split("_")[1];
		cart_task += "_" + String(intsummary_id) + "_";
		$.ajax({
			url: curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				cart_task:cart_task,
				OpenFromDate:OpenFromDate
			},
			async:false
		});
		return false;
	});

	$("body").delegate("change", "#OpenFromDate_V", function() {
		var curdir = $("#curdir").val();
		var OpenFromDate = $(this).val();
		var cart_task = $(this).attr("id");
		var strtask = $(this).attr("id").split("_")[0];
		var intsummary_id = $(this).attr("id").split("_")[1];
		cart_task += "_" + String(intsummary_id) + "_";
		$.ajax({
			url: curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				cart_task:cart_task,
				OpenFromDate:OpenFromDate
			},
			async:false
		});
		return false;
	});


	$("body").delegate("change", ".OpenDuration", function() {
		var curdir = $("#curdir").val();
		var OpenDuration = $(this).val();
		var cart_task = $(this).attr("id");
		var strtask = $(this).attr("id").split("_")[0];
		var intsummary_id = $(this).attr("id").split("_")[1];
		cart_task += "_" + String(intsummary_id) + "_";
		$.ajax({
			url: curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				cart_task:cart_task,
				OpenDuration:OpenDuration
			},
			async:false
		});
		return false;
	});


	$(".OpenFromDate").live('mouseover',function(){
		$(this).attr("readOnly", true)
		$(this).datepicker({
			minDate: new Date(),
			maxDate:"17-12-" + strMaxYear,//Allow 2 weeks (minimum) before EOY
			beforeShowDay: MondayOnly,
			buttonImage: '_images/icon-calendar.png',
			buttonImageOnly: true,
			showOn: 'both',
			dateFormat: 'dd-mm-yy',
			closeText: 'X',
			duration: 'slow'
		});
	});

	$("#OpenFromDate_V").live('mouseover',function(){
		$(this).attr("readOnly", true)
		$(this).datepicker({
			beforeShowDay: MondayOnly,
			buttonImage: '_images/icon-calendar.png',
			buttonImageOnly: true,
			showOn: 'both',
			dateFormat: 'dd-mm-yy',
			closeText: 'X',
			duration: 'slow',
			minDate:$("#MINOpenFromDate").val(),
			maxDate:$("#MAXOpenFromDate").val()
		});
	});


	function MondayOnly(date) {
		if (date.getDay() == 1) {
			return [true, ''];
		}
		return [false, ''];
	}

	$("body").delegate("change", ".placesselect", function() {
		var curdir = $("#curdir").val();
		var intplaces = $(this).val();
		var cart_task = $(this).attr("id");
		cart_task += "_" + String(intplaces);
		var strtask = $(this).attr("id").split("_")[0];
		var intsummary_id = $(this).attr("id").split("_")[2];
		$('#places_c_' + intsummary_id).hide();
		$('#spinplaces_' + intsummary_id).show();
		$.ajax({
			url: curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
				$('#spinPlaces_' + intsummary_id).hide();
				$('#places_' + intsummary_id).show();
			},
			data:{
				cart_task:cart_task
			},
			async:false
		});
		return false;
	});
	
	$("body").delegate("change", ".AccommDateSelect", function() {
		var curdir = $("#curdir").val();
		var accommdate = $(this).val();
		var accomm_Type = $(this).attr("id");
		cart_task = accomm_Type + "_" + accommdate + "_0";
		$('#' + accomm_Type).hide();
		$('#spin_' + accomm_Type).show();
		$.ajax({
			url: curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
				$('#spin_' + accomm_Type).hide();
				$('#' + accomm_Type).show();
			},
			data:{
				cart_task:cart_task
			},
			async:false
		});
		return false;
	});


	$("a.add, a.clearcart, .del").live("click",function() {

var curdir = $("#curdir").val();
		var cart_task = $(this).attr("id");
		var strtask = $(this).attr("id").split("_")[0];
		var strproducttype = $(this).attr("id").split("_")[1];
		var intsummary_id = (strtask == "a" ? $(this).attr("id").split("_")[2] : (strtask == "d" ? $(this).attr("id").split("_")[3] : ""));
		var straccommselectid = (strtask == "a" &&  strproducttype == "a" ? $(this).attr("id").split("_")[2] + "_" + $(this).attr("id").split("_")[3]: "" );
		var del_id = (strtask == "d" ? $(this).attr("id").split("_")[2] : "");
		var strsummaryhtml = "";
		if(strtask == "a"){
			if(strproducttype=="c"){
				strsummaryhtml = $("#data" + intsummary_id).html();
				strsummaryhtml = strsummaryhtml.replace("display: none;", "display: block;");
			}
			$('#action_' + intsummary_id).hide();
			$('#noaction_' + intsummary_id).hide();
			$('#spinadding_' + intsummary_id).show();
			if(straccommselectid !=""){
				$('#accommselect_' + straccommselectid).hide();
				$('#spinaccomm_' + straccommselectid).show();
			}
		}
		if(strtask == "d"){
			$('#delaction_' + del_id).hide();
			$('#spindeleting_' + del_id).show();
		}
		if(strtask == "c"){
			$('#c_cart_4u_x').hide();
			$('#SpinClearCart').show();
		}
		$.ajax({
			type:"post",
			url:curdir + "cart.php",
			beforeSend: function(){
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
				if(strtask == "a"){
					$('#spinadding_' + intsummary_id).hide();
					$('#action_' + intsummary_id).hide();
					$('#noaction_' + intsummary_id).show();
					if(straccommselectid !=""){
						$('#spinaccomm_' + straccommselectid).hide();
						$('#accommselect_' + straccommselectid).show();
					}
				}
				if(strtask == "d"){
					$('#delaction_' + del_id).hide();
					$('#action_' + intsummary_id).show();
					$('#noaction_' + intsummary_id).hide();
				}
				if(strtask == "c"){
					$('#SpinClearCart').hide();
					$('#c_cart_4u_x').show();
					$('.noaction').fadeOut('fast');
					$('.action').delay(1000).fadeIn('slow');
				}
				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#cart_container").html(data);
				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				cart_task:cart_task,
				strsummaryhtml:strsummaryhtml
			},
			async:false
		});
		return false;
	});

	$("#checkout4u").live("click",function() {
		$('#checkout4u').hide();
		$('#SpinCheckout').show();
	});

	$("a.update").live("click",function() {
		var curdir = $("#curdir").val();
		var cart_task = $(this).attr("id");
		var cartID = cart_task.split("_")[2];
		$.ajax({
			url:curdir + "searchgrid_a.php",
			beforeSend: function(){
				$(".a_choices").hide();
				$('#accommchoose_' + cartID).hide();
				$('#spinaccommchoose_' + cartID).show();
//				alert(
//					"cart_task - " + cart_task + "\n" +
//					"cartID - " + cartID
//				);
			},
			success: function(data){
//				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);
				$("#a_" + cartID).show();
				$("#a_" + cartID).html(data);
				$('#spinaccommchoose_' + cartID).hide();
				$('#accommchooselater_' + cartID).show();
				$('html,body').animate({scrollTop: $("#summarytable_a_prompt").offset().top}, 1000);
//				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				SrchMethod:"a",
				srchtask:"AccommSearch",
				cart_task:cart_task
			},
			async:true
		});
		return false;
	});

	$("a.chooselater").live("click",function() {
		var cart_task = $(this).attr("id");
		var cartID = cart_task.split("_")[2];
		$('#summarytable_a').fadeOut('slow');
		$('#accommchooselater_' + cartID).hide();
		$('#accommchoose_' + cartID).fadeIn('slow');
		return false;
	});

	$("a.copytoall").live("click",function() {
		var cart_task = $(this).attr("id");
		var attendeeID = cart_task.split("_")[1];
		var cartID = cart_task.split("_")[2];
		var copyval = $("#p_" + attendeeID + "_" + cartID).val();
		$(".attendee_" + attendeeID).val(copyval);
		return false;
	});

	$("#boolCopyCCAddress").click(function(){
		if($("#boolCopyCCAddress").attr("checked") == true){
			$("#CardAdd1").val($("#BillingAdd1").val());
			$("#CardAdd2").val($("#BillingAdd2").val());
			$("#CardTownCity").val($("#BillingTownCity").val());
			$("#CardPCode").val($("#BillingPCode").val());
			$("#CardCountry").val($("#BillingCountry").val());
		}
	});

	$("#boolCopyCCAddressEPDQ").click(function(){
		if($("#boolCopyCCAddressEPDQ").attr("checked") == true){
			$("input[name=baddr1]").val($("input[name=Billingaddr1]").val());
			$("input[name=baddr2]").val($("input[name=Billingaddr2]").val());
			$("input[name=baddr3]").val($("input[name=Billingaddr3]").val());
			$("input[name=bcity]").val($("input[name=Billingcity]").val());
			$("input[name=bcountyprovince]").val($("input[name=Billingcountyprovince]").val());
			$("input[name=bpostalcode]").val($("input[name=Billingpostalcode]").val());
			$("input[name=bcountry]").val($("input[name=Billingcountry]").val());
		}
	});

	$("#ArrivalTransfer").live("click",function() {
		UpdateTransferTotals();
	});

	$("#DepartureTransfer").live("click",function() {
		UpdateTransferTotals();
	});

	GetCourseDetails();
});


function UpdateTransferTotals(){
	var dblOrigGrandTotal = $("#dblGrandTotal").val();
	var boolArrivalTransferSelected = ($("#ArrivalTransfer").length>0?$("#ArrivalTransfer").is(':checked'):$("#ArrivalTransferEPDQ").is(':checked'));
	var boolDepartureTransferSelected = ($("#DepartureTransfer").length>0?$("#DepartureTransfer").is(':checked'):$("#DepartureTransferEPDQ").is(':checked'));
	var strArrivalAirport = ($("#ArrivalAirport").length>0?$("#ArrivalAirport").val():"");
	var dblArrPrice = (strArrivalAirport!=""?strArrivalAirport.split("_")[1]:0);
	var strDepartureAirport = ($("#DepartureAirport").length>0?$("#DepartureAirport").val():"");
	var dblDepPrice = (strDepartureAirport!=""?strDepartureAirport.split("_")[1]:0);
	var dblTransferTotal = 0;
	dblTransferTotal += (boolArrivalTransferSelected && parseFloat(dblArrPrice) > 0 ? parseFloat(dblArrPrice) : 0 );
	dblTransferTotal += (boolDepartureTransferSelected && parseFloat(dblDepPrice) > 0 ? parseFloat(dblDepPrice) : 0 );
	$("#dblTransferTotal").val(parseFloat(dblTransferTotal).toFixed(2));
	dblGrandTotal = parseFloat(dblOrigGrandTotal) + parseFloat(dblTransferTotal);
	$("#dblGrandTotalSpan").html(parseFloat(dblGrandTotal).toFixed(2));
}

CourseSrchAjaxBefore = function() {
	$('#CourseSearchSubmitImg').hide();
	$('#CourseSearchSubmitSearching').fadeIn('slow');
//	$('.adminsucc').hide();
};
CourseSrchAjaxSuccess = function() {
	$('html,body').animate({scrollTop: $("#summarytable").offset().top}, 1000);
	$('#CourseSearchSubmitSearching').hide();
	$('#CourseSearchSubmitImg').show();
	GetCourseDetails();
	return false;
//	$('.adminerr').show();
//	$('.adminsucc').show().delay(2000).fadeOut('slow');
};

function GetCourseDetails(){
	var curdir = $("#curdir").val();
	$(".course_summary_open" ).each(function(){
		var intsummary_id = $(this).attr("id").split("_")[2];
		$.ajax({
			url:curdir + "searchgrid_d_open.php",
			beforeSend: function(){
				$('#wait_' + intsummary_id).show();
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
//				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);

				$('#wait_' + intsummary_id).hide();
				$('#course_summary_' + intsummary_id).html(data);

//				if($('#add_status_' + intsummary_id).val() == 0){

				if( data.indexOf( "add_status_" +  intsummary_id + "_1") !== -1 ){
					$('#action_' + intsummary_id).show();
					$('#noaction_' + intsummary_id).hide();
				}else{
					$('#action_' + intsummary_id).hide();
					$('#noaction_' + intsummary_id).show();
				}

//				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				intsummary_id:intsummary_id
			},
			async:true
		});
//		return false;
	})
	$(".course_summary" ).each(function(){
		var intsummary_id = $(this).attr("id").split("_")[2];
		$.ajax({
			url:curdir + "searchgrid_d.php",
			beforeSend: function(){
				$('#wait_' + intsummary_id).show();
//				alert(
//					"a type - " + addtype + "\n" + 
//					"addID - " + addID + "\n"
//				);
			},
			success: function(data){
//				$('html,body').animate({scrollTop: $("#cart_container").offset().top}, 1000);

				$('#wait_' + intsummary_id).hide();
				$('#course_summary_' + intsummary_id).html(data);

//				if($('#add_status_' + intsummary_id).val() == 0){

				if( data.indexOf( "add_status_" +  intsummary_id + "_1") !== -1 ){
					$('#action_' + intsummary_id).show();
					$('#noaction_' + intsummary_id).hide();
				}else{
					$('#action_' + intsummary_id).hide();
					$('#noaction_' + intsummary_id).show();
				}

//				$("#cartmsg").delay(2000).fadeOut('slow');
			},
			data:{
				intsummary_id:intsummary_id
			},
			async:true
		});
//		return false;
	})
}
$(document).ready(function(){
	$("body").delegate("click", ".updatecc", function() {
		epdqencrypt();
	});
});

epdqencrypt = function(){
	UpdateTransferTotals();
	$("[name=epdqdata]").remove();
	var stroid = $("[name=oid]").val();
	var strtotal = ($("input[name=PayType]:checked").val()=="full"?$("#dblGrandTotalSpan").html():250);
	$.ajax({
		url:"./epdq_encrypt.php",
		type: "post",
		beforeSerialize: function($form, options) {
			$(".noencrypt").attr("disabled","disabled");
		},
		beforeSend: function(){
		},
		success: function(data){
			$(data).insertAfter('.oid');
		},
		data:{
			stroid:stroid,
			strtotal:strtotal
		},
		async:false
	});
}
