$(function() {
	// Datepickers
	if ($(".datepicker").length) {
		$(".datepicker").datepicker({
			dateFormat: 'mm/dd/yy',
			dayNamesMin: ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'],
			minDate: "+1",
			showAnim: '',
			showOtherMonths: true
		});
	};
	
	// Placeholders
	if ($("input[placeholder]").length) {
		$("input[placeholder]").placeholder();
	}
	
	// Start Page
	$(".tp-start .tp-trip-type-selector button").click(function() {
		$(this).siblings(":radio").trigger("click");
		$(this).closest("form").trigger("submit");
	});
	
	// Modal Window Day Selector
	$(".tp-day-selector input").change(function() {
		$(this).parent().toggleClass("selected");
	});
	
	// Modal Window External Links
	$(".tp-item-info a[href^=http]")
		.removeAttr("blank")
		.attr("target", "_blank");
	
	// Day Slider
	if ($("#tp-scroller").length) {
		var $paneTarget = $("#tp-scroller");
		$paneTarget.scrollTo(0);
		
		$(".tp-next").click(function(e) {
			$paneTarget.scrollTo('.tp-day:eq(3)', 800, {offset:-28, easing: "easeOutExpo", onAfter: function() {$(".tp-previous").show()} });
			$(".tp-next").hide();
			e.preventDefault();
		});
		
		$(".tp-previous").click(function(e) {
			$paneTarget.scrollTo(0, 800, {easing: "easeOutExpo", onAfter: function() {$(".tp-next").show()} });
			$(".tp-previous").hide();
			e.preventDefault();
		});
	}
	
	// Modal Windows
	var $modalWindow = $('<div id="modal-window" class="jqmWindow"><iframe id="jqmContent" src="" width="100%" height="100%" frameBorder="0"></iframe></div>');
	$modalWindow.appendTo("body:not(.tp-modal)");
	
	if ($("#modal-window").length) {
		$.jqm.params.modal = true;
		$.jqm.params.toTop = true;
		$.jqm.params.overlay = 100;
		
		$("#modal-window").jqm({
			trigger: $(".tp-button-to-do,.tp-button-to-eat,.tp-button-to-stay,.tp-share-friend"),
			target: '#jqmContent',
			onShow:  loadInIframeModal
		});
		
		if ($(".tp-review").length) {
			$("#modal-window").addClass("small");
		}
	}
	
	$(document).keydown(function(e) {
		if(e.which == 27) {  // escape, close box
			$(".jqmWindow").length ? $(".jqmWindow").jqmHide() : parent.$(".jqmWindow").jqmHide(); // determine where keydown occured
		}
	});
	
	function loadInIframeModal(hash) {
		var $trigger = $(hash.t);
		var $modal = $(hash.w);
		var myUrl = $trigger.attr('href');
		var $modalContent = $("iframe", $modal);
		
		$modalContent.html('').attr('src', myUrl);
		hash.w.show();
	}
	
	$(".jqmClose").click(function(e) {
		parent.$("#modal-window").jqmHide();
		e.preventDefault();
	});
	
	// Print Link
	$(".tp-print-itinerary").click(function(e) {
		window.print();
		e.preventDefault();
	});
	
	// Recommended for... drop-down behavior
	$("select#target_id").bind('change', function(e) {
	    $(this).parent().submit();
	});
	

/* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
**********************************************************************/

jQuery.easing['jswing'] = jQuery.easing['swing'];

jQuery.extend( jQuery.easing,
{
	easeOutExpo: function (x, t, b, c, d) {
		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
	},
	easeInOutExpo: function (x, t, b, c, d) {
		if (t==0) return b;
		if (t==d) return b+c;
		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
	}
});

/*
 *
 * TERMS OF USE - EASING EQUATIONS
 * 
 * Open source under the BSD License. 
 * 
 * Copyright © 2001 Robert Penner
 * All rights reserved.
 *
 */
});

