function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
    var arrObjClass = objColl[i].className.split(' ');
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
          arr.push(objColl[i]);
          break comparisonLoop;
        }
      }
    }
  }
  return arr;
}


function redirigir(aaa,bbb){
document.write('<meta http-equiv="refresh" content="' + bbb + ';url=./' + aaa + '">');
}
function contador (campo, cuentacampo, limite) {
if (campo.value.length > limite) campo.value = campo.value.substring(0, limite);
else cuentacampo.value = limite - campo.value.length;
} 
function NoAtras(){
history.go(1)
}


function cierramenu(a,b){ 
var elementos = getElementsByClassName(a);
for (var i = 0, j = elementos.length; i < j; i++) {
elementos[i].className = b;
//elementos[i].innerText = elementos[i].innerText.replace(/^(.*)-(.*)/,'$1+$2');
}
} 
function activamenu(a,b){ 
a.className=b;

//a.innerText = a.innerText.replace(/^(.*)\+(.*)/,'$1-$2');
}

var intval = "";
/*var intval2 = "";*/

function limpia_menu(a,b){ 

clearInterval(intval);

/*clearInterval(intval2);*/

intval = setInterval("cierramenu('" + a + "', '" + b + "')",3000);
/*intval2 = setInterval("cierra2(10000)",3000);*/

} 



function saltaMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}



	function abremenuClass($b){
			var p = document.getElementById($b);
			var u = "auto"; 
			if(p.style.height==u){ u = "18px"; } 
			p.style.height = u;
			p.style.width = h;
	}







//COMPROBACIÓN DE CAMPOS

//tipo nombre
function validaINPUTS(cadena, nombre) {
	if (cadena.length < 3){
		nombre = nombre.replace(/securedsc66/gi,"");
		window.alert("Por favor, escriba un nombre de al menos 3 caracteres en el campo de texto \"" + nombre +"\""); 
		return false; 
	}
}

function validaCAPT(cadena) {
	if (cadena.length==""){ 
		window.alert("Por favor, escriba la respuesta a la pregunta que aparece en la confirmación visual"); 
		return false; 
	}
}


function validaTELEF(cadena, nombre,forzado) {	
	if(!forzado && cadena==""){ return true; }
	if ( !cadena.match(/^[0-9]{2,3}-? ?[0-9]{6,9}$/) ){ 
		window.alert("Por favor, escriba un número de teléfono válido en el campo \"" + nombre +"\""); 
		return false; 
	}
}

function validaMAIL(cadena, nombre,forzado) {	
	nombre = nombre.replace(/securedsc66/gi,"");
	if(!forzado && cadena==""){ return true; }
	if (!cadena.match(/^[a-zA-Z0-9\.\_\-]+\@[a-zA-Z0-9\.\_\-]+\.([\D]{2,4})$/)  ){ 
		window.alert("Por favor, escriba una dirección de correo electrónico válida del tipo minombre@misitio.ext en el campo  \"" + nombre +"\""); 
		return false; 
	}
}

function validaI(form){
	var inputses = form.getElementsByTagName("INPUT");
	
	var n = 0;
	while(inputses[n]){
		if(inputses[n].type=="text"){
			nombresito = inputses[n].name.toLowerCase();	
				if(nombresito== "action"){
					
					if(validaCAPT(inputses[n].value)==false){
								return false;
							}
				
				} else if(nombresito=="nombre"){
					if (inputses[n].value.length<4){ 
						window.alert("Por favor, escriba un nombre de usuario válido mayor de 3 caracteres"); 
						return false; 
					}
				}
		} else if(inputses[n].type=="password"){
			if (inputses[n].value.length!=40){
				if (!inputses[n].value.match(/^[a-zA-Z0-9]{6,13}$/i)){ 
					window.alert("Por favor, escriba una contraseña válida de entre 6 y 13 caracteres"); 
					return false; 
				}
				inputses[n].value = hex_sha1(inputses[n].value);
			}
		
		}
		
		n++;
	}
}
function validaPas(form){
var inputses = form.getElementsByTagName("INPUT");
	var n = 0;
	while(inputses[n]){
		if((inputses[n].type=="password")&&(inputses[n].value!="")){
			inputses[n].value = hex_sha1(inputses[n].value);
		}
	n++;
	}
}


/*
 * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined
 * in FIPS 180-1
 * Version 2.2 Copyright Paul Johnston 2000 - 2009.
 * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
 * Distributed under the BSD License
 * See http://pajhome.org.uk/crypt/md5 for details.
 */
