/* JavaScript Document
##############################################################################################################################

												Colecsion completilla de javascripts

############################################################################################################################### */


// Comproba si e un nº tde telefono válido
//----------------------------------------------
function validaTelefono(str){
	var patron = new RegExp("[0-9]{9,}","gi");
	return patron.test(str);

	
}




// Comproba que unha dir. de email sexa correcta.
//----------------------------------------------
function validaEmail(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		  return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}


// Función que devolve o dia actual
//---------------------------------------
function diaActual(){
	var aghora = new Date();
	var ano = aghora.getYear();
	var mes = aghora.getMonth();
	var dia = aghora.getDate(); // Día do mes (1-31)
	// var diaSemana = aghora.getDay() // Dia da semana 0-6 empezando polo domingo creo...
	var strFecha = dia + '-' + mes + '-' + ano;
	return(strFecha);
}




// Comproba q a fecha teña formato válido
//----------------------------------------------
function compFecha(Cadena){
   var rFechas = new Array("OK","Revisa o campo Fecha","Revisa o ano","Revisa o mes",
							"O mes non pode ter ese día","Revisa o día");
   var Fecha= new String(Cadena)   // Crea un string
   
   // Comproba lonxitude da cadena coa fecha
   if(Fecha.length<8 || !vacio(Fecha.length)){
	   return rFechas[1]; // 1 Error na lonxitude da fecha
   }
     
   // Cadena Ano
   var Ano= new String(Fecha.substring(Fecha.lastIndexOf("-")+1,Fecha.length))

   // Cadena Mes
   var Mes= new String(Fecha.substring(Fecha.indexOf("-")+1,Fecha.lastIndexOf("-")))

   // Cadena Día
   var Dia= new String(Fecha.substring(0,Fecha.indexOf("-")))


												   
// Valida o ano
   if (isNaN(Ano) || Ano.length<4 || parseFloat(Ano)<1900){
            //alert('Revisa a Fecha. Ano inválido')
      return rFechas[2]; // ano invalido
   }
   // Valido el Mes
   else if (isNaN(Mes) || parseFloat(Mes)<1 || parseFloat(Mes)>12 || vacio(Mes) || Mes.length<1 ){
	   //alert('Revisa a Fecha. Mes inválido');
      	return rFechas[3]; // Mes inválido
		}
		else if ( ( (Mes==4 || Mes==6 || Mes==9 || Mes==11) && Dia>30)  || (Mes==2 && Dia>29)){
			// Día inválido
			return rFechas[4];
			}
			else if (isNaN(Dia) || parseInt(Dia)<1 || parseInt(Dia)>31){ // Valido el Dia
					//alert('Revisa a Fecha. Día inválido');
					return rFechas[5];
				}
				else{
					return rFechas[0]; // Todo OK
				}
}



// Func. q pide confirmación sobre unha acción.
//----------------------------------------------
function confirmar(texto,url){
var res = window.confirm(texto);
if ( res ){
	//redirecciona(url,0)
	document.location.href=url;
	}	
}



// Función para borra o campo dun formulario
//----------------------------------------------=
function borrarCampo(F,campo){
	
	F.eval(campo).value='';
	return;
	
}



// Si hai polo menos un campo con fotos, devolve true
// Si correcto devolve true
// i nº no formulario do primeiro campo con fotos 
// n nº total de campos con fotos

function validaFormImaxes (F,i,n){ 
	
	//a = document.forms[0].elements[i].value;
	//alert('Probando '+a);
	for(x=0;x<n;x++){
		a = document.forms[F].elements[i+x].value;
		if(!vacio(a))return true; // Polo menos hai 1 campo FILE con contido
	}
	
	return false;	
}



// Busca caracteres que no sean espacio en blanco nunha cadea
//--------------------------------------------------------------
function vacio(q) {
         for ( i = 0; i < q.length; i++ ) {
                 if ( q.charAt(i) != " " ) {
                         return false
                 }
         }
         return true
}





// Comproba que se escolleu un campo válido nun <select>. 
// Recibe o campo eovalor que NON debe ter para ser válido.
//-----------------------------------------------------------
function compSelect(q,valor){
			if( q.value == valor ) {
                 return false
			}
			else {
                 return true
         	}

}




// Redirección
//----------------------------------------------
function redirecciona(url,tempo){
	if(tempo>0)	setTimeout("document.location.href='"+url+"';",tempo);else document.location.href=''+url+'';
}

// Cerrar ventana
//----------------------------------------------
function cerrarse(){
	window.close();
}


// Texto da barra de estado
//----------------------------------------------
function estatus(s){
window.status= s;
}

// Maximizar ventana
//----------------------------------------------
function maximiza(){
	// Maximizar Ventana por Nick Lowe (nicklowe@ukonline.co.uk)

	window.moveTo(0,0);
	if (document.all)
	 {
	      top.window.resizeTo(screen.availWidth,screen.availHeight);
	 }
	else if (document.layers||document.getElementById)
	 {
	       if (top.window.outerHeight<screen.availHeight||top.window.outerWidth<screen.availWidth)
	        {
	              top.window.outerHeight = screen.availHeight;
	              top.window.outerWidth = screen.availWidth;
	        }
	 }
}

// Engadir páxina a favoritos
//----------------------------------------------
function favoritos(url,titulo) {
   
if ((navigator.appName=="Microsoft Internet Explorer") && (parseInt(navigator.appVersion)>=4)) { 
      //var url="http://www.lagardebesada.com/"; 
      //var titulo=":: Bodega Lagar De Besada ::: ALBARIÑOS"; 
      window.external.AddFavorite(url,titulo); 
   } 
   else
 { 
      if(navigator.appName == "Netscape") 
         alert ("Presione Crtl+D para agregar este sitio a favoritos"); 
   } 

}


// Convertir en páxina de inicio (só IE)
//----------------------------------------------
function pdeinicio(url) {
	document.body.style.behavior="url(#default#homepage)"; 
	document.body.setHomePage(url);
}


// Abre unha nova ventana
//----------------------------------------------
function novaJanela (paxina, nomeJanela, ancho, alto, scroll, posicion) {
	var win=null;
	if(posicion=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-ancho)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-alto)-75)):100;}
	if(posicion=="center"){
		LeftPosition=(screen.width)?(screen.width-ancho)/2:100;
		TopPosition=(screen.height)?(screen.height-alto)/2:100;
		}
		else if((posicion!="center" && posicion!="random") || posicion==null){
			LeftPosition=0;TopPosition=20
			}
settings='width='+ancho+',height='+alto+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
win=window.open(paxina,nomeJanela,settings);
}  

//=============================================================================================================================
// Anotación:
/*
O codigo correcto abrir un popup dende un enlace é este:
<a href="/index.htm" target="_blank" onClick="window.open(this.href, this.target, 'width=300,height=400'); return false;">Lanzar correctamente</a>
*/

