var pagw = 637;
var pagh = 364;
var pagh2 = 286;
var pagh3 = 376;
var xmlHttp;
var debug = false;
var fulldebug = false;
var sent = false;
var data; // inicializa los campos que van a ser parceados
var redireccion; // inicializa redireccion por si se pide del post
var loadingMsg ;
var sendingMsg ;
var successMsg ;
var badMsg ;
var root = "/";
// ----------------- AJAX ------------------- //

function GetXmlHttpObject(){var xmlHttp=null;try{xmlHttp=new XMLHttpRequest();}catch(e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}}return xmlHttp;}

///////////////////// VALIDAR ////////////////////////

function validar(campos,mode,url,$idioma,up,id){

	//Mensajes en espanol-ingles-portugues para el Newsleter
	if(mode=='newsletter'){
		if($idioma == 'es'){successMsg = "Gracias por suscribirse!"; loadingMsg = "Cargando..."; sendingMsg = "";badMsg ="Verifique los campos en rojo";} 
		if($idioma == 'en'){successMsg = "Thank you for subscribing!"; loadingMsg = "Loading..."; sendingMsg = "";badMsg = "Verify the red-highlighted fields.";}
		if($idioma == 'po'){successMsg = "Thank you for subscribing!"; loadingMsg = "Carregando..."; badMsg = "Confira os campos marcados de vermelho";sendingMsg = "";}
	};
	
	//Mensajes en espanol-ingles-portugues para el Registro
	if(mode=='registro' || mode=='update_registro'){
		if($idioma == 'es'){successMsg = "Se completo el registro."; loadingMsg = "Cargando..."; badMsg = "Verificar los campos en rojo"; sendingMsg ="";}
		if($idioma == 'en'){successMsg = "The registration was successfully completed."; loadingMsg = "Loading..."; badMsg = "Verify the red-highlighted fields."; sendingMsg ="";}
		if($idioma == 'po'){successMsg = "O cadastro foi corretamente completado."; loadingMsg = "Carregando..."; badMsg = "Confira os campos marcados de vermelho"; sendingMsg ="";}
	};
	
	//Mensajes en espanol-ingles-portugues para el Recuperar el password
	if(mode=='recupera_password'){
		if($idioma == 'es'){successMsg = "Verifique la nueva contraseņa en su casilla de correo."; loadingMsg = "Cargando..."; sendingMsg = ""; badMsg ="Verifique los campos en rojo";}
		if($idioma == 'en'){successMsg = "Verify the new password in your e-mail box."; loadingMsg = "Loading..."; sendingMsg = ""; badMsg ="Verify the red-highlighted fields.";}
		if($idioma == 'po'){ successMsg = "Confira sua nova senha em sua caixa de correio."; loadingMsg = "Carregando..."; sendingMsg = ""; badMsg ="Confira os campos marcados de vermelho";}
	};
	
	//Mensajes en espanol-ingles-portugues para Contacto
	if(mode =='contacto'){
	if($idioma == 'es'){successMsg = "Consulta registrada"; loadingMsg ="Cargando..."; badMsg = "Verificar los campos en rojo"; sendingMsg ="";}
	if($idioma == 'en'){successMsg = "Message sent."; loadingMsg = "Loading..."; badMsg = "Verify the red-highlighted fields.";sendingMsg = "";}
	if($idioma == 'po'){successMsg = "Mensagem enviada."; loadingMsg = "Carregando..."; badMsg = "Confira os campos marcados de vermelho"; sendingMsg ="";}
	};
			
	if(sent) return false;
	popup(loadingMsg,'hold','no');
	xmlHttp=GetXmlHttpObject();
	
	if (xmlHttp==null){
		alert ('Tu explorador no soporta AJAX.');
		return;
	} 
	
	if(url) {
	redireccion = url;
	}else {
	redireccion = 0;
	}
		
	data = document.getElementById(campos).value;
	data = data.split(',');
	var params = parseParams(data);
	
	xmlHttp.onreadystatechange = doValidar;
	xmlHttp.open("POST",root+'validate.php?idioma='+$idioma+'&mode='+mode+'&id='+id,true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.setRequestHeader("Content-length",params.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(params);
	
}

function doValidar(){ 

var errores = 0;

	if (xmlHttp.readyState==4){
	
		//$('html, body').animate({scrollTop:0}, 1500);

		var r = xmlHttp.responseText;

		// debug
		if(debug == true) alert(r);
		//if(debug == true && redireccion!=0) alert('redireccionar a la url: '+redireccion+' si es que todos los campos estan validados.');
		
		var x = 0;
		var f = new Array();
		
		for(i in data){
			f[x] = r.substr(x,1);
			
			// fulldebug
			if(fulldebug == true) alert('campo numero:'+f[x]);
			validate(f[x],data[i]);
			x++;
		}
		
		for(i in f){
			if(f[i] == '0') errores++;
		}
		
		// fulldebug
		if(fulldebug == true) alert('errores='+errores);
				
		if(errores > 0){
			popup(badMsg,'fade','no');
		}else{
			sent = true;
			popup(sendingMsg,'hold','no');
			popup(successMsg,'fade','no');
			//if(redireccion!=0) redir(redireccion,5000);
		}
	
	}

}

///////////////////// POPUP ////////////////////////

function popup(msg,unblock,red){
if(unblock=='click') msg = msg + ' (Click para continuar) ';
$.blockUI({ 
message: msg.replace(/\n/gi,'<br/>'),
css: {
border:'none', padding:'15px', size:'12.0pt',
backgroundColor:'#900', color:'#fff',
opacity:'.8','-webkit-border-radius': '10px','-moz-border-radius': '10px'
}
});
if(unblock=='hold'){
// algo adicional para el holding
}
if(unblock=='fade'){
window.setTimeout($.unblockUI, 2000);
//$(document).bind('click', function() {
//window.setTimeout($.unblockUI, 1);
//if(red=='si' && unblock!='hold') redir('',100);
//});
if(red=='si' && unblock!='hold') redir('',2500);
}
if(unblock=='click'){
$(document).bind('click', function() {
window.setTimeout($.unblockUI, 1);
redir('',500);
});
if(red=='si' && unblock!='hold' && unblock!='click') redir('',500);
}
}

////////////////// COLOREA CAMPOS ///////////////////////////

// validate estilo de campos
function validate(status,id){
if(status == 0){
$("#"+id).css('color','red');
if(id=='email_sus') {
$("#"+id).css('border','1px solid red');
}else {
$("#"+id).css('border','2px solid red');
}
}else{
$("#"+id).css('color','green');
if(id=='email_sus') {
$("#"+id).css('border','2px solid #FFCC00');
}else {
$("#"+id).css('border','2px solid #FFCC00');
}
}
}

//////////////////// PARSER /////////////////////////

// parser
function parseParams(params){
var contenedor = '';
for(var contar in params){
var type = gettype(params[contar]);
if(type == 'checkbox' || type == 'radio'){
contenedor += params[contar]+'='+getcheck(params[contar])+'&';
}else if(type == 'select-multiple'){
contenedor += params[contar]+'='+getMultiple(params[contar])+'&';
}else{
contenedor += params[contar]+'='+escape(getval(params[contar]))+'&';
}
}
return contenedor.substr(0,contenedor.length-1);
}

// Get And Sets
function setval(id,val){
document.getElementById(id).value = val;
}
function getval(id){
return document.getElementById(id).value;
}
function getcheck(id){
return document.getElementById(id).checked;
}
function gettype(id){
return document.getElementById(id).type;
}
function getMultiple(ob){
ob = document.getElementById(ob);
selected = new Array();
for(var i = 0; i < ob.options.length; i++) if(ob.options[i].selected) selected.push(ob.options[i].value);
return selected;
}

///////////////// REDIR ////////////////////////////

// redir
function redir(url,timeout){
	setTimeout('doRedir(\''+url+'\')',timeout);
}
// do redir
function doRedir(url){
	window.location = url;
}

//---------------------------

$(function(){
	$('#agregar_idioma').click(function(e){
		e.preventDefault();
		$('.idioma:first').clone().insertBefore('#agregar_idioma').addClass('nuevo').find('input').val('');
	});
	
	$("a[rel^='prettyPhoto']").prettyPhoto({
		theme:'dark_square'
	});
	
	$('.eliminar_idioma').live('click',function(e){
		e.preventDefault();
		$(this).parent().remove();
	});
	
	$('#slide a').hover(function(){
		$(this).css({opacity:0.6});
	},function(){
		$(this).css({opacity:1});
	});

	$('#submit_rrhh').click(function(e){
		e.preventDefault();
		popup('Enviando...','hold','no');
		var data = $('#form_rrhh').serialize();
		$.post('validate.php',data,function(r){
			var campos = r.split(';');
			var error = false;
			for(i in campos){
				var campo = campos[i].split(':');
				if(campo[0].substr(0,6) == 'idioma'){
					var numero_idioma = campo[0].substr(6,1);
					if(campo[1] == '0'){
						error = true;
						$('.idioma:eq('+numero_idioma+') .input_text').css('border','2px solid red');
					}else{
						$('.idioma:eq('+numero_idioma+') .input_text').css('border','2px solid #FFCC00');
					}
				}else{
					validate(campo[1],campo[0]);
					if(campo[1] == '0') error = true;
				}
			}
			if(error){
				popup('Verifique los campos marcados en rojos','fade','no');
			}else{
				popup('Formulario enviado con exito','fade','no');
			}
			
		});
	});
	
	$('#fecha_nac').datepicker({ dateFormat: 'yy-mm-dd', changeYear: true , changeMonth: true , yearRange: '1900:2010' });
	
	$('.slidebtn li:not(.bp,.bn) a').click(function(e){
		e.preventDefault();
		var pag = $(this).parent().index();
		
		// algor
		var cant = $(this).parent().parent().next().find('ul').children().length;
		if($(this).parent().parent().is('.vertical') || $(this).parent().parent().is('.vertical2')){
			var perPag = 3;
		}else if($(this).parent().parent().is('.vertical3')){
			var perPag = 4;
		}else{
			var perPag = 2;
		}
		
		if(cant < pag*perPag){
			// Tope, pag rara
			var deMas = perPag+(cant-pag*perPag);
			// deMas = 1 en horizontal, 1-2 en vertical
			pag = ((pag-1)*(-1))+1-(deMas/perPag);
		}else{
			// No tope, pag comun
			pag = ((pag-1)*(-1));
		}
		
		// Animar
		if($(this).parent().parent().is('.vertical')){
			pag = pag*pagh;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical2')){
			pag = pag*pagh2;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical3')){
			pag = pag*pagh3;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else{
			pag = pag*pagw;
			$(this).parent().parent().next().find('ul').animate({marginLeft:pag});
		}
		
		//  Marcar pagina
		$(this).parent().parent().find('.a').removeClass('a');
		$(this).addClass('a');
	});
	$('.slidebtn li.bp a').click(function(e){
		e.preventDefault();
		
		var pag = $(this).parent().parent().find('.a').parent().index();
		pag = pag-1;
		if(pag == 0) return;
		
		// algor
		var cant = $(this).parent().parent().next().find('ul').children().length;
		if($(this).parent().parent().is('.vertical') || $(this).parent().parent().is('.vertical2')){
			var perPag = 3;
		}else if($(this).parent().parent().is('.vertical3')){
			var perPag = 4;
		}else{
			var perPag = 2;
		}
		
		if(cant < pag*perPag){
			// Tope, pag rara
			var deMas = perPag+(cant-pag*perPag);
			// deMas = 1 en horizontal, 1-2 en vertical
			pag = ((pag-1)*(-1))+1-(deMas/perPag);
		}else{
			// No tope, pag comun
			pag = ((pag-1)*(-1));
		}
		
		// Animar
		if($(this).parent().parent().is('.vertical')){
			pag = pag*pagh;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical2')){
			pag = pag*pagh2;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical3')){
			pag = pag*pagh3;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else{
			pag = pag*pagw;
			$(this).parent().parent().next().find('ul').animate({marginLeft:pag});
		}
		
		//  Marcar pagina
		$(this).parent().parent().find('.a').removeClass('a').parent().prev().find('a').addClass('a');
	});
	$('.slidebtn li.bn a').click(function(e){
		e.preventDefault();
		
		var maxpag = $(this).parent().parent().children().length-2;
		var pag = $(this).parent().parent().find('.a').parent().index();
		pag++;
		if(pag > maxpag) return;
		
		// algor
		var cant = $(this).parent().parent().next().find('ul').children().length;
		if($(this).parent().parent().is('.vertical') || $(this).parent().parent().is('.vertical2')){
			var perPag = 3;
		}else if($(this).parent().parent().is('.vertical3')){
			var perPag = 4;
		}else{
			var perPag = 2;
		}
		
		if(cant < pag*perPag){
			// Tope, pag rara
			var deMas = perPag+(cant-pag*perPag);
			// deMas = 1 en horizontal, 1-2 en vertical
			pag = ((pag-1)*(-1))+1-(deMas/perPag);
		}else{
			// No tope, pag comun
			pag = ((pag-1)*(-1));
		}
		
		// Animar
		if($(this).parent().parent().is('.vertical')){
			pag = pag*pagh;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical2')){
			pag = pag*pagh2;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else if($(this).parent().parent().is('.vertical3')){
			pag = pag*pagh3;
			$(this).parent().parent().next().find('ul').animate({marginTop:pag});
		}else{
			pag = pag*pagw;
			$(this).parent().parent().next().find('ul').animate({marginLeft:pag});
		}
		
		//  Marcar pagina
		$(this).parent().parent().find('.a').removeClass('a').parent().next().find('a').addClass('a');
	});
	
	$(function(){
	$('#slide a img').addClass('visible');
	})
	
	$('#slidewrap').cycle({
	fx:     'fade',
	speed:   1000,
	timeout: 4000,
	prev:   '.anterior',
	next:   '.siguiente',
	pager: '#slide_buttons'
	});

});

///////////////// JSUPLOAD ////////////////////////////

function jsUpload(upload_field) {

    var re_text = /\.doc|\.pdf|\.docx/i;
    if(upload_field.id=='fotoname') re_text = /\.jpg|\.gif|\.png/i;
	var filename = upload_field.value;
	
    /* Checking file type */
    if (filename.search(re_text) == -1) {
        alert("Tipo de archivo no permitido. (.doc .docx .pdf para CV || .jpg .gif .png para FOTOS)");
        upload_field.form.reset();
        return false;
    }
    upload_field.form.submit();
    //upload_field.disabled = true;
    return true;
	
}