var hexcase=0;var b64pad="";function hex_sha1(a){return rstr2hex(rstr_sha1(str2rstr_utf8(a)))}function hex_hmac_sha1(a,b){return rstr2hex(rstr_hmac_sha1(str2rstr_utf8(a),str2rstr_utf8(b)))}function sha1_vm_test(){return hex_sha1("abc").toLowerCase()=="a9993e364706816aba3e25717850c26c9cd0d89d"}function rstr_sha1(a){return binb2rstr(binb_sha1(rstr2binb(a),a.length*8))}function rstr_hmac_sha1(c,f){var e=rstr2binb(c);if(e.length>16){e=binb_sha1(e,c.length*8)}var a=Array(16),d=Array(16);for(var b=0;b<16;b++){a[b]=e[b]^909522486;d[b]=e[b]^1549556828}var g=binb_sha1(a.concat(rstr2binb(f)),512+f.length*8);return binb2rstr(binb_sha1(d.concat(g),512+160))}function rstr2hex(c){try{hexcase}catch(g){hexcase=0}var f=hexcase?"0123456789ABCDEF":"0123456789abcdef";var b="";var a;for(var d=0;d<c.length;d++){a=c.charCodeAt(d);b+=f.charAt((a>>>4)&15)+f.charAt(a&15)}return b}function str2rstr_utf8(c){var b="";var d=-1;var a,e;while(++d<c.length){a=c.charCodeAt(d);e=d+1<c.length?c.charCodeAt(d+1):0;if(55296<=a&&a<=56319&&56320<=e&&e<=57343){a=65536+((a&1023)<<10)+(e&1023);d++}if(a<=127){b+=String.fromCharCode(a)}else{if(a<=2047){b+=String.fromCharCode(192|((a>>>6)&31),128|(a&63))}else{if(a<=65535){b+=String.fromCharCode(224|((a>>>12)&15),128|((a>>>6)&63),128|(a&63))}else{if(a<=2097151){b+=String.fromCharCode(240|((a>>>18)&7),128|((a>>>12)&63),128|((a>>>6)&63),128|(a&63))}}}}}return b}function rstr2binb(b){var a=Array(b.length>>2);for(var c=0;c<a.length;c++){a[c]=0}for(var c=0;c<b.length*8;c+=8){a[c>>5]|=(b.charCodeAt(c/8)&255)<<(24-c%32)}return a}function binb2rstr(b){var a="";for(var c=0;c<b.length*32;c+=8){a+=String.fromCharCode((b[c>>5]>>>(24-c%32))&255)}return a}function binb_sha1(v,o){v[o>>5]|=128<<(24-o%32);v[((o+64>>9)<<4)+15]=o;var y=Array(80);var u=1732584193;var s=-271733879;var r=-1732584194;var q=271733878;var p=-1009589776;for(var l=0;l<v.length;l+=16){var n=u;var m=s;var k=r;var h=q;var f=p;for(var g=0;g<80;g++){if(g<16){y[g]=v[l+g]}else{y[g]=bit_rol(y[g-3]^y[g-8]^y[g-14]^y[g-16],1)}var z=safe_add(safe_add(bit_rol(u,5),sha1_ft(g,s,r,q)),safe_add(safe_add(p,y[g]),sha1_kt(g)));p=q;q=r;r=bit_rol(s,30);s=u;u=z}u=safe_add(u,n);s=safe_add(s,m);r=safe_add(r,k);q=safe_add(q,h);p=safe_add(p,f)}return Array(u,s,r,q,p)}function sha1_ft(e,a,g,f){if(e<20){return(a&g)|((~a)&f)}if(e<40){return a^g^f}if(e<60){return(a&g)|(a&f)|(g&f)}return a^g^f}function sha1_kt(a){return(a<20)?1518500249:(a<40)?1859775393:(a<60)?-1894007588:-899497514}function safe_add(a,d){var c=(a&65535)+(d&65535);var b=(a>>16)+(d>>16)+(c>>16);return(b<<16)|(c&65535)}function bit_rol(a,b){return(a<<b)|(a>>>(32-b))};

function validaRADIOS(formulario, nombre) {	

	var opciones = document.getElementsByName(nombre);
	var okeys = false;
	
	for(i=0;i<opciones.length;i++){
		if(opciones[i].checked){ okeys = true; }
	}
	
	if (!okeys){ 
		window.alert("Por favor, selecciona una de la las opciones en \"" + nombre +"\""); 
		return false; 
	}
}

function validaSELECT(cadena, nombre,forzado) {
	if (cadena==""){ 
		if(forzado){
			window.alert("Por favor, elige una opción en el selector desplegable \"" + nombre +"\""); 
			return false;
		} else {
			if(!window.confirm("¿Seguro que no deseas elegir ninguna opción en el selector desplegable \"" + nombre +"\"? \n Cancela para volver al formulario")){
			return false;	
			}
		}
	}
}


function validaTEXTAREA(cadena, nombre,forzado) {
	nombre = nombre.replace(/securedsc66/gi,"");
	if (cadena.length<20){ 
		if(forzado){
			window.alert("Por favor, escribe un texto con más de 20 caracteres en \"" + nombre +"\""); 
			return false; 
		} else {
			if(!window.confirm("¿Seguro que no deseas eescribir nada más en el campo de texto \"" + nombre +"\"? \n Cancela para volver al formulario")){
			return false;	
			}
		}
	
	} else if (cadena.length>400){ 
		window.alert("Por favor, escribe un texto con no más de 400 caracteres en \"" + nombre +"\""); 
		return false; 
	}
}

//formulario general
//creamos la cadena de envio

function validarForm(formulario) {

	var nueva = "";
	
	//EMPIEZAN LOS INPUTS 
	var telefonos = '|telefono|movil|fijo|celular|';		
	
	var correos = '|e-mail|correo|mail|email|correo-electronico|correoelectronico|';
	
	//var fijos = telefonos + 'nombre|asunto|nombre-completo' + correos;

	var inputses = formulario.getElementsByTagName("INPUT");
	
	var n = 0;
	var nombresito = "";
	
	if(inputses['conformeLOPD']){
	var aceptado = inputses['conformeLOPD'].checked;
	} else {
	var aceptado = true;
	}
	
	
	var radiocampos = new Array();
	
	while(inputses[n]){
	
	nombresito = inputses[n].name.toLowerCase();
	
	if(nombresito.match(/^F\-[.]*/i)){
			var forzado = true; 
			var nombreReal = nombresito.replace(/^F\-([.]*)/i,"$1");
	} else {
			var forzado = false;	
			var nombreReal = nombresito;
	}
			
			if(inputses[n].type=="text"){
			
				if(nombresito== "actioncapt"){
				
							if(validaCAPT(inputses[n].value)==false){
								return false;
							}
					
				} else {
					var nombr = '|' + nombreReal + '|'; 
					
							if(telefonos.indexOf(nombr)!=-1){ 
								
									if(validaTELEF(inputses[n].value, nombreReal,forzado)==false){
										return false;
									}
							
							} else if(correos.indexOf(nombr)!=-1){ 
								
									if(validaMAIL(inputses[n].value, nombreReal,forzado)==false){
										return false;
									}
							
							} else if(forzado){
							
									if(validaINPUTS(inputses[n].value, nombreReal)==false){
										return false;
									}
							}
		
					
				}
			
			
			
			
			} else if(inputses[n].type=="radio"){
				
				if(forzado && radiocampos.indexOf(nombresito)==-1){
				
				radiocampos[radiocampos.length] = nombresito;
				
				}
				
		
				
			}
	n++;
	}
	
	n = 0;
	
	while(radiocampos[n]){
		
		if(validaRADIOS(formulario,radiocampos[n])==false){
								return false;
		}
		
	n++;	
	}
	

	
	

	inputses = formulario.getElementsByTagName("SELECT");
	
	n = 0;
	while(inputses[n]){
		
	nombresito = inputses[n].name.toLowerCase();
	
	if(nombresito.match(/^f\-[.]*/i)){
			var forzado = true; 
			var nombreReal = nombresito.replace(/^f\-([.]*)/i,"$1");
	} else {
			var forzado = false;	
			var nombreReal = nombresito;
	}
		
				
	
	
							if(validaSELECT(inputses[n].options[inputses[n].selectedIndex].text, nombreReal,forzado)==false){
								return false;
							}
		n++;
	}
	
	
	
	
	//EMPIEZAN LOS TEXTAREA
	inputses = formulario.getElementsByTagName("TEXTAREA");
	
	n = 0;
	
	while(inputses[n]){
	
	nombresito = inputses[n].name.toLowerCase();	
		
	if(nombresito.match(/^F\-[.]*/i)){
			var forzado = true; 
			var nombreReal = nombresito.replace(/^F\-([.]*)/i,"$1");
	} else {
			var forzado = false;	
			var nombreReal = nombresito;
	}
		
		
	
	
							if(validaTEXTAREA(inputses[n].value, nombreReal,forzado)==false){
								return false;
							}
		n++;
	}
	

	

	//if(formulario.actionCAPT.text!=   timotkin){ window.alert("Debes introducir correctamente el código de Validación"); return false; }
	
	
	if(!aceptado){
	alert('Para utilizar este recurso antes debes haber leído y aceptado la claúsula de privacidad');	
	return false;
	}
	


return true;
}

//var alertasFull = false;

function clausulas(nombre){
/*if(!alertasFull){
	var selpoint=window.document.selection.createRange();
	selpoint.pasteHTML("<div ID='alertasFull' onclick='clausula_privacidad();'><div ID='alertasFullbox'></div></div>");
	alertasFull = true;
} else {

	alertasFull = false;
}*/
clausula=window.open("./layout/lib/output/clausula_" + nombre + ".php", nombre, "top=10,left=10,height=600,width=400,scrollbars=yes");

}










































