function contar_checkbox( formid, obj )
{
	//var num = f.elements[obj].length;
	var f = document.getElementById(formid);
	var num = f.elements.length;
	var cuenta = 0; 
	 
	for (var i=0; i <= num-1; i++) {
		elemento=f.elements[i];
		if(elemento.type=='checkbox'){
			if( (elemento.checked) && (elemento.name == obj) ){ cuenta++; }
		}
	}
	return(cuenta);
}

function sel_checkbox(formid,obj,valor)
{
	var f = document.getElementById(formid);
	var num = f.elements.length;
	for (var i=0; i <= num-1; i++) {
		elemento=f.elements[i];
		if( (elemento.type=='checkbox') && (elemento.name == obj) ){
			elemento.checked=valor;
		}
	}
	return;
}

function contar_select_multiple( id )
{
	var elemento = document.getElementById(id);
 	var num = elemento.length;
	var cuenta = 0;
 	for(j=0 ; j<elemento.options.length ; j++){ 
		if(elemento.options[j].selected) cuenta++;		
	}
	return(cuenta);
}

function get_valor_radio(formid, name)
{
	var f = document.getElementById(formid);
	var num = f.elements.length;
	 
	for (var i=0; i <= num-1; i++)
	{
		elemento=f.elements[i];
		if(elemento.type=='radio' && elemento.name==name && elemento.checked) return elemento.value;
	}
	return false;
}

function formatea_url(url)
{
	if( url=='' ) return '';
	
	if( ( url!='' ) && ( url.substring(0,4)!='http' ) )
	{	
		url = 'http://' + url;
	}
	
	//var lon = url.length-1;
	//if( url.charAt(lon)=='/' ) url = url.substring(0,lon);  
	
	return url;
}

function validarCIF(cif)
{
    var pares = 0;
    var impares = 0;
    var suma;
    var ultima;
    var unumero;
    //var uletra = new Array("J", "A", "B", "C", "D", "E", "F", "G", "H", "I");
    var uletra = new Array("A","B","C","D","E","F","G","H","J","N","P","Q","R","S","U","V","W");
    var xxx;
    
    texto = cif.toUpperCase();
    
    //var regular = new RegExp(/^[ABCDEFGHKLMNPQS]\d\d\d\d\d\d\d[0-9,A-J]$/g);
    var regular = new RegExp(/^[ABCDEFGHJNPQRSUVW]\d\d\d\d\d\d\d[0-9,A-J]$/g);
     if (!regular.exec(texto)) return false;
         
     ultima = texto.substr(8,1);

     for (var cont = 1 ; cont < 7 ; cont ++){
         xxx = (2 * parseInt(texto.substr(cont++,1))).toString() + "0";
         impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1));
         pares += parseInt(texto.substr(cont,1));
     }
     xxx = (2 * parseInt(texto.substr(cont,1))).toString() + "0";
     impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1));
     
     suma = (pares + impares).toString();
     unumero = parseInt(suma.substr(suma.length - 1, 1));
     unumero = (10 - unumero).toString();
     if(unumero == 10) unumero = 0;
     
     return ((ultima == unumero) || (ultima == uletra[unumero])) ? true : false;
}

function validarNIF(nif)
{
	dni   = nif.substring(0,nif.length-1);
	letra = nif.charAt(nif.length-1);
	
	if (!isNaN(letra)) return false;

	cadena = "TRWAGMYFPDXBNJZSQVHLCKET";
	posicion = dni % 23;
	
	car = cadena.substring(posicion,posicion+1)
	return (car==letra.toUpperCase()) ? true : false;
}

function validarNIF_NIE(nif)
{
	cont  = nif.substr(0,1);
	dni   = (cont=='X' || cont=='T') ? nif.substring(1,nif.length-1) : nif.substring(0,nif.length-1);
	letra = nif.charAt(nif.length-1);
	
	if (!isNaN(letra)) return false;

	cadena = "TRWAGMYFPDXBNJZSQVHLCKET";
	posicion = dni % 23;
	
	car = cadena.substring(posicion,posicion+1)
	return (car==letra.toUpperCase()) ? true : false;
}

function r_imagen(id,url)
{
	MM_swapImage(id,'',url,1);
}

function ck_bloque(id,etiqueta)
{
	var clase = document.getElementById(id).className;
	document.getElementById(id).className = (clase=='bloque_oculto') ? 'bloque_visible' : 'bloque_oculto';
	if(document.getElementById(etiqueta)) document.getElementById(etiqueta).innerHTML = (clase=='bloque_oculto') ? '-' : '+';
	return;
}

function preload(capa, msg)
{
	if(!document.getElementById(capa)) return;
	msg = msg ? msg : '<img src="/images/ico_loading.gif" border="0" />';
	document.getElementById(capa).innerHTML=msg; 	
}

function redirect_popup(action,variables,w,h,msg,name)
{
  var estilos = '';
  estilos	 += 'body{ margin-left:20px; margin-right:20px; background-image:url(/images/fondo2.jpg); padding:0px; }';
  estilos 	 += 'p, div, td{ font-family:Verdana; font-size:12px; color:#000; }';
  
  var win_ventana = window.open('',name,'width='+w+', height='+h+', resizable=yes, top=20, left=20, scrollbars=yes');
  var doc = win_ventana.document;
  doc.writeln('<html>');
  doc.writeln('<head>');
  doc.writeln('<style type="text/css">'+estilos+'</style>');
  doc.writeln('<body onload="document.forms[0].submit()" >');
  doc.writeln('<body>');
  doc.writeln('<p>'+msg+'&nbsp;<img src="/images/preload.gif" align="absmiddle" /></p>');
  doc.writeln('<form name="fData" id="fData" action="'+action+'" method="post">');
  if(variables){
	for(var key in variables) {
		doc.writeln('<input type="hidden" name="'+key+'" value="'+variables[key]+'">');
	}
  }
  doc.writeln('</form>');
  doc.writeln('</body>');
  doc.writeln('</html>');
  doc.close();
}

function sleep(milliseconds) 
{
  var start = new Date().getTime();
  for (var i = 0; i < 1e7; i++) 
  {
    if ((new Date().getTime() - start) > milliseconds){
      break;
    }
  }
}


//Dreamweaver
function MM_preloadimages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadimages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
//MM_reloadPage(true);

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}