String.prototype.is_number = function () {
	var filter=/^[0-9]*$/;
	if (this.length == 0 ) return false;
	if (filter.test(this)) return true;
	return false;
}

String.prototype.is_text = function () {
	var filter=/^[A-Za-z\sáéíóúñÁÉÍÓÚÑ]*$/;
	if (this.length == 0) return false;
	if (filter.test(this)) return true;
	return false;
}

String.prototype.is_email = function () {
	var filter=/^[A-Za-z][A-Za-z0-9_\-\.]*@[A-Za-z0-9_\-]+\.[A-Za-z0-9_\-\.]+[A-za-z]$/;
	if (this.length == 0 ) return false;
	if (filter.test(this)) return true;
	return false;
}

String.prototype.is_rut = function () {
	function dv(T) {
		if (T.length == 0) return 'N';
		var M=0,S=1;for(;T;T=Math.floor(T/10))S=(S+T%10*(9-M++%6))%11;return S?S-1:'K';
	}
	rut = this + $("input#rut_dv").val();
	rut = rut.replace("-", "");
	rut = rut.replace(".", "");
	rut = rut.replace(".", "");
	rut = rut.replace("k", "K");
	
	var filter=/^[0-9K]+$/;
	if (!filter.test(rut)) return false;
	if (rut.substr(rut.length - 1, 1) != dv(rut.substr(0, rut.length - 1))) return false;
	
	return true;
}

var init = Array();
init['personal_nombre'] = 'Nombres';
init['personal_apellido_paterno'] = 'Apellido Paterno';
init['personal_apellido_materno'] = 'Apellido Materno';
init['personal_nacimiento_dia'] = 'Día';
init['personal_nacimiento_mes'] = 'Mes';
init['personal_nacimiento_anio'] = 'Año';
init['personal_email'] = 'Email';
init['personal_telefono'] = 'Teléfono';
init['personal_direccion'] = 'Dirección';

init['formacion_carrera'] = 'Carrera';
init['formacion_institucion'] = 'Institución Educacional';
init['formacion_anio'] = 'Año en que te encuentras';

init['laboral_lugar'] = 'Lugar de Trabajo';
init['laboral_cargo'] = 'Cargo';
init['laboral_anio_inicio'] = 'Año de inicio';
init['laboral_anio_termino'] = 'Año de término';
init['laboral_detalle'] = 'Detalle de funciones';

