var ns6=document.getElementById&&!document.all?1:0
var mac = (navigator.userAgent.toUpperCase().indexOf('MAC') == -1)?false:true;


/************************************************/
/*	Funciones comunes										*/
/************************************************/

window.status = "Sitio web desarrollado por Solunica, soluciones e-business";

//Redimensiona el iframe de menú emergente en altura y anchura
function dimensionar_este(id){
	if(!ns6){
		top.document.getElementById(id).style.height = top.document.frames[id].document.body.scrollHeight;
		top.document.getElementById(id).style.width = top.document.frames[id].document.body.scrollWidth;
	}else{
		top.document.getElementById(id).style.height = top.document.frames[id].document.documentElement.offsetHeight;
		top.document.getElementById(id).style.width = top.document.frames[id].document.documentElement.offsetWidth;
	}
}
//Redimensionar los iframes en altura
function dimensionar()
{
	var cadena='';
	var ventana;
	var strFrame='';
	ventana = window.parent;
	strFrame = window.name;
	
	strFrame = strFrame.toString();
	
	while (strFrame!='' && strFrame!='_unspecifiedFrame' && strFrame!='undefined' && strFrame !=null && strFrame != "popupnuevo" && strFrame.substring(0,3) != "msn")
	{
		cadena = ventana.frames[strFrame];
		
		if(ns6 == false)
		{
		if (mac) {
		    ventana.document.getElementById("id_" + strFrame.substring(3,strFrame.length)).style.height = ventana.frames["nm_" + strFrame.substring(3,strFrame.length)].document.body.offsetHeight;
		}
		else {
			ventana.document.getElementById("id_" + strFrame.substring(3,strFrame.length)).style.height = ventana.frames["nm_" + strFrame.substring(3,strFrame.length)].document.body.scrollHeight;
		}
		}
		else
		{
			ventana.document.getElementById("id_" + strFrame.substring(3,strFrame.length)).style.height = ventana.frames["nm_" + strFrame.substring(3,strFrame.length)].document.documentElement.offsetHeight;
		}
	
	strFrame = ventana.name;
	ventana = ventana.parent;
	}
}


//Abrir ventana
function abrirventana(url,width, height,nombre)
{
	if(document.all){
		izq = (screen.availWidth) ? (screen.availWidth-width)/2 : 0;
		alt = (screen.availHeight) ? (screen.availHeight-height)/2 : 0;
	}else{
		izq = (screen.width) ? (screen.width-width)/2 : 0;
		alt = (screen.height) ? (screen.height-height)/2 : 0;
	}

	popup = window.open(url, nombre, "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,left=" + izq + ",top=" + alt + ",width=" + width + ",height=" + height);
	popup.focus();
	//alert('Para abrir ventanas hay que usar una función nueva. Preguntad a Jaime');
}


/*
 Para que haga el rollover en el texto añadir esto en el tag A:
 	onclick="Rollover(this)" 
 Sustituir textomenucabecera por la clase no seleccionada y textomenucabeceraactivo por la clase seleccionada

poner una variable global seleccionado a 0
*/

function Rollover(link,claseactiva,clasenoactiva)
{
    if (seleccionado==-1)
     {
           
           link.className = claseactiva;
           seleccionado = ObtenerLink(link.innerHTML);
     	
     }
     else
     {
	     //alert(document.links[seleccionado].innerHTML);
	     //alert(link.innerHTML);
	     if ((document.links[seleccionado].innerHTML!=link.innerHTML))
	     {
	        document.links[seleccionado].className = clasenoactiva;
	        link.className = claseactiva;
	        seleccionado = ObtenerLink(link.innerHTML);
	     }
      }
}

function ObtenerLink(texto)
{
    for (var i=0;i<document.links.length;i++)
    {
       if (document.links[i].innerHTML == texto)
          return i;
    }
}

/*
 Para que haga el rollover añadir esto en el tag IMG:
 	onMouseOver="imgOver(this)" onMouseOut="imgOut(this)" onClick="imgClick(this)" 
 Para que quede marcada al cargar la página:
 	onLoad="imgInicial=this"
*/

var imgActiva
var imgSubOn
var isSubmenu = false
var imgPrecargado = false
var imgInicial

var imgDocument = new Array()


var imgPreposiciones = new Array()
imgPreposiciones[0] = 'menu';
imgPreposiciones[1] = 'bot';
imgPreposiciones[2] = 'ico';
imgPreposiciones[3] = 'mnu';
imgPreposiciones[4] = 'men';
imgPreposiciones[5] = 'pes';
imgPreposiciones[6] = 'map';


