function trim(text){
	//delete initial spaces
	var counter = 0, lastPosition;
	while(text.indexOf(" ", counter)==counter){
		counter++;
	}
	text = text.substr(counter);

	//delete ending spaces
	lastPosition = text.length - 1;
	while(text.lastIndexOf(" ", lastPosition) == lastPosition){
		lastPosition--;
	}
	text = text.substr(0, lastPosition + 1);

	return text;
}

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;
}

//cambia la url de la pagina
function ir_a(url){
	if (url && url != ""){
		self.location.href=url;
	}
}

//abre una ventana con las caracteristicas pasadas como parametro
SP2 = false;
SP2 = (window.navigator.userAgent.indexOf("SV1") != -1);
function abrirv(ruta,nombre, ancho, alto, caracteristicas){
//	if (SP2) {
//		document.nuevaventana.action=ruta;
//		document.nuevaventana.submit();
//	}else{
		var car = "width =" + ancho + ",height="+alto;
		car = car + ", left=" + ((screen.width)?(screen.width-ancho)/2:100);
		car = car + ", top=" + ((screen.height)?(screen.height-alto)/2:100);		
		if (caracteristicas != null && caracteristicas != "")
			car = car + ", " + caracteristicas;
		window.open(ruta,nombre,car);
//	}
}


//abre una ventana nueva con la URL especificada
function TBSOpen(url,tipo){
	var target='';
	var params='scrollbars=yes,resizable=yes,status=yes,titlebar=yes';

	switch(tipo){
		case 0: target='_self';break;
		case 1: target='_blank';params=params + 'directories=yes,location=yes,menubar=yes,toolbar=yes'
		case 2: target='_blank';break;
	}
	window.open(url,target,params);
}



// aņade a la clase de los objetos indicados por el parametro Array id
// la cadena 'sel' para que le corresponda la clase de la CSS 
// referente a la seleccionada
function seleccionar(id){
	if (id){
		for (i=0; i < id.length; i++){
			var obj = MM_findObj(id[i]);
			if (obj)
				obj.className = obj.className + 'sel';
		}
	}	
}

//obtiene el valor del texto de un objeto (cuidado porque se trae todo el codigo HTML, no solo el texto)
// idObj -  es una cadena que identifica el objeto del cual obtener el texto
function getText(idObj){
    return MM_findObj(idObj).innerHTML;
    //return MM_findObj(idObj).innerText;   // solo en IE
}



// escribe la ruta del portal que se dese
// idRuta - es una cadena que identifique donde se va a escribir la ruta
// opciones - es un Array que contiene los Ids de las opciones de menu de donde obtener la ruta
function escribirRuta(idRuta, opciones){
	if (idRuta && opciones){
		for(i=0; i < opciones.length;i++){
			if (ruta != "")
				ruta = ruta + " / ";
			ruta = ruta + getText(opciones[i]);
		}

		MM_findObj(idRuta).innerHTML = ruta;
	}	
}


function obtenerUrlPortal(){
    var location = window.location;
    var urlPortal = location.protocol + "://"+ location.hostname;
    if (location.port && location.port != "")
        urlPortal = urlPortal + ":" + location.port;
    return urlPortal;
}        

// metodo que reemplaza la URL en funcion del idioma pasado como parametro
// Tiene dos formas de actuar:
// Si la pagina es HTML entonces reemplaza: URL/ES/page.htm    por URL/CODIGO/page.htm
// Si la pagina es JSP entonces reemplaza los parametros  idIdioma y codIdioma
// id-id del nuevo idioma
// codigo- cadena que representa la carpeta donde se encuentra el nuevo idioma
function cambioIdioma(id,codigo){
    var path ='/';
    var url = location.href;
    var lastIndexPath = url.lastIndexOf(path,url.length);
    var page = url.substring(lastIndexPath+1,url.length);
    if (codigo=="null" || codigo==""){
        codigo="ES";
        id="1";
    }
    //if (url.indexOf('.jsp') == -1){ //PAGINA HTML NORMAL
    if (url.indexOf('AppsHTTP') == -1){ //PAGINA HTML NORMAL
        // dejo la URL   sin la parte de /CODIGO
        url = url.substring(0,lastIndexPath);
        url = url.substring(0,url.lastIndexOf(path,url.length));
        url = url+ path + codigo + path+ page;
    }else{              //PAGINA JSP
    	var param = '&';
	var parametros = page.split(param);
        if (parametros.length>1){
	for (i=0; i < parametros.length;i++){
            var index = parametros[i].indexOf('idIdioma=');
            if (index != -1){
		parametros[i] = parametros[i].substring(0,index+9) + id;
            }
            else{
		var index = parametros[i].indexOf('codIdioma=');
		if (index != -1){
                    parametros[i] = parametros[i].substring(0,index+10) + codigo;
		}
            }	
	}
        }
	page ='';
        if (parametros.length>1){
            page = page + parametros[0];
            for (i=1; i < parametros.length;i++){
                    page = page + param + parametros[i];
                }
            }            
        else{
            page = page + parametros[0]+'?idioma='+id+'&codIdioma='+codigo;
        }
	url = url.substring(0,url.lastIndexOf(path,url.length)) + path + page;
    }
    location.href = url;
}



function SetFocus() {
  if (document.forms.length > 0) {
    var field = document.forms[0];
    for (i=0; i<field.length; i++) {
      if ( (field.elements[i].type != "image") &&
           (field.elements[i].type != "hidden") &&
           (field.elements[i].type != "reset") &&
           (field.elements[i].type != "submit") ) {

        document.forms[0].elements[i].focus();

        if ( (field.elements[i].type == "text") ||
             (field.elements[i].type == "password") )
          document.forms[0].elements[i].select();

        break;
      }
    }
  }
}

