	// JavaScript Document

var preguntaText;
var pregunta_index;
var virtual_keyboard;
var no;
var no2;
var si;
var form_list = ['#nombre', '#e-mail', '#codigo', '#documento'];
var tempText;
var formIndex;
var nombre;
var espacio;
var largo;
var mail;
var codigo
var doc;
var corte;
var corteLargo;

function Cuestionario(){
	
	formIndex = new Array();
	
	this.outsideIndex = newIndex;
	
	si = $('#si');
	no	= $('#no');
	
		
	preguntaText = $('#cuestionario #p1').html();
	
	pregunta(preguntaText);
	
	mouseHandlers();
}
function newIndex(index){
	formIndex = [];

	$('#formulario div').css('display','none');
	pregunta_index = index;
	transition_anim();
}
function mouseHandlers(){
	
	$('#no').click(function(){
		if(pregunta_index == 2){
			newIndex(0);
			transition.inicio();
		}
		if(pregunta_index == 3 || pregunta_index > 7){
			changeID($('#si'),"si2",si);
		}
		if(pregunta_index == 4 || pregunta_index > 7){
			changeID($('#no2'),"no", no);
		}else{
			changeID($('#no'),"no2", no2);
			$("#no2").unbind();
		}
		
		if(pregunta_index == 1 || pregunta_index == 3 || pregunta_index == 5 || pregunta_index == 6){
			openPopUp('Si quieres continuar debes completar el campo: ', "formMesaje");
			virtual_keyboard.reset_text();
		}	
		
		switch(pregunta_index){
		case 4:
			pregunta_index = 8;
			transition_anim();
		break;
		case 8:
			pregunta_index = 9
			transition_anim();
		break;
		case 9:
			pregunta_index = 14;
			transition_anim();
		break;
		case 10:
			pregunta_index = 14;
			transition_anim();
		break;
		case 19:
			pregunta_index = 14;
			transition_anim();
		break;
		}
		
	});
	
	si.click(function(){
		espacio = "";
		largo = "";
		if(pregunta_index > 7){
			changeID($('#si'),"si2",si);
			changeID($('#no2'),"no", no2);
		}else{
			changeID($('#si2'),"si",si);
			changeID($('#no'),"no2", no2);
		}
        if(pregunta_index == 7){
            $('#si').unbind();
            $('#si').css('opacity', .5);
        }
		if(pregunta_index == 1 || pregunta_index == 3 || pregunta_index == 5 || pregunta_index == 6){
			switch(pregunta_index){
				case 1:
					formIndex.push($("#name").val());
					nombre = formIndex[0];
					
					//validate name & surname
					if($('input').val() == ''){
						openPopUp('Debes completar el campo: ', "formMesaje");
					}else if(!isValidName(nombre)){
						openPopUp('No has ingresado tu Apellido ', "");
						formIndex.pop();
						virtual_keyboard.reset_text();
					}else{
						transition_anim();
						pregunta_index++;
					}
				break;
				case 3:	
					formIndex.push($("#email").val());
					mail = formIndex[1];
					if($('input').val() == ''){
						openPopUp('Debes completar el campo: ', "formMesaje");
					}else if(!isValidEmailAddress(mail)){
						openPopUp('El e-mail no es valido', "");
						virtual_keyboard.reset_text();
						formIndex.pop();
					}else{
						changeID($('#si'),"si2",si);
						changeID($('#no2'),"no", no2);
						transition_anim();
						pregunta_index++;
					}
				break;
				case 5:
					formIndex.push($("#code").val());
					codigo = formIndex[2];
					if($('input').val() == ''){
						openPopUp('Debes completar el campo: ', "formMesaje");
					}else if(codigo.length <= 4){
						openPopUp('El codigo deve tener al menos 5 caracteres', "");
						virtual_keyboard.reset_text();
						formIndex.pop();
					}else{
						transition_anim();
						pregunta_index++;
					}
				break;
				case 6:
					formIndex.push($("#dni").val());
					doc = formIndex[3];
					if($('input').val() == ''){
						openPopUp('Debes completar el campo: ', "formMesaje");
					} else if(doc.length != 8 || !isValidDoc(doc)){
						openPopUp('El dni es incorrecto, intente nuevamente!<br />Recuerde no poner los puntos.', "");
						virtual_keyboard.reset_text();
						formIndex.pop();
					}else{
						transition_anim();
						pregunta_index++;
					}
				break;
			}
		}else{
			
			transition_anim();	
			pregunta_index++;
		}
		
	});
}
function transition_anim(){
	si.unbind();
	no.unbind();
	$("#cuadro-invocacion-fondo #pregunta").animate({opacity:0}, 400, changePregunta);	
}
function pregunta(target_text){
	$("#cuadro-invocacion-fondo #preguntaText").empty();	
	$("#cuadro-invocacion-fondo #preguntaText").append(target_text);	
}
function changePregunta(){
	
	//$("#cuadro-invocacion-fondo .pregunta").empty();	
	virtual_keyboard.reset_text();
	
	preguntaText = $('#cuestionario #p'+ pregunta_index).html();
	if(pregunta_index == 12 || pregunta_index == 13 || pregunta_index == 14){
		preguntaText = $('#cuestionario #p'+ pregunta_index).text();
		openPopUp(preguntaText, "mesaje"); 	
	}else{
		pregunta(preguntaText);	
		$("#cuadro-invocacion-fondo #pregunta").animate({opacity:1}, 400, mouseHandlers);
	}	
	addForm();
}
function addForm(){
	virtual_keyboard.reset_text();
	$('#formulario div').css('display','none');
	
	nombre = $("#name").val();
	email = $("#e-mail").val();
	codigo = $("#code").val();		
	dni = $("#dni").val();
	
	
	switch(pregunta_index){
		case 1:
			$("#nombre").css('display','block');
			tempText = $(form_list[0]).text();
		break;
		case 3:	
			$("#e-mail").css('display','block');
			tempText = $(form_list[1]).text();
		break;
		case 5:
			$("#codigo").css('display','block');
			tempText = $(form_list[2]).text();
		break;
		case 6:
			$("#documento").css('display','block');
			tempText = $(form_list[3]).text();
		break;
		case 7:
            
			/// send the data ///
			var dataString = 'name='+ formIndex[0] + '&email=' + formIndex[1] + '&code=' + formIndex[2] + '&dni=' + formIndex[3];  
			//alert (dataString);return false;  
			$.ajax({  
			  type: "POST",  
			  url: "include/save.php",  
			  data: dataString,  
			  success: function(data) {
                  transition.final();    
			  },
              error:function(data){
                  openPopUp('Ha ocurrido un error!<br />Intente nuevamente en un rato.', ""); 
              }  
			});  
			
			return false; 
			////////////////////
			 transition.showFinal();
		break;	
	}	
}
function openPopUp(texto, tipo){
	$('#popUp').empty();
	$('#popUp').append('<div id="cerrar"><p>X</p></div>');
	if(tipo == "formMesaje"){
		$('#popUp').append('<h2>'+ texto+'<br />'+tempText +'</h2>'); 
	}else{
		$('#popUp').append('<h2>'+texto+'</h2>');
	}
	
	$('#cerrar').click(cerrarPopUp);
	
	$('#modal').css('display', 'block');
	$('#popUp').css('display', 'block');
	$('#modal').animate({opacity: 1}, 300);
	$('#popUp').animate({opacity: 1}, 300);
}
function cerrarPopUp(){
	//limpio form
	$(":text").each(function(){	
			$($(this)).val('');
	});
	//
	$('#modal').animate({opacity: 0}, 300);
	$('#popUp').animate({opacity: 0}, 300, function(){
		$('#modal').css('display', 'none');
		$('#popUp').css('display', 'none');
		if(pregunta_index == 7 || pregunta_index == 12 || pregunta_index == 13 || pregunta_index == 14){
			newIndex(0);
			transition.inicio();
		}	
	});
}
// utils 

function changeID(target, newID, variable){
	$(target).attr('id', newID);
	variable = $(target);
}
function isValidName(name){
	
	corte = "";
	corte = name.split(' ');
	
	//alert("valid?"+corte.length)
	if(corte.length > 1 && corte[1].length > 0){	
		return true;
	}else{
		formIndex.pop();
		return false;	
	}
}
function isValidEmailAddress(emailAddress) {
	var x= emailAddress;
	var atpos= x.indexOf("@");
	var dotpos= x.lastIndexOf(".");
	if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){
	  return false;
	}else{
		return true;	
	}
};
function isValidDoc(doc){
	if(IsNumeric(doc) && doc.length == 8){
		return true;	
	}else{
		return false;
	}
}
function IsNumeric(input) { 
   return (input - 0) == input && input.length > 0; 
} 