function imgIncluir(prep)
{
	var i;
	for(i=0;i<imgPreposiciones.length;i++)
	{
		if(imgPreposiciones[i] == prep)
		{
			return (true);
		}
	}
	return (false);
}

function imgPreload()
{
	var imgRuta;
	var imgArchivo;
	var imgCarpeta;
	for(i=0;i<document.images.length;i++)
	{
			imgCarpeta = '';
			imgArchivo = '';
			imgRuta = document.images[i].src
			imgRutaArray = new Array();
			imgRutaArray = imgRuta.split('/')
			imgPreposicion = imgRutaArray[imgRutaArray.length-1].split('_', 1)
			imgArchivo = imgRutaArray[imgRutaArray.length-1];
			var k;
			for(k=0;k<imgRutaArray.length-1;k++)
			{
				imgCarpeta = imgCarpeta + imgRutaArray[k] + '/' 
			}
			if(imgIncluir(imgPreposicion) == true)
			{
				var j;
				j = imgDocument.length;
				imgDocument[j] = new Array();
				imgDocument[j][0] = document.images[i];
				imgDocument[j][1] = new Image();
				imgDocument[j][1].src = imgRuta;
				imgDocument[j][2] = new Image();
				imgDocument[j][2].src = imgRuta.replace(".gif", "1.gif");
				if(imgArchivo.substring(0,11) == "bot_gestion"){
					imgDocument[j][3] = new Image();
					imgDocument[j][3].src = imgRuta.replace(".gif", "2.gif");
				}
			}
	}
	
	
	imgPrecargado = true;
	if(imgInicial != null && imgInicial != 'undefined')
	{
		var imgOn;
		var i;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0] == imgInicial)
			{
				imgOn = i;
			}
		}
		imgActiva = imgOn;
		imgSubOn = imgActiva;
		imgDocument[imgActiva][0].src = imgDocument[imgActiva][2].src;
	}
	var f;
	var g;
	for(f=0;f<document.forms.length;f++)
	{
		for(g=0;g<document.forms[f].elements.length;g++)
		{
			if(document.forms[f].elements[g].type != "textarea") 
			{
				document.forms[f].elements[g].onkeypress = pulsacion;
			}
		}
	}
}


function imgOver(imgObject) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0] == imgObject)
			{
				imgOn = i;
			}
		}
		if(imgDocument[imgOn][2].complete == true)
		{
			imgDocument[imgOn][0].src = imgDocument[imgOn][2].src;
		}
	}
}

function imgOverExterno(imgName) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0].name == imgName)
			{
				imgOn = i;
			}
		}
		if(imgDocument[imgOn][2].complete == true)
		{
			imgDocument[imgOn][0].src = imgDocument[imgOn][2].src;
		}
	}
}

function imgOut(imgObject) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0] == imgObject)
			{
				imgOn = i;
			}
		}
		if(imgOn != imgActiva)
		{
			if(imgDocument[imgOn][1].complete == true)
			{
				imgDocument[imgOn][0].src = imgDocument[imgOn][1].src;
			}
		}
		if(isSubmenu == true)
		{
			imgDocument[imgOn][0].src = imgDocument[imgSubOn][1].src;
		}
	}
}

function imgOutExterno(imgName) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0].name == imgName)
			{
				imgOn = i;
			}
		}
		if(imgOn != imgActiva)
		{
			if(imgDocument[imgOn][1].complete == true)
			{
				imgDocument[imgOn][0].src = imgDocument[imgOn][1].src;
			}
		}
		if(isSubmenu == true)
		{
			imgDocument[imgOn][0].src = imgDocument[imgSubOn][1].src;
		}
	}
}

function imgThird(imgObject) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0] == imgObject)
			{
				imgOn = i;
			}
		}
		if(imgDocument[imgOn][3].complete == true)
		{
			imgDocument[imgOn][0].src = imgDocument[imgOn][3].src;
		}
	}
}

function imgClick(imgObject) 
{
	if(imgPrecargado == true)
	{
		if(ns6 == false)
		{
			imgObject.blur();
		}
		var imgOn;
		var i;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0].src == imgDocument[i][2].src && imgDocument[i][0] != imgObject)
			{
				 setTimeout("imgDocument[" + i + "][0].src = imgDocument[" + i + "][1].src", 10);
			}
			
			if(imgDocument[i][0] == imgObject)
			{
				imgOn = i;
			}
		}
		
		imgActiva = imgOn;
		imgSubOn = imgActiva;
			
		if(ns6 == false)
		{
			imgObject.blur();
		}
	}
}

