$( function() {
	ini = $('#fx img:first').attr('longdesc') + '?' + Math.random();
	if (ini) {
		$('#fx img:first').ready( function() {
			$.ajax({ url:ini, dataType:'json',
			success: function(data){
				$.each(data, function(item){
					$("<img>").attr("src", data[item]).css({'display':'none'}).appendTo("#fx");
				});
				$('div#fx').innerfade();
			}});

		});
	}
});



function emailCheck(emailFormFieldSelector, showerror) {

	var txt = $(emailFormFieldSelector).val();
	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) {
			$(emailFormFieldSelector).focus();
			alert(error);
		}
		return false;
	}
	return true;
}


$(function()
{
	Date.format = 'mm/dd/yyyy';
	
	var cal;
    var $this;
    
    	var checkForMouseout = function(event)
    	{
    		var el = event.target;
    		
    		while (true){
    			if (el == cal) {
    				return true;
    			} else if (el == document) {
    				$this.dpClose();
    				return false;
    			} else {
    				el = $(el).parent()[0];
    			}
    		}
    	};
    	
    	
    	
    	$('.date-pick')
    	   .datePicker({clickInput:true, createButton:true})
    	   .bind(
    			'dpDisplayed',
    			function(event, datePickerDiv)
    			{
    				cal = datePickerDiv;
    				$this = $(this);
    				$(document).bind(
    					'mouseover',
    					checkForMouseout
    				);
    			}
    		).bind(
    			'dpClosed',
    			function(event, selected)
    			{
    				$(document).unbind(
    					'mouseover',
    					checkForMouseout
    				);
    			}
    		);
        $('#Arrive').bind(
    		'dpClosed',
    		function(e, selectedDates)
    		{
    			var d = selectedDates[0];
    			if (d) {
    				d = new Date(d);
    				$('#Depart').dpSetStartDate(d.addDays(1).asString());
					$('#Depart').val(d.asString()).trigger('change');
    			}
    		}
    	);
		
    	$('#Depart').bind(
    		'dpClosed',
    		function(e, selectedDates)
    		{
    			var d = selectedDates[0];
    			if (d) {
    				d = new Date(d);
    			}
    		}
    	);
		$('select#s, select#r').change(function() {
			if(($('#map_canvas').length > 0) && $('select#s').val().length > 0) mapcheck(document.forms['qs']);
		});
		$('#Arrive').trigger('change');
});

// map check function
function mapcheck(frm) {
    var tmpc = frm.c.value;
    var tmps = frm.s.value;
    var tmpr = frm.r.value;
    if(tmps.length == 0) {
        alert('You must select a state!');
        return false;
    }
    try {
        if(!document.getElementById("msg")) return true;
        search_city = tmpc;
        search_state = tmps;
        search_radius = tmpr;
        
        mapApiSearch();
        
        return false;
    }
    catch(ex) {
        return true;
    }
    return true;
}



//index page:

	var mainPageSignupFormHandler = function() {

	    var email_ok = emailCheck("#email", true);

		var email = $("#email").val();

	    if (!email_ok || email.length < 5) {
	        return false;
	    }

		
	    var name = $("#lname").val();
	    var has_spaces = (name+'').indexOf(' ', 0) !== -1;

	    var fname = name;
		var lname = "";


	    if (has_spaces) {
	        var splits = name.split(" ", 2);

			if (splits[0].length > 2 && splits[1].length > 2) {
				fname = splits[0];
				lname = splits[1];
			}
	    }

		location.href = "/Signup?email="+email+"&fname="+fname+"&lname="+lname;
		return false;
   }
$(function() {	
  $('#emailsignup').click(mainPageSignupFormHandler);

});