$(document).ready(function () {
	$('input, textarea').addClass('focus');
	
	var item;
	for (item in init) {
		$('input#' + item + ', textarea#' + item).val(init[item]);
	}
	
	$('input, textarea').focus(function () {
		if ($(this).val() == init[$(this).attr('id')]) {
			$(this).val('');
			$(this).removeClass('focus');
		}
	});
	$('input, textarea').blur(function () {
		if ($(this).val() == '') {
			$(this).val(init[$(this).attr('id')]);
			$(this).addClass('focus');
		}
	});
	
	$('form').submit(function () {
		//------------
		if ((!$('input#personal_nombre').val().is_text()) || ($('input#personal_nombre').val() == init['personal_nombre'])) {
			alert('Debes ingresar un NOMBRE válido');
			return false;
		}
		if ((!$('input#personal_apellido_paterno').val().is_text()) || ($('input#personal_apellido_paterno').val() == init['personal_apellido_paterno'])) {
			alert('Debes ingresar un APELLIDO PATERNO válido');
			return false;
		}
		if ((!$('input#personal_apellido_materno').val().is_text()) || ($('input#personal_apellido_materno').val() == init['personal_apellido_materno'])) {
			alert('Debes ingresar un APELLIDO MATERNO válido');
			return false;
		}
		if ((!$('input#personal_nacimiento_dia').val().is_number()) || ($('input#personal_nacimiento_dia').val() > 31) || ($('input#personal_nacimiento_dia').val() < 1)) {
			alert('Debes ingresar una FECHA DE NACIMIENTO válido');
			return false;
		}
		if ((!$('input#personal_nacimiento_mes').val().is_number()) || ($('input#personal_nacimiento_mes').val() > 12) || ($('input#personal_nacimiento_mes').val() < 1)) {
			alert('Debes ingresar una FECHA DE NACIMIENTO válido');
			return false;
		}
		if ((!$('input#personal_nacimiento_anio').val().is_number()) || ($('input#personal_nacimiento_anio').val() > 2009) || ($('input#personal_nacimiento_anio').val() < 1920)) {
			alert('Debes ingresar una FECHA DE NACIMIENTO válido');
			return false;
		}
		if (!$('input#personal_email').val().is_email()) {
			alert('Debes ingresar un EMAIL válido');
			return false;
		}
		if (!$('input#personal_telefono').val().is_number()) {
			alert('Debes ingresar un TELÉFONO válido');
			return false;
		}
		if ($('select#personal_nacionalidad').val() == '0') {
			alert('Debes seleccionar tu NACIONALIDAD');
			return false;
		}
		if ($('select#personal_region').val() == '0') {
			alert('Debes seleccionar tu REGIÓN');
			return false;
		}
		if ($('select#personal_comuna').val() == '0') {
			alert('Debes seleccionar tu COMUNA');
			return false;
		}
		if (($('input#personal_direccion').val().length == 0) || ($('input#personal_direccion').val() == init['personal_direccion'])) {
			alert('Debes ingresar una DIRECCIÓN válida');
			return false;
		}

		//----------
		if ((!$('input#formacion_carrera').val().is_text()) || ($('input#formacion_carrera').val() == init['formacion_carrera'])) {
			alert('Debes ingresar una CARRERA válida');
			return false;
		}
		if ((!$('input#formacion_institucion').val().is_text()) || ($('input#formacion_institucion').val() == init['formacion_institucion'])) {
			alert('Debes ingresar una INSTITUCIÓN válida');
			return false;
		}
		if (($('input#formacion_anio').val().length == 0) || ($('input#formacion_anio').val() == init['formacion_anio'])) {
			alert('Debes ingresar un AÑO DE FORMACIÓN válido');
			return false;
		}
		
		//----------
		if (($('input#laboral_lugar').val() != init['laboral_lugar']) || ($('input#laboral_cargo').val() != init['laboral_cargo']) || ($('input#laboral_anio_inicio').val() != init['laboral_anio_inicio']) || ($('input#laboral_anio_termino').val() != init['laboral_anio_termino'])) {
			if ((!$('input#laboral_lugar').val().is_text()) || ($('input#laboral_lugar').val() == init['laboral_lugar'])) {
				alert('Debes ingresar un LUGAR DE TRABAJO válido');
				return false;
			}
			if ((!$('input#laboral_cargo').val().is_text()) || ($('input#laboral_cargo').val() == init['laboral_cargo'])) {
				alert('Debes ingresar un CARGO DE TRABAJO válido');
				return false;
			}
			if ((!$('input#laboral_anio_inicio').val().is_number()) || ($('input#laboral_anio_inicio').val() > 2009) || ($('input#laboral_anio_inicio').val() < 1920)) {
				alert('Debes ingresar una AÑO DE INICIO DE TRABAJO válido');
				return false;
			}
			if ((!$('input#laboral_anio_termino').val().is_number()) || ($('input#laboral_anio_termino').val() > 2009) || ($('input#laboral_anio_termino').val() < 1920)) {
				alert('Debes ingresar una AÑO DE TERMINO DE TRABAJO válido');
				return false;
			}
		}
				
		//------------
		if (($('select#disp_hora1_viernes').val() == '0') && ($('select#disp_hora2_viernes').val() == '0') && ($('select#disp_hora1_sabado').val() == '0') && ($('select#disp_hora2_sabado').val() == '0') && ($('select#disp_hora1_domingo').val() == '0') && ($('select#disp_hora2_domingo').val() == '0')) {
			alert('Debes seleccionar algún horario para trabajar');
			return false;
		}

		if ($('input#laboral_lugar').val() == init['laboral_lugar']) $('input#laboral_lugar').val('')
		if ($('input#laboral_cargo').val() == init['laboral_cargo']) $('input#laboral_cargo').val('')
		if ($('input#laboral_lugar').val() == init['laboral_anio_inicio']) $('input#laboral_anio_inicio').val('')
		if ($('input#laboral_anio_inicio').val() == init['laboral_anio_inicio']) $('input#laboral_anio_inicio').val('')
		if ($('input#laboral_anio_termino').val() == init['laboral_anio_termino']) $('input#laboral_anio_termino').val('')
		if ($('textarea#laboral_detalle').val() == init['laboral_detalle']) $('textarea#laboral_detalle').val('')

		alert('Gracias por ingresar tus datos.\nTe contactaremos prontamente');
	});
	
	$.region('select#personal_region', 'select#personal_comuna');
});