/*function imgClickExterno(imgName) 
{
	if(imgPrecargado == true)
	{
		var imgOn;
		var i;
		for(i=0;i<imgDocument.length;i++)
		{
			if(imgDocument[i][0].src == imgDocument[i][2].src && imgDocument[i][0].name != imgName)
			{
				 setTimeout("imgDocument[" + i + "][0].src = imgDocument[" + i + "][1].src", 10);
			}
			
			if(imgDocument[i][0].name == imgName)
			{
				imgOn = i;
			}
		}
		
		imgActiva = imgOn;
		imgSubOn = imgActiva;
		
		imgDocument[imgActiva][0].src = imgDocument[imgActiva][2].src;
	}
}*/

function pulsacion(e)
{
	var ns6=document.getElementById&&!document.all?1:0
	if(ns6 == false)
	{
		if (window.event.keyCode == 13)
		{
			validar(window.event.srcElement);
		}
	}
	else
	{
		if (e.which == 13)
		{
			validar(e.srcElement);
		}
	}
}

//-----------------------------------------------------------------


function trim(strText) { 
    // this will get rid of leading spaces 
    while (strText.substring(0,1) == ' ') 
        strText = strText.substring(1, strText.length);

    // this will get rid of trailing spaces 
    while (strText.substring(strText.length-1,strText.length) == ' ')
        strText = strText.substring(0, strText.length-1);

   return strText;
} 

function imgRedim(ancho,alto,anchomax,altomax,imagen, boton)
{
	var z;
	for(z=0;z<document.images.length;z++)
	{
		imgOriginal = new String(document.images[z].src);
		if(imgOriginal.indexOf('jpg') != -1)
		{
			imgReducir(document.images[z].width,document.images[z].height,50,25,document.images[z].name)
		}
	}
	
	var coeficiente = 1;

	if (ancho > anchomax || alto > altomax)
	{
		if (ancho - anchomax > alto - altomax)
		{
			coeficiente =  anchomax / ancho;
		}
		else if(ancho - anchomax > 0)
		{
			coeficiente =  altomax / alto;	        
		}
     	}
     	alto = alto * coeficiente;
	ancho = ancho * coeficiente;
        document.images[imagen].width = ancho;
	document.images[imagen].height = alto;
	
	var y;
	for(y=0;y<document.images.length;y++)
	{
		if(document.images[y].name == boton)
		{
			if(y == imgActiva)
			{
				imgReducir(document.images[imagen].width,document.images[imagen].height,50,25,document.images[imagen].name)
				imgActiva = 0;
				document.images[y].src = imgArrayOff[y].src
			}
			else
			{
				imgClickExterno(boton);
			}
		}
	}
	dimensionar();
}

function imgReducir(ancho,alto,anchomax,altomax,imagen)
{
	var coeficiente = 1;
	if (ancho > anchomax || alto > altomax)
	{
		if ((ancho - anchomax > alto - altomax))
		{
			coeficiente =  anchomax / ancho;
		}
		else if(ancho - anchomax > 0)
		{
			coeficiente =  altomax / alto;	        
		}
     	}
     	alto = alto * coeficiente;
	ancho = ancho * coeficiente;
        document.images[imagen].width = ancho;
	document.images[imagen].height = alto;
}

function aresto(msg, form, textarea, muestra, maximo)
{	
	var valor=msg.length + 1
	if (valor >= maximo)
	{
		var max=msg.substr(0,(maximo-1))		
		document.forms[form].elements[textarea].value=max
		document.forms[form].elements[muestra].value=0	

	}
	else	
		document.forms[form].elements[muestra].value=maximo-valor;
}

function overcelda(num){
	document.getElementById('celdapopup'+num).className = "celdaAct";
}

function outcelda(num){
	document.getElementById('celdapopup'+num).className = "celdaInac";
}

/* Codigo para deshabilitar el boton dcho del ratón.
if(ns6 == false){
	document.onmousedown=click;
}else{
	document.captureEvents(Event.MOUSEDOWN);
	document.captureEvents(Event.MOUSEMOVE);
	document.captureEvents(Event.KEYPRESS);
	document.onmousedown=click;
}

function click(e){
	if(window.event.button == 2 || window.event.button == 3){
		alert("Pasa Aitor");
		return false;
	}
}

*/

