/**
 * Script para validar el formulario de compra
 */	
jQuery(document).ready(function() {
	var formVal = jQuery("#dondeComprar");//registrar
	var contactVal = jQuery("#contactarCliente");//contacto
	var enviaCV = jQuery("#enviarCV");//enviar cv
	
	// registro >
	formVal.validate({
		rules: {
			//nombre
			name: {
				required: true,
				minlength: 3
			},
			//email
			mail: {
				required: true,
				minlength: 3,
				email: true
			},
			//estado
			state: {
				required: true,
				minlength: 1
			},
			//municipio
			country: {
				required: true,
				minlength: 3
			},
			//cp
			zip: {
				required: true,
				minlength: 3
			},
			//calle
			street: {
				required: true,
				minlength: 3
			},
			//telefono
			phone: {
				required: true,
				minlength: 3
			}
		},
		messages: {
			name: "Introduzca su nombre",
			mail: "Introduzca su correo electronico",
			state: "Seleccione su estado",
			country: "Introduzca su Delegación/Municipio",
			zip: "Introduzca su Código Postal",
			street: "Introduzca su calle",
			phone: "Introduzca su teléfono"
		},
		submitHandler: function() {
			formVal.ajaxSubmit({
				dataType:  'json',
				beforeSubmit: showRequest, // pre-submit callback
				success: showResponse // post-submit callback
			});
		},
		//
		highlight: function(element, errorClass) {
		    //jQuery(element).addClass('error');
		},
		unhighlight: function(element, errorClass) {
			//jQuery(element).removeClass('error');
		}
	});
	// < registro
	
	// login >
	var formLogin = jQuery("#loginForm");
	
	formLogin.validate({
		rules: {
			//userId
			userId: {
				required: true,
				email: true,
				minlength: 3
			},
			//userPass
			userPass: {
				required: true,
				minlength: 5
			}
		},
		messages: {
			userId: "Introduzca su correo electrónico",
			userPass: "Introduzca su password"
		},
		submitHandler: function() {
			formLogin.ajaxSubmit({
				dataType:  'json',
				beforeSubmit: showRequestLogin, // pre-submit callback
				success: showResponseLogin // post-submit callback
			});
		},
		//
		highlight: function(element, errorClass) {
		    //jQuery(element).addClass('error');
		},
		unhighlight: function(element, errorClass) {
			//jQuery(element).removeClass('error');
		}
	});
	/*
	function showRequestLogin(formData, jqForm, options) {
	}
	function showResponseLogin(responseText, statusText)  {
		var status = eval(responseText);
		if(0 === status[0]) {
			//Sexy.info(status[1]);
			//showInfo.show().load('index.php?id=417');
			//jQuery("#wrapResult").show();
			//jQuery("#showResult").load('index.php?id=669',function() {});
			window.location.replace("index.php?id=669");
		}else {
			Sexy.alert(status[1]);
		}
	}
	*/
	// < login
	
	// contacto >
	contactVal.validate({
		rules: {
			//nombre
			name: {
				required: true,
				minlength: 3
			},
			//estado
			state: {
				required: true,
				minlength: 1
			},
			//municipio
			country: {
				required: true,
				minlength: 3
			},
			//colonia
			col: {
				required: true,
				minlength: 3
			},
			//cp
			zip: {
				required: true,
				minlength: 5
			},
			//calle
			/*
			street: {
				required: true,
				minlength: 3
			},
			       */
			//telefono
			phone: {
				required: true,
				minlength: 3
			},
			//mail
			mail: {
				required: true,
				minlength: 3,
				email: true
			}
		},
		
		invalidHandler: function(form, validator) {
			var errors = validator.numberOfInvalids();
			if (errors) {
				Sexy.alert("Los elementos con * son indispensables.");
				//alert("Los elementos con * son indispensables\nSe debe seleccionar el campo Estado\nEl formato en el correo debe ser: tunombre@dominio.algo");
				//$("#error").show();
			}
		},
		
		messages: {
			name: " ",
			mail: " ",
			state: " ",
			country: " ",
			col: " ",
			zip: " ",
			//street: " ",
			phone: " "
		},
		submitHandler: function() {
			contactVal.ajaxSubmit({
				beforeSubmit: showRequestContact, // pre-submit callback
				success: showResponseContact // post-submit callback
			});
		},
		//
		highlight: function(element, errorClass) {
		    //jQuery(element).addClass('error');
		},
		unhighlight: function(element, errorClass) {
			//jQuery(element).removeClass('error');
		}
	});
	function showRequestContact(formData, jqForm, options) {
	}
	function showResponseContact(responseText, statusText)  {
		var status = eval(responseText);
		if(0 === status[0]) {
			//Sexy.info(status[1]);
			Sexy.alert(status[1]);
			$("#contactarCliente")[0].reset();
		}else {
			Sexy.alert(status[1]);
			$("#contactarCliente")[0].reset();
		}
		//$("#contactarCliente")[0].reset();
	}
	// < contacto
	
	// curriculum >
	enviaCV.validate({
		rules: {
			//nombre
			name: {
				required: true,
				minlength: 3
			},
			//email
			email: {
				required: true,
				minlength: 3,
				email: true
			},
			//teléfono
			phone: {
				required: true,
				minlength: 1
			},
			//mail seleccionado
			mailEnvio: {
				required: true,
				//required: false,
				//minlength: 3,
				email: true
			},
			//archivo
			file: {
				required: true,
				minlength: 3
			}
		},
		messages: {
			name: "Introduzca su nombre",
			email: "Introduzca su correo electrónico",
			phone: "Introduzca su teléfono",
			mailEnvio: "Seleccione el correo",
			file: "Seleccione el archivo de su CV"
		},
		submitHandler: function() {
			enviaCV.ajaxSubmit({
				beforeSubmit: showRequestEnviaCV, // pre-submit callback
				success: showResponseEnviaCV // post-submit callback
			});
		},
		//
		highlight: function(element, errorClass) {
		    //jQuery(element).addClass('error');
		},
		unhighlight: function(element, errorClass) {
			//jQuery(element).removeClass('error');
		}
	});
	function showRequestEnviaCV(formData, jqForm, options) {
	}
	function showResponseEnviaCV(responseText, statusText)  {
		var status = eval(responseText);
		if(0 === status[0]) {
			Sexy.info(status[1]);
		}else {
			Sexy.alert(status[1]);
		}
	}
	// < curriculum
	
	// cambiar password >
	var formChgPass = jQuery("#changePassword");
	
	formChgPass.validate({
		rules: {
			//userId
			userId: {
				required: true,
				email: true,
				minlength: 3
			},
			//userPass
			userPass: {
				required: true,
				minlength: 5
			},
			userNewPass1: {
				required: true,
				minlength: 5
			},
			userNewPass2: {
				required: true,
				minlength: 5,
				equalTo: "#userNewPass1"
				}
		},
		messages: {
			userId: "Introduzca su usuario",
			userPass: "Introduzca su password",
			userNewPass1: "Proporcione un nuevo password",
			userNewPass2: "Verifique la comprobación del nuevo password"
		},
		submitHandler: function() {
			formChgPass.ajaxSubmit({
				dataType:  'json',
				beforeSubmit: showRequestChgPass, // pre-submit callback
				success: showResponseChgPass // post-submit callback
			});
		},
		//
		highlight: function(element, errorClass) {
		    //jQuery(element).addClass('error');
		},
		unhighlight: function(element, errorClass) {
			//jQuery(element).removeClass('error');
		}
	});
	
	function showRequestChgPass(formData, jqForm, options) {
	}
	function showResponseChgPass(responseText, statusText)  {
		var sts = responseText;
		alert(sts);
		/*
		if(0 === sts[0]) {
		}else {
			alert();
		}
		*/
	}
	// < cambiar password
});