function emailCheck(emailFormField, showerror) {

	var txt = emailFormField.value;
	var error = "";

	var emailRe = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/
	var phoneRe = /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/

	if (!(emailRe.test(txt))) {
		error = "Please enter a valid email address.\n";
	}

	var illegalChars = /[\(\)\<\>\,\;\:\\\/\"\[\]]/
	if (txt.match(illegalChars)) {
		error += "The email address contains illegal characters.\n";
	}

	if (error.length > 0) {
		if (showerror) {
			emailFormField.focus();
			alert(error);
		}
		return false;
	}
	return true;
}

function printEvents() {
	$('body').toggleClass('print-events');
	window.print();
	$('body').toggleClass('print-events');
}
function printCalendar() {
	$('body').toggleClass('shedule');
	window.print();
	$('body').toggleClass('shedule');
}
function tripadvisor(url,id) {
	TripAdvisor = $.getJSON(url+"assets/tripadvisor.php?id="+id, function(data) {
	  	$('#tripadvisor')
		.append('<a href="http://www.tripadvisor.com/' + data.url + '" class="ta-logo notxt" rel="nofollow" target="_blank">Tripadvisor</a>')
		.append('<div><strong>TripAdvisor Traveler Rating:</strong></div>')
		.append('<div class="ta-rating r' + data.stars*2 + '"><div class="notxt" title="' + data.stars + ' of 5 stars"></div></div>')
		.append('<small>Based on ' + data.reviews + ' traveler reviews</small>');
	});	
}

function renderPlusone() {
  gapi.plusone.render("PlusOne", {"size" : "small"});
}
		
$(function(){
	
		$('a[rel="external"], form.form-external').attr({'target':'_blank'});
		
		var current_url = $('#fb-index').attr("title");
		
		$('#fb-index').html('<iframe src="http://www.facebook.com/plugins/like.php?href=' +current_url+ '&amp;layout=standard&amp;show_faces=false&amp;width=530&amp;action=like&amp;colorscheme=light&amp;height=35" scrolling="no" frameborder="0" allowTransparency="true" class="facebook-like"></iframe>');
		
		$('#fx img:first').ready( function() {
						
			var _counter = 0;
			
			$('#fx img').each(function() {
				_counter++;
				$(this).data('photo_num', _counter);
			});
			
			window.total_number_of_images = _counter;
			window.current_image_shown = 0;
			
			generateLinksToImages("fx");

			$('#arrow-l').click( function() {
				var cur = window.current_image_shown + 1;//images are from 1 to max. but in innerfade from 0 to max-1!
				var prev = cur-1;
				
				if (cur <= 1) {
					prev = window.total_number_of_images;
				}
				window.current_image_shown = prev - 1; //current_image_shown = (0, max)
				show_slide(prev);
			});
			
			
			$('#arrow-r').click( function() {
				var cur = window.current_image_shown + 1;
				var max = window.total_number_of_images;
				var next = cur+1;
				
				if (cur >= max) {
					next = 1;
				}
				window.current_image_shown = next - 1;
				show_slide(next);
			});

			


		});

	if($(".date-pick").length){
		$(".date-pick").datePicker({clickInput:true});
	}
	if($("#checkin").length){
		$("#checkin").datePicker({clickInput:true}).val(new Date().asString());
	}
	if($("#checkout").length){
		$("#checkout").datePicker({clickInput:true}).val(new Date().addDays(2).asString());
	}
	if($("#Arrival_Date").length){
		$("#Arrival_Date").datePicker({clickInput:true}).val(new Date().asString());
	}
	if($("#Departure_Date").length){
		$("#Departure_Date").datePicker({clickInput:true}).val(new Date().addDays(2).asString());
	}
	
	
	
	$('div#fx').innerfade({'onStartedProcessing': onStartedProcessing,'onFinishedProcessing': onFinishedProcessing});
	$("#ping").after($('<input>').attr({'name':'pong','value':$("#ping").val(),'class':'hide'}));
	
	/** booking **/
	
		var HeBS_Link_Checkin_Checkout_Inputs = function HeBS_Link_Checkin_Checkout_Inputs_function(checkin_selector, checkout_selector) {
			Date.format = 'mm/dd/yyyy';
	
			
			
			$(checkin_selector).bind('dateSelected', function(e, selectedDate, $td, state) {
				var t = new Date(selectedDate);
				var dt = new Date.fromString($(checkin_selector).val());		
			    var edate = new Date.fromString($(checkout_selector).val());			
			    var one_day=1000*60*60*24;
			    var days_diff = Math.ceil((edate.getTime() - dt.getTime())/(one_day));
			    
			    if(edate.getTime() <= dt.getTime()) {
			        $(checkout_selector).val(t.addDays(2).asString());
			    }
			});
			
			$(checkout_selector).bind('dateSelected', function(e, selectedDate, $td, state) {
				var t = new Date(selectedDate);
				var dt = new Date.fromString($(checkin_selector).val());	
			    var edate = new Date.fromString($(checkout_selector).val());				
			    var one_day=1000*60*60*24;
			    var days_diff = Math.ceil((edate.getTime() - dt.getTime())/(one_day));
			    
			    var edate = new Date.fromString($(checkout_selector).val());			
			    if(edate.getTime() <= dt.getTime()) {
			        $(checkin_selector).val(t.addDays(-2).asString());
			    }		
			});
			
			var today = new Date();
			$(checkin_selector).val(today.asString());
			$(checkout_selector).val(today.addDays(2).asString());
			
		    $(checkout_selector).dpSetStartDate(today.asString());
		};
		
		HeBS_Link_Checkin_Checkout_Inputs('#checkin', '#checkout');
		HeBS_Link_Checkin_Checkout_Inputs('#arrival_date', '#departure_date');
		HeBS_Link_Checkin_Checkout_Inputs('#alternate_arrival_date', '#alternate_departure_date');
		HeBS_Link_Checkin_Checkout_Inputs('#preferred_date', '#flexible_date');
		HeBS_Link_Checkin_Checkout_Inputs('#start_date', '#end_date');
	//	end of booking
	
 $("input[type='submit'], #main ul li").hover(
		 function () {
			$(this).addClass('hover');
		 }, 
		 function () {
			$(this).removeClass('hover');
		 }
	 );
	
	$("").hover(
			 function () {
				$(this).addClass('hover');
			 }, 
			 function () {
				$(this).removeClass('hover');
			 }
		 );
	
	if ( $("#special-rates").length ) {
	
		$(".spec-rates").toggle(function(){
			$("#special-rates").slideDown('normal');
		}, function(){
			$("#special-rates").slideUp('normal');
		});
	
		$("#special-rates input.radio").change(function(){
			$("#special-rates input.text").val("");
		});
		$("input.sel-magic").focus(function(){
			$("label[for='"+$(this).attr("id")+"'] input.text").focus();
		});
		$("input.sel-magic").click(function(){
			$("label[for='"+$(this).attr("id")+"'] input.text").focus();
		});
	}
	if($("#map_canvas").length>0){
		$("#map_canvas").gMap({
		           markers: [{
		               latitude: 41.893279,
		           longitude: -87.622989,
		               html: "<h3>Courtyard Magnificent Mile Downtown Chicago</h3><p>165 E. Ontario Street<br>Chicago, IL 60611<br>Tel: (312) 573-0800</p>",
		               popup: true
		           }],
		           zoom: 15,
				   controls: ["GLargeMapControl3D", "GMapTypeControl"],
		           scrollwheel: false,
		           icon:
		               {
		                   image:              "images/pointer.png",
		                   shadow:             "images/pointer-shadow.png",
		                   iconsize:           [31, 39],
		                   shadowsize:         [31,39],
		                   iconanchor:         [10, 39],
		                   infowindowanchor:   [8, 2]
		               }

		       });
	}
	
	// IMAGE MAGIC
	
	var MIN_DIV_H = 412;
	var HEIGHT_FACTOR = 0.65;

	var WIN_H  = $(window).height(); 
	var IMG_H = 564;   
	var MAX_DIV_H = 564;
	var desired_media_height = WIN_H * HEIGHT_FACTOR;

	function imageMagic() {

		resizeMediaDiv();
		$(function() { resizeMediaDiv(); });
		$(window).resize(function() { resizeMediaDiv(); });

	}

		function centerIMG() {
			IMG_M = -1 * (IMG_H - desired_media_height)/2;
			$('div.photo .inner').css({top: IMG_M});
		}

		function resizeMediaDiv() {
			WIN_H  = $(window).height(); 

			desired_media_height = WIN_H * HEIGHT_FACTOR;					
			if (desired_media_height > MAX_DIV_H) {
				desired_media_height = MAX_DIV_H;
			}

			if (desired_media_height < MIN_DIV_H) {
				desired_media_height = MIN_DIV_H;
			}

			$('div.photo').css({height: desired_media_height});

			centerIMG();

	}
	
	imageMagic();
	
	$('#exclusive_deals_yes').attr('checked','checked');
	
	renderPlusone();
});