function EsNumeroEnteroPositivo(numero){
	if (isNaN(numero)){
		return false;
	}else if(numero.indexOf(".")>-1){
		return false;
	}else if (numero < 1){
		return false;
	}
		
	return true;	
}

function EsNumeroRealoCero(numero){

	re = /\./;
	numero = numero.replace(re,'');
	re = /,/;
	numero = numero.replace(re,'.');

	if (isNaN(numero)){
		return false;
	}

	return true;	
}

function numerico(pInString,piDecimal){
	var RefStringE = "1234567890";
	var RefStringD = "1234567890,";

	if (pInString.length==0)
		return false;
	if (piDecimal == 0)
		RefString = RefStringE ;
	else
		RefString = RefStringD;
	Punto = 0 ;
	for (Count=0; Count < pInString.length; Count++)
	{
		TempChar= pInString.substring (Count, Count+1);
		if (RefString.indexOf (TempChar, 0)==-1)
		{
			return false;
		}
		if (TempChar == ",")
		{
			Punto = Punto + 1;
		} 
	}
	
	if (Punto > 1){
		return false;
	}
	return true;
}

function formatNumber(numero, dec, miles){
	var num = numero, signo=3, expr;
	var cad = ""+numero;
	var ceros = "", pos, pdec, i;
	
	for (i=0; i < dec; i++){
		ceros += '0';
	}
	
	pos = cad.indexOf('.');
	
	if (pos < 0){
	    cad = cad+"."+ceros;
	}else{
	   
	   pdec = cad.length - pos -1;
	   
	   if (pdec <= dec){
	       for (i=0; i < (dec-pdec); i++){
	           cad += '0';
	       }
	   }else{
	       num = num*Math.pow(10, dec);
	       num = Math.round(num);
	       num = num/Math.pow(10, dec);
	       cad = new String(num);
	   }
   
   }
	
	pos = cad.indexOf('.')

	if (pos < 0) pos = cad.lentgh
	
	if (cad.substr(0,1)=='-' || cad.substr(0,1) == '+') 
	    signo = 4;
	
	if (miles && pos > signo)
	    do{
	        expr = /([+-]?\d)(\d{3}[\.\,]\d*)/
	        cad.match(expr)
	        cad=cad.replace(expr, RegExp.$1+','+RegExp.$2)
			}while (cad.indexOf(',') > signo)
	
	if (dec<0){
		 cad = cad.replace(/\./,'')
	}

	cad = cad.replace(/\./,'X')
	cad = cad.replace(/\,/g,'.')
	cad = cad.replace(/\X/,',')
   
   return cad;
}

// Joseba
// 04/12/2003
// Devuelve la letra del dni
function calcular_letra_dni(dni){
	if(dni.length != 8){
		alert("DNI erróneo");
		return "";
	}
	var letras = 'TRWAGMYFPDXBNJZSQVHLCKE';
	var numero = dni%23;
	
	return (letras.substring(numero,numero+1));
}


/* Inegocio */

// Funciones del e-intelligence

function CerrarSesion(accion)
{
	if (accion == null)
	{
		return;
	}
	if (top.frames["nm_control"] == null)
	{
	   if (top.opener.top.frames["nm_control"] != null)
	   {     
	        top.opener.top.frames["nm_control"].location = top.opener.top.location + "/inegocio/ein_registrar_salida.asp?accion=" + accion;
	   }     
	}   
	else  
	{   
	   top.frames["nm_control"].location = top.location + "/inegocio/ein_registrar_salida.asp?accion=" + accion;
	   
	}   
	   
}

function GuardarAccion(tipo_objeto, accion, clave1, clave2, clave3, clave4)
{
	if (top.frames["nm_control"] == null)
	{
	   if (top.opener.top.frames["nm_control"] != null)
	   	top.opener.top.frames["nm_control"].location = top.opener.top.location + "/inegocio/ein_guardar_accion.asp?tipo_objeto=" + tipo_objeto + "&accion=" + accion + "&clave1=" + clave1 + "&clave2=" + clave2 + "&clave3=" + clave3 + "&clave4=" + clave4;
	}   
	else  
	{   
	   top.frames["nm_control"].location = top.location + "/inegocio/ein_guardar_accion.asp?tipo_objeto=" + tipo_objeto + "&accion=" + accion + "&clave1=" + clave1 + "&clave2=" + clave2 + "&clave3=" + clave3 + "&clave4=" + clave4;
	}   
}

