var jsonFile="http://www.efectibono.pe/select.php";
var jsonFileLocales="http://www.efectibono.pe/locales.php";
var jsonLogin="http://www.efectibono.pe/searchCS.php";
var jsonAfiliados="http://www.efectibono.pe/suggest.php";
var jsonMail="http://www.efectibono.pe/contacto.php";
var loadingGif='<img src="http://www.efectibono.pe/images/loading.gif" width="20" height="20px" id="loading">';
var jsonTarjeta="http://www.efectibono.pe/verSaldos.php";
var urlClub="http://www.efectibono.pe/club/";
var urlImg="http://www.efectibono.pe/images/"

function cargaAfiliados(){
	var resultados = '[{}]';
	$.get(jsonAfiliados,{},function(data){
		listaAfiliados = data;
		$('#nombre').jsonSuggest(listaAfiliados,{maxResults:10, minCharacters: 2});
		arreglaIE6();
	},'json');
}


function cargaSearch(){
	//Populate search selects
	var cate=$('#categoria');
	var depa=$('#departamento');
	var prov=$('#provincia');
	var dist=$('#distrito');
	
	//Obtener la lista de categorías
	$.getJSON(jsonFile,{cates:0}, function(j){
    var options = '';
    for (var i = 0; i < j.length; i++) {
      options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
    }
    $('#categoria').html(options);
  });
	
	//al cargar, solo tenemos un elemento en departamento... cargar el resto de departamentos
	
	var elementos=depa.children();
	if(elementos.length == 1){
		//Cargar departamentos
		$.getJSON(jsonFile,{}, function(j){
      var options = '';
      for (var i = 0; i < j.length; i++) {
        options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
      }
      $('#departamento').html(options);
    });
  }
	
	cate.change(searchCate);
	depa.change(searchPop);
	prov.change(searchPop);

}

function searchCate(){
	//Llenar departamento, provincia y distrito (hasta el nivel que esté) con los nuevos valores de categoria
	var cate=$('#categoria');
	var depa=$('#departamento');
	var prov=$('#provincia');
	var dist=$('#distrito');
//alert("Search Cate");
	var depaV=depa.val();
	var provV=prov.val();
	var distV=dist.val();
	
	llenaDepartamento(cate.val());
	
	if(provV != 0) { 
		llenaProvincias(depaV, cate.val());
	}
	if(distV != 0) {
		llenaDistritos(provV,cate.val());
	}
	
	
	
}


function searchPop(){
	var cate=$('#categoria');
	var depa=$('#departamento');
	var prov=$('#provincia');
	var dist=$('#distrito');
	var quien = this.name;
	
	if(quien == "departamento"){
		//He cambiado de departamento, tengo que llenar las provincias... 
		llenaProvincias($(this).val(), cate.val());
	}else if(quien == "provincia"){
		llenaDistritos($(this).val(), cate.val());
	}
	

}

function llenaDepartamento(cat){
	$('#departamento').html('<option value=0>Cargando...</option>');
	$.getJSON(jsonFile,{cat: cat}, function(j){
  var options = '';
  for (var i = 0; i < j.length; i++) {
    options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
  }
  $('#departamento').html(options);
 })
 $('#distrito').html('<option value=0>Todos</option>');
 $('#provincia').html('<option value=0>Todos</option>');
}
function llenaProvincias(dept, cat){
	$('#provincia').html('<option value=0>Cargando...</option>');
	$.getJSON(jsonFile,{dep: dept, cat: cat}, function(j){
  var options = '';
  for (var i = 0; i < j.length; i++) {
    options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
  }
  $('#provincia').html(options);
 })
 $('#distrito').html('<option value=0>Todos</option>');
}

function llenaDistritos(prov, cat){
$('#distrito').html('<option value=0>Cargando...</option>');
$.getJSON(jsonFile,{prov: prov, cat: cat}, function(j){
  var options = '';
  for (var i = 0; i < j.length; i++) {
    options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
  }
  $('#distrito').html(options);
 })
	
}

function listaLocales(afiliado, distrito, provincia, departamento){
	//abrir el div que corresponde, y poner la img de pensando
	var elDiv = $('#afil-' + afiliado + ' div.locales');
	if(elDiv.html()==""){
		elDiv.html("cargando...");
		$.getJSON(jsonFileLocales,{afil: afiliado, dis: distrito, prov: provincia, dep: departamento}, function(j){
	  var options = '';
	  for (var i = 0; i < j.length; i++) {
	    options += '<div class="local">' + j[i].direccion + "<br>";
		if(j[i].distrito!="Todos"){
			options += j[i].distrito + ' - '; 
		} 
		options +=  j[i].provincia + ' - ' + j[i].departamento + '</div>';
	  }
	  elDiv.html(options);
	 });
	}else{
		elDiv.html("");
	}
	
}


function preparaValidar(){
	var form=$('#liveForm fieldset');
	form.children().each(function(){
		if(this.name){
			if($(this).attr("validate")){
				$(this).attr("valid",false);
				$(this).blur(function(){
					var valido = validateField(this,$(this).attr("validate"));
					if(valido){
						$(this).removeClass("error");
						$(this).attr("valid",true);
					}else{
						$(this).addClass("error");
						$(this).attr("valid",false);
					}
					var formValido=formValid();
					if(!formValido){
						$('#botnPrograme').attr("disabled",true);	
					}else{
						$('#botnPrograme').attr("disabled", false);	
					}
				});
			}
		}
	});
	$('#botnPrograme').click(function(){
		submitForm();
	});
		
	$('#botnPrograme').attr("disabled",true);	
}

function submitForm(){
	//validar que todos los campos esten ok
	var form = $('#liveForm>fieldset');
	var formValido=true;
	form.children().each(function(){
		if(this.name){
			//alert(this.tagName + " - " + this.name + "- " + $(this).attr("validate"));
			if($(this).attr("validate")){
				var valido = validateField(this,$(this).attr("validate"));
				formValido = formValido && valido;
			}
		}
	});
	//enviar el form... AJAX!
	if(formValido){
		//Preparar los datos
		var data=$('#liveForm').serialize();
		$('#liveForm').hide();
		
		//Poner el ajax sign
		$('#form').append('<p id="loading">' + loadingGif + '</p>');
		
		$.post(jsonMail,data,function(data){
			mensaje = data[0].mensaje;
			$('#loading').hide();
			if(mensaje!='OK'){
				$('#liveForm').show();
				form.prepend('<p class="obligat">Por favor, verifique, han ocurrido errores</p>');
			}else{
				$('#form').html('<p>Gracias por su mensaje. Muy pronto nos pondremos en contacto.</p>');
			}
		},'json');
		
	}
	
}

function validateField(quien, como){
switch(como){
	case 'value':
		if(quien.value==""){
			return false;
		}else{
			return true;
		}
		break;
		
	case 'text':
		if(quien.value.length==0){
			return false;
		}else{
			return true;
		}
		break;
	
	case 'email':
		var reg = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
		if(reg.test(quien.value) == false) {
			return false;
		}else{
			return true;
		}
		break;
	}
return false;
}

function formValid(){
	var form = $('#liveForm > fieldset');
	allOk=true;
	/*form.children().each(function(){
		if(this.name){
			//alert(this.tagName + " - " + this.name + "- " + $(this).attr("validate"));
			if($(this).attr("validate")){
					validateField(this,$(this).attr("validate"));
					if($(this).attr("valid")=="false"){
						alert(this.name);
						allOk=false;
					}
			}
		}
	});*/
	return allOk;
}