function form_validate() {
	var messages='';

	if (!isEmail(trim($('#emailaddress').val()))) {
		messages += '<li>You must enter a valid email address.</li>';
	}
	
	if ($('#agree:checked').val() == null) {
		messages += '<li>You must agree to the terms.</li>';
	}
   
	if (trim($('#postal').val()) == '') {
		messages += '<li>You must enter a valid postal code.</li>';
	}
   
	if (messages !='') {
		//alert(messages);
		$('#regErrors').html(messages);
		return false;	
	}
    return true;
}

function trim(str) {
	return str.replace(/^\s+|\s+$/g,'');
}

function isEmail(str) {
	var regex = /^[-_.a-z0-9]+@(([-_a-z0-9]+\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i;

return regex.test(str);
}

function ldaPassed() {
	//console.log('passed');
}

function validate_lda(){
    var month = $('select#lda_dobmonth option:selected').val()-1;
	var day = $('select#lda_dobday option:selected').val();
	var year = $('select#lda_dobyear option:selected').val();
	var province = $('select#lda_province option:selected').val();
	var theDate = new Date();
	var legalAge = theDate.setFullYear(theDate.getFullYear() - 19);
	var dob = new Date(year, month, day);
	clear_errors('#errors');
	var valid = true;
	
    if ( dob>legalAge ){
        $('div#errors').append('<br/>* You must be legal drinking age to enter.');
        valid = false;
    } 
	if (province != "ON" && province != "NS") {
		$('div#errors').append('<br/>* Sorry, Beer Deals isn&#8217;t available in your province yet. Keep checking back, we&#8217;re working on it. Thanks!');
        valid = false;
	}
	$('div#errors').show("slow");
    
	$.cookies.set('province', province);

	if($.cookies.get('province') == 'NS') {
		$('#iphone').addClass('iphone_ns');
	} else {
		$('#iphone').addClass('iphone_on');
	}	
	return valid;
}

function clear_errors(obj) {
	$(obj).text('');
}

function show_form() {
	if(animation == 0) {
		animation = 1;
		$('input.emailField').val('');
		if(set == false) {
			set = true;
			$('input.emailField').val('');
		}
			
		$('#bodyOverlay').animate({
			top: '+=420'
		}, 'slow', 'easeInBack', function() {
			$('#regForm select').fadeIn('500', function() {
				$('#regForm select').css('display', 'inline')
			});;
		});
	};
}

function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

$(document).ready(function () {
	animation = 0;
	set = false;
	$('#regForm select').css('display', 'none');
	if($.cookies.get('lda') == 'set') {
    	if (gup("p") != "") {
	        $.cookies.set('province', gup("p"));  
	    }

		if($.cookies.get('province') == 'NS') {
			$('#ontarioLegal').css('display', 'none');
			$('#form_province').val('NS');
			$('#deals_ontario').css('display', 'none');
			$('#iphone').addClass('iphone_ns');
		} else {
			$('#novascotiaLegal').css('display', 'none');
			$('#form_province').val('ON');
			$('#deals_novascotia').css('display', 'none');
			$('#iphone').addClass('iphone_on');
		}
		$('#lda').css('display', 'none');
	}else {
		$('#lda').css('display', 'block');		
		//$('body').css('overflow', 'hidden');
		$('html').css('overflow', 'hidden');
		$('form#ldaForm').submit(function() {
			if(validate_lda() == true){
				if($.cookies.get('province') == 'NS') {
					$('#ontarioLegal').css('display', 'none');
					$('#form_province').val('NS');
					$('#deals_ontario').css('display', 'none');
				} else {
					$('#novascotiaLegal').css('display', 'none');
					$('#form_province').val('ON');
					$('#deals_novascotia').css('display', 'none');
				}
					
				$('#lda').fadeOut('1000', function() {
					//$('body').css('overflow', 'visible');
					$('html').css('overflow', 'scroll');
					$('#lda').css('display', 'none');
				});
				$.cookies.set('lda', 'set');
			}
			return false;
		});
	}
	$('input.emailField').focus(function() {
		show_form();
	});
    
    $('div.deal').click(function() {
        var title = this.title;
        window.open(title);
	});
    
	$('#cancel').click(function() {
		if(animation == 1) {
			animation = 0;
			$('#regForm select').fadeOut('500', function() {
				$('#regForm select').css('display', 'none');				
			});
			$('#bodyOverlay').animate({
				top: '-=420'
			}, 'slow', 'easeInBack', function() {
				
			});
				$('input.emailField').val('Enter your email to sign-up');
	
		};
	});
});