//var site_url='http://localhost/proyectos/coaczaragoza/index.php';
var site_url='http://www.coacaragon.com';
//clase orden solo numeros
$(function() {
	$('.orden').numeric();
});
//clase precio, solo numeros con comas
$(function() {
	$('.precio').numeric({allow:","});
});

function confirmaMensaje(mensaje,url){
	resultado=confirm(mensaje);
	if (resultado==true){					
		document.location.href= site_url+'/'+url;
		return false;
	}
}

function guardaGruposSocios() {
	var indice = document.formsocio.categoria_id.selectedIndex;
	var grupo = document.formsocio.categoria_id.options[indice].value;
	var grupo_nombre = document.formsocio.categoria_id.options[indice].text;

	var ni = document.getElementById('mostrar_grupos');
	var numi = document.getElementById('theValue');
	// miramos si tenemos la fecha ya insertada para evitar ponerla de nuevo
	var guardamos = true;

	var olddiv = document.getElementById('my' + grupo + 'Div');
	if (olddiv != null) {
		guardamos = false;
	}

	if (guardamos == true) {
		var num = document.getElementById('theValue').value - 1 + 2;
		numi.value = num;
		
		var newdiv = document.createElement('div');
		var divIdName = 'my' + grupo + 'Div';
		newdiv.setAttribute('id', divIdName);
		newdiv.innerHTML = '<input type="hidden" id="grupo_id[' + grupo
				+ ']" name="grupo_id[' + grupo + ']" value="' + grupo + '">'
				+ ' <a href=\'#\' class=\'borrar\' onclick=\'removeGruposDiv("'
				+ divIdName + '")\'>Eliminar</a>&nbsp;'
				+ grupo_nombre;
		ni.appendChild(newdiv);
	}
}
function removeGruposDiv(divNum) {
	var d = document.getElementById('mostrar_grupos');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}
function cargaCCAA(valor){
	var id=valor;
	//cargamos la ccaa de la provincia
	$.ajax({
		type: "GET",
		url: site_url+'/ajax/provincia_ajax/ccaa/'+id,
		success: function(msg){
			var i;
			var seleccionada;
			for (i = 0; i < document.fOferta.ccaa_id.length; i++) {
				if(document.fOferta.ccaa_id[i].value==msg){
					seleccionada = i;
					break;
				}
			}
			document.fOferta.ccaa_id[seleccionada].selected = true;

		},
		error: function(msg){
		}
	});	
}
function cargaCuota(valor){
	var id=valor;
	//cargamos la ccaa de la provincia
	$.ajax({
		type: "GET",
		url: site_url+'/ajax/zona_ajax/cuota_zona/'+id,
		success: function(msg){
		
		document.fOferta.cuota.value = msg;
		
	},
	error: function(msg){
	}
	});	
}

function str_replace(search, replace, subject) {
    var f = search, r = replace, s = subject;
    var ra = r instanceof Array, sa = s instanceof Array, f = [].concat(f), r = [].concat(r), i = (s = [].concat(s)).length;
 
    while (j = 0, i--) {
        if (s[i]) {
            while (s[i] = s[i].split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){};
        }
    };
 
    return sa ? s : s[0];
}

//Retorna: 1 = NIF ok, 2 = CIF ok, 3 = NIE ok, -1 = NIF error, -2 = CIF error, -3 = NIE error, 0 = ??? error
function valida_nif_cif_nie(a) 
{
	var temp=a.toUpperCase();
	var cadenadni="TRWAGMYFPDXBNJZSQVHLCKE";
 	if (temp!==''){
		//si no tiene un formato valido devuelve error
		if ((!/^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$/.test(temp) && !/^[T]{1}[A-Z0-9]{8}$/.test(temp)) && !/^[0-9]{8}[A-Z]{1}$/.test(temp))
		{
			return 0;
		}
 
		//comprobacion de NIFs estandar
		if (/^[0-9]{8}[A-Z]{1}$/.test(temp))
		{
			posicion = a.substring(8,0) % 23;
			letra = cadenadni.charAt(posicion);
			var letradni=temp.charAt(8);
			
			if (letra == letradni)
			{
			   	return 1;
			}
			else
			{
				return -1;
			}
		}
 
		//algoritmo para comprobacion de codigos tipo CIF
		suma = parseInt(a[2])+parseInt(a[4])+parseInt(a[6]);
		for (i = 1; i < 8; i += 2)
		{
			temp1 = 2 * parseInt(a[i]);
			temp1 += '';
			temp1 = temp1.substring(0,1);
			temp2 = 2 * parseInt(a[i]);
			temp2 += '';
			temp2 = temp2.substring(1,2);
			if (temp2 == '')
			{
				temp2 = '0';
			}
 
			suma += (parseInt(temp1) + parseInt(temp2));
		}
		suma += '';
		n = 10 - parseInt(suma.substring(suma.length-1, suma.length));
 
		//comprobacion de NIFs especiales (se calculan como CIFs)
		if (/^[KLM]{1}/.test(temp))
		{
			if (temp.charAt(8) == String.fromCharCode(64 + n))
			{
				return 1;
			}
			else
			{
				return -1;
			}
		}
 
		//comprobacion de CIFs
		if (/^[ABCDEFGHJNPQRSUVW]{1}/.test(temp))
		{
			//temp = n + '';
			if (temp.charAt(8) == String.fromCharCode(64 + n) || temp.charAt(8) == parseInt(temp.substring(temp.length-1, temp.length)))
			{
				return 2;
			}
			else
			{
				return -2;
			}
		}
 
		//comprobacion de NIEs
		//T
		if (/^[T]{1}/.test(temp))
		{
			if (temp.charAt(8) == /^[T]{1}[A-Z0-9]{8}$/.test(temp))
			{
				return 3;
			}
			else
			{
				return -3;
			}
		}
 
		//XYZ
		if (/^[XYZ]{1}/.test(temp))
		{
			pos = str_replace(['X', 'Y', 'Z'], ['0','1','2'], temp).substring(0, 8) % 23;
			if (temp.charAt(8) == cadenadni.substring(pos, pos + 1))
			{
				return 3;
			}
			else
			{
				return -3;
			}
		}
	}
 
	return 0;
}

function activarCategoria(id,objeto){
	// controlar el checkbox
	$.ajax({
		type: "GET",
		url: site_url+'/ajax/minisite_ajax/actualizarEstado/'+id,
		success: function(msg){
		// si ha ido mal mostramos el mensaje, sino lo dejamos como esta
		if(msg=='KO'){
			if(objeto.checked==true)
				objeto.checked=false;
			else
				objeto.checked=true;
			
			alert("Se ha producido un error al actualizar el estado.");
		}
	},
	error: function(msg){
		if(objeto.checked==true)
			objeto.checked=false;
		else
			objeto.checked=true;
		
		alert("Se ha producido un error al actualizar el estado.");
		
	}
	});	
}
//modificar el orden de las categorias de tipo seleccionado, zona
function modificaOrden(objeto,orden_ant, categoria) {

	if (confirm('¿Está seguro que quiere actualizar el orden de todas los contenidos?')) {
		var url=site_url+'/editar_minisite/actualizarOrdenContenido/'+categoria+'/'+objeto.value;
		window.location.href = url;
	} else {
		objeto.value = orden_ant;
	}
}

function confirma(pregunta, url, objeto) {
	if (confirm(pregunta)) {
		window.location.href = url;
	} else {
		objeto.checked = false;
	}
}
function validarNumCuentaBlur(objeto) {
	var numeroCuenta = objeto;
	if(numeroCuenta != ''){
		banco = numeroCuenta.substr(0,4);
		sucursal = numeroCuenta.substr(4,4);
		dc = numeroCuenta.substr(8,2);
		cuenta = numeroCuenta.substr(10,10);
	  if ((banco == ""  || sucursal == "" ||
	      dc == "" || cuenta == "") || ((banco == '0000') && (sucursal == '0000') && (dc == '00') && (cuenta == '0000000000'))){
		  //	alert("Por favor, introduzca los datos de su cuenta");
		  //	objeto.value = '';
		  return false;
	  }else {
	    if (banco.length != 4 || sucursal.length != 4 ||
	        dc.length != 2 || cuenta.length != 10){
	    	//alert("Por favor, introduzca correctamente los datos de su cuenta;" + " no están completos");
	    	return false;
	    }else {
	      if (!numerico(banco) || !numerico(sucursal) || !numerico(dc) || !numerico(cuenta)){
	    	  //alert("Por favor, introduzca correctamente los datos de su "+ "cuenta; no son numericos");
	    	  return false;
	      }else {
	        if (!(obtenerDigito("00" + banco + sucursal) ==
	              parseInt(dc.charAt(0))) || 
	            !(obtenerDigito(cuenta) ==
	              parseInt(dc.charAt(1)))){
	        	// alert("Los dígitos de control no se corresponden con los
				// demás"
	           // + " números de la cuenta");
	        	//alert('El Número de Cuenta introducido no es correcto.');
	        	return false;
	        }  else {//alert ("CCC correcto");
	        	return true;
	        	
	        }
	      }
	    }
	  }
  }
}
function numerico(valor){
	  cad = valor.toString();
	  for (var i=0; i<cad.length; i++) {
	    var caracter = cad.charAt(i);
		if (caracter<"0" || caracter>"9") {
			return false;
		}
	  }
	  return true;
	}
function obtenerDigito(valor){
  valores = new Array(1, 2, 4, 8, 5, 10, 9, 7, 3, 6);
  control = 0;
  for (i=0; i<=9; i++) {control += parseInt(valor.charAt(i)) * valores[i];}
  control = 11 - (control % 11);
  if (control == 11){control = 0;}else if (control == 10){control = 1;}
  return control;
}

