$(function(){	 
	/***
	 * Generic functions that come out of the box
	 */
	
	$("#collapse-more").hide();
	if ($("#collapse-more").length && $("p#collapse-read_more").length) {
		$("p#collapse-read_more a").click(function() {
			$("#collapse-more").slideToggle(700, function() {
				$("p#collapse-read_more a").toggleClass("more-hide");
				($("p#collapse-read_more a").hasClass("more-hide")) ? $("p#collapse-read_more a").html("Read Less") : $("p#collapse-read_more a").html("Read More");
	      		});
		  
			return false;
		});
	}
	
	$("form input[type=text]").focus(function(){
		var $default = $(this).val();
		$(this).val("");
		$(this).blur(function(){
			if($(this).val()=="") $(this).val($default);
		});
	});

    if($("a[rel^='prettyPhoto']").size()>0){
        $("a[rel^='prettyPhoto']").prettyPhoto({
            theme: 'facebook'
        });
    }
	
    $("form[name=omni_reservation_form] input.arrival").datepicker({
	    closeText: 'Close',
	    dateFormat: 'mm/dd/yy',
	    defaultDate: 0,
	    minDate: '+0',
	    maxDate: '+1Y',
	    showAnim: 'slideDown',
	    showButtonPanel: true,
		buttonImage: '/extension/cdev_base/design/site/images/icon_calendar.png',
		buttonImageOnly: true,
		showOn: 'both',
	    onSelect: function(date,thisPicker){
			date = $(this).datepicker("getDate");
			date.setDate(date.getDate()+1);
			$("form[name=omni_reservation_form] input.departure").datepicker("setDate",date);
	    }
	});
	
	$("form[name=omni_reservation_form] input.departure").datepicker({
	    closeText: 'Close',
	    dateFormat: 'mm/dd/yy',
	    defaultDate: +1,
	    minDate: '+1',
	    maxDate: '+1Y',
	    showAnim: 'slideDown',
	    showButtonPanel: true,
	    buttonImage: '/extension/cdev_base/design/site/images/icon_calendar.png',
		buttonImageOnly: true,
		showOn: 'both'
	});
	
	$("form.styled .date").datepicker({
		buttonImage: '/extension/cdev_base/design/cdev_base/images/calendar.png',
		buttonImageOnly: true,
		closeText: 'Close',
		dateFormat: 'MM d, yy',
		minDate: '+0',
		maxDate: '+1Y',
		showAnim: 'slideDown',
		showOn: 'both',
		showButtonPanel: true
	});
	
	$("form input.email-validate").addClass("email-invalid");
	$("form input.email-validate").each(function(){
		$(this).blur(function(){
			var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			
			if(reg.test( $(this).val() ) == false)
				$(this).addClass("email-invalid");
			else
				$(this).removeClass("email-invalid");
		})
		
		$(this).parents("form").submit(function(){
			var valid; 
			
			$(this).find("input.email-validate").each(function(){
				if( $(this).hasClass("email-invalid") )
					valid = "false";
				else
					valid = "true";
			});
			
			if(valid=="true"){
				return true;
			}else{
				alert('Please enter a valid email');
				return false;
			}
		});
	});
	
	/**
	 * End Generic Functions
	 */
});

