var fancyBoxOptions = {
	'autoDimensions' : true, 
	'margin': 0,
	'padding' : 0, 
	'overlayOpacity' : 0.4, 
	'overlayColor' : '#FFFFFF', 
	'titleShow' : false, 
	'cyclic' : false, 
	'scrolling' : 'auto', 
	'hideOnOverlayClick' : false, 
	'transitionIn' : 'none', 
	'transitionOut' : 'none', 
	'showNavArrows':false,
	'centerOnScroll': true,
	'showCloseButton': false
}

function validateEmail(elementValue){
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	return emailPattern.test(elementValue);
}

function checkForm(type, frm) {
	var founds = false;
	
	if (type=='aanmelden-nieuwsbrief') var fields = new Array('frm_firstname','frm_lastname','frm_email','frm_optin');
	
	$('.'+frm+' input, .'+frm+' textarea').each(function() {
		found = include(fields,$(this).attr('name'));
		if (found) {
			if ($(this).val()=='' && $(this).attr('type')!='checkbox' && $(this).attr('type')!='file' && $(this).attr('class')!='email' && $(this).attr('class')!='email exists' && $(this).attr('class')!='number' && $(this).attr('name')!='frm_reaction') {
				$('#lbl_'+$(this).attr('name')).addClass('errorfld');
				founds = true;
			} else if ($(this).attr('type')=='file' && !validateExtension($(this).val(),$('#frm_extensions').html().split(','))) {
				founds = true;
				if ($('#extText').length==0) $('#lbl_'+$(this).attr('name')).addClass('errorfld').html($('#lbl_'+$(this).attr('name')).html() + " <span id='extText' style='float:right;padding-right:20px'>"+$('#frm_extensions').html()+"</span>");
			} else if ($(this).attr('class')=='email inputfld' && !validateEmail($(this).val())) {
				$('#lbl_'+$(this).attr('name')).addClass('errorfld');
				founds = true;
			} else if ($(this).attr('class')=='number inputfld' && !validateNumber($(this).val())) {
				$('#lbl_'+$(this).attr('name')).addClass('errorfld');
				founds = true;
			} else if ($(this).attr('checked')==false && $(this).attr('type')=='checkbox') {
				$('#lbl_'+$(this).attr('name')).addClass('errorfld');
				founds = true;
			} else if ($(this).attr('name')=='frm_reaction' && $('#'+$(this).attr('name')).html()=='') {
				$('#lbl_'+$(this).attr('name')).addClass('errorfld');
				founds = true;
			} else {
				$('#lbl_'+$(this).attr('name')).removeClass('errorfld');
				$('#extText').remove();
			}
		}
	});
	
	if (founds) alert('Vul alle verplichte velden in.');
	else return true;	
}

function include(arr, obj) {
	for(var i=0; i<arr.length; i++) {
		if (arr[i] == obj) { return true; break; }
	}
	return false;
}

function validateEmail(elementValue){
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	return emailPattern.test(elementValue);
}

function validateNumber(elementValue){
	var anum=/(^\d+$)|(^\d+\.\d+$)/;
	return anum.test(elementValue);
}

function validateLink(elementValue) {
	if (elementValue.substr(0,7)!='http://') elementValue = 'http://'+elementValue;
	var regexp = /^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?/;
	return regexp.test(elementValue);
}

function validateExtension(elementValue,ext) {
	var validExtensions = ext;
	var allowSubmit = false;
	type = elementValue.slice(elementValue.indexOf("\\") + 1);
	var extEr = elementValue.slice(elementValue.lastIndexOf(".")).toLowerCase();
	for (var i = 0; i < validExtensions.length; i++) {
		if (validExtensions[i] == extEr.replace('.','')) allowSubmit = true;
	}

    if (allowSubmit == false) return false;
    else return true;
     
    return allowSubmit;
}

function saveNewsletterSignup() {
	$.ajax({ 
		type	: "POST", 
		url		: "/services/save_newsletterSignup.php", 
		data	: "firstname="+$('.popupfrm input[name=frm_firstname]').val()+"&prefix="+$('.popupfrm input[name=frm_prefix]').val()+"&lastname="+$('.popupfrm input[name=frm_lastname]').val()+"&email="+$('.popupfrm input[name=frm_email]').val(),
		success	: function(result){
			if (result=='done') {
				$('.footer .newsletter input[type=text]').val('E-mailadres...');
				$('.popupfrm input[type=text]').val('');
				$.fancybox.close();
				alert('Opgeslagen!');
			} else alert(result);
		}
	});
}
