function valid_email(email) {
	if(email==undefined) email = '';
	email = email.toLowerCase();
	var reg = new RegExp("^([\.a-z0-9_-])+\@([\.a-z0-9_-])+\.([a-z]{2,4})$", "gi");
	//var reg = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
	return reg.test(email);
}
// similar to trim from php, but removes only spaces (chr #32)
function trim(str) {
	var newStr = '';
	for(var i=0; i < str.length; i++) {
		if(str.charCodeAt(i) != 32) {
			newStr += str.charAt(i);
		}
	}
	return newStr;
}

function SendForm(formname){ 
	
	var name = document.getElementById('fName');
	var surname = document.getElementById('fsName');
	var cellPhone = document.getElementById('telkom');
	var phone = document.getElementById('fTel');
	var mail = document.getElementById('fMail');
	var agree = document.getElementById('fAgree');
	var error = false;
	var dni = document.getElementById('dni');
	var godziny = document.getElementById('godziny');
	
	var nameerr = document.getElementById('fNameErr');
	var snameerr = document.getElementById('fsNameErr');
	var telkomerr = document.getElementById('telkomerr');
	var telerr = document.getElementById('telerr');
	var mailerr = document.getElementById('mailerr');
	var agreeerr = document.getElementById('agreeerr');
	var dnierr = document.getElementById('dnierr');
	var godzinyerr = document.getElementById('godzinyerr');
	
	$('.form1star').html('');
	$('input').removeClass('error');
	$('select').removeClass('error');

	
	// validating scripts
	var newName = trim(name.value)
	if(newName.length == 0) {
		nameerr.innerHTML = '*';
		name.className = 'error';
		error = true;
	}
	
	var newSName = trim(surname.value)
	if(newSName.length == 0) {
		snameerr.innerHTML = '*';
		surname.className = 'error';
		error = true;
	}
	
	$('#telkom').val($('#tkom1').val()+'-'+$('#tkom2').val()+'-'+$('#tkom3').val());
	$('#fTel').val($('#tel1').val()+'-'+$('#tel2').val()+'-'+$('#tel3').val());

	r_kom = /[0-9]{3}-[0-9]{3}-[0-9]{3}/g;
	r_stac = /[0-9]{2}-[0-9]{3}-[0-9]{4}/gi;
	
	// helpers:
	var isCellSet = false;
	var isPhoneSet = false;
	
	if(cellPhone.value.length != 0 && cellPhone.value!='XXX-XXX-XXX') { isCellSet = true; }
	if(phone.value.length != 0 && phone.value!='XX-XXX-XXXX') { isPhoneSet = true;}
	
	var cellPhoneTest = r_kom.test(cellPhone.value);
	var phoneTest = r_stac.test(phone.value);
	
	var cellPhoneError = false;
	var phoneError = false;
	
	if(isCellSet && isPhoneSet) {
		if(!cellPhoneTest) cellPhoneError = true;
		if(!phoneTest) phoneError = true;
	} else if (!isCellSet && isPhoneSet){
		if(!phoneTest) phoneError = true;
	} else if (isCellSet && !isPhoneSet) {
		if(!cellPhoneTest) cellPhoneError = true;
	} else if (!isCellSet && !isPhoneSet) {
		cellPhoneError = true;
		phoneError = true;
	}
	if (cellPhoneError || phoneError) error = true;
	if (cellPhoneError) $('#tkom1').add('#tkom2').add('#tkom3').addClass('error');
	if (phoneError) $('#tel1').add('#tel2').add('#tel3').addClass('error');
	
	//ff bug fix
	r_kom.test(cellPhone.value);
	r_stac.test(phone.value);
	
	if(mail.value.length == 0 && !valid_email(mail.value)) {
		mailerr.innerHTML = '*';
		mail.className = 'error';
		error = true;
	}
	
	if(!agree.checked) {
		error=true;
		agreeerr.innerHTML = '*';
	}
	
	if(dni.value == 'brak') {
		error = true;
		dni.className = 'error';
		dnierr.innerHTML = '*';
	}

	if(godziny.value == 'brak') {
		error = true;
		godziny.className = 'error';
		godzinyerr.innerHTML = '*';
	}
	
	if(!error) {
		document.getElementById('formError').style.display = 'none';
		if(cellPhone.value=='XXX-XXX-XXX') cellPhone.value='';
		if(phone.value=='XX-XXX-XXXX') phone.value='';
		document.getElementById(formname).submit();
	} else {
		document.getElementById('formError').style.display = 'inline';
	}
}


$(document).ready(function() {
	$('.mobileText').add('.kierunekNr').add('.lastTelNr').keyup(function(){
		if (this.value.length == $(this).attr('count')) {
			var n = $(this).attr('next');
			if (n!='') $('#'+n).focus();
		}
	});
	$('.mobileText').add('.kierunekNr').add('.lastTelNr').focus(function(){
		var c = $(this).attr('count');
		var str = '';
		for (i=0;i<c;i++) str += 'X';
		if ($(this).val() == str) $(this).val('');
	});
	$('.mobileText').add('.kierunekNr').add('.lastTelNr').blur(function(){
		if ($(this).val() == '') {
			var c = $(this).attr('count');
			var str = '';
			for (i=0;i<c;i++) str += 'X';
			$(this).val(str);
		}
	});
	$('.mobileText').add('.kierunekNr').add('.lastTelNr').blur();
});

