var bravobike = {}
bravobike.errors = {}
bravobike.i18n = {
	es: {
		AsistenteError: 'Los nombres, apellidos, edades, alturas y casco de todos los participantes es obligatorio.',
		EmailsDiferentesError: "Los emails no coinciden",
		EmailIncorrectoError: "El email no es correcto",
		FormErrorsAdvise: "Hay errores en el formulario",
		Propio: "Propio",
		Pequenyo: "Peque&ntilde;o",
		Mediano: "Mediano",
		Grande: "Grande"
	},
	en: {
		AsistenteError: 'Name, surname, age, height and helmet are required fields',
		EmailsDiferentesError: "Emails dont match",
		EmailIncorrectoError: "Invalid email",
		FormErrorsAdvise: "The form contains some errors",
		Propio: "Own",
		Pequenyo: "Small",
		Mediano: "Medium",
		Grande: "Big"
	}
}



function __(etiqueta) {
	return bravobike.i18n[bravobike.lang][etiqueta]
}

function validateMail(email1, email2) {
	if(email1 != email2) {
		bravobike.errors.Email = __("EmailsDiferentesError")
		return false
	} else {
		var emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		if (email1.match(emailRegEx)) {
			return true
		} else {
			bravobike.errors.Email = __("EmailIncorrectoError")
			return false
		}
	}
}

function printErrors () {
	$("errors").innerHTML = ''
	alert(__("FormErrorsAdvise"))
	errorFields = document.getElementsByClassName('errors')
	for (i=0; i<errorFields.length; i++) {
		errorFields[i].innerHTML = ''
	}
	for (value in bravobike.errors) {
		$("errors").innerHTML += bravobike.errors[value]+'<br>'
		$(value+"Error").innerHTML = bravobike.errors[value]
	}
}

function cleanErrors () {
	bravobike.errors = {}
}


function validate(form) {
	alert("hola")
	var isEmailOK = validateMail(form.Email.value, form.Email2.value)
	if (isEmailOK) {
		form.submit()
	} else {
		printErrors()
		cleanErrors()
	}	
}
