function Editor()
{
	this.CONST_colorLiniaDef = "#000000";
	this.CONST_colorLetraDef = "#000000";
	this.CONST_estiloDef = "0";
	this.CONST_colorFondoAtDef = "#FFFFFF";
	this.CONST_colorAtDef = "#CCCCCC";
	this.CONST_colorNodoDef = "#FFFFFF";
	this.CONST_direccionDef = 1;
	this.CONST_grosorDef = 1;
	this.CONST_arrayDeColores = new Array();
	this.CONST_arrayDeColores[0] = 'CCCCFF';
	this.CONST_arrayDeColores[1] = 'FFCCCC';
	this.CONST_arrayDeColores[2] = 'CCFFFF';
	this.CONST_arrayDeColores[3] = 'FFFFCC';
	this.CONST_arrayDeColores[4] = 'EEEEEE';
	this.CONST_arrayDeColores[5] = 'CCFFCC';
	this.CONST_arrayDeColores[6] = 'CCCC99';
	this.CONST_arrayDeColores[7] = 'FFCC99';
	this.CONST_arrayDeColores[8] = '99CCFF';
	this.CONST_arrayTipoLetra = new Array();
	this.CONST_arrayTipoLetra[0] = 'Arial';
	this.CONST_arrayTipoLetra[1] = 'Arial Narrow';
	this.CONST_arrayTipoLetra[2] = 'Courier New';
	this.CONST_arrayTipoLetra[3] = 'Garamond';
	this.CONST_arrayTipoLetra[4] = 'Tahoma';
	this.CONST_arrayTipoLetra[5] = 'Times New Roman';
	this.CONST_arrayTipoLetra[6] = 'Trebuchet';
	this.CONST_arrayTipoLetra[7] = 'Verdana';
	this.CONST_estadoIconos = 1;
	this.alertFirefox=0;
	
	// propiedades
	this.estadoApplet = 0;
	this.estado = 0; //0: normal
	this.estadoRec = false;
	this.estadoEdit = false;
	this.nodoActual = null;
	this.vistaActual = null;
	this.mensaje = "";
	this.posXNodo = 0;
	this.posYNodo = 0;
	this.nombreDirImg = "";
	this.pathImg = "";
	this.pathImgNodos = "";
	this.pathOut = "";
	this.listaFuentes = "";
	this.importandoCargado = false;
	this.codigoImportar = "";
	this.pathEditor = "";
	this.codigoDivMapa = "";
	this.codigoJSMapa = "";
	
	//metodos
	this.verEditarMapa = fEditorVerEditarMapa
	this.verConfigMapa = fEditorVerConfigMapa;
	this.verVistas = fEditorVerVistas;
	this.verVistaPreliminar = fEditorVerVistaPreliminar;
	this.verImportar = fEditorVerImportar;
	this.verGuardar = fEditorVerGuardar;
	this.verAyuda = fEditorVerAyuda;
	
	this.verMensaje = fEditorVerRespuesta;
	this.verConfigurarEditor = fEditorVerConfigurarEditor;
	this.initEditor_A = fEditorInitEditor_A;
	this.initEditor = fEditorInitEditor;
	this.verEditarNodo = fEditorVerEditarNodo;
	this.editarConcepto_A = fEditorEditarConcepto_A;
	this.editarConcepto = fEditorEditarConcepto;
	this.permisoBorrarConcepto = fEditorPermisoBorrarConcepto;
	this.borrarConcepto_A = fEditorBorrarConcepto_A;
	this.borrarConcepto = fEditorBorrarConcepto;
	this.obtenerListaNodos = fEditorObtenerListaNodos;
	this.editarFrase_A = fEditorEditarFrase_A;
	this.editarFrase = fEditorEditarFrase;
	this.borrarFrase_A = fEditorBorrarFrase_A;
	this.borrarFrase = fEditorBorrarFrase;
	this.verEditarVista = fEditorVerEditarVista;
	this.moverVista = fEditorMoverVista;
	this.editarVista_A = fEditorEditarVista_A;
	this.editarVista = fEditorEditarVista;
	this.borrarVista_A = fEditorBorrarVista_A;
	this.borrarVista = fEditorBorrarVista;
	this.obtenerMapa = fEditorObtenerMapa;
	this.modifConfigMapa = fEditorModifConfigMapa;
	
	this.guardarMapa_A = fEditorGuardarMapa_A;
	this.guardarMapa = fEditorGuardarMapa;
	this.guardarMapaXTM_A = fEditorGuardarMapaXTM_A;
	this.guardarMapaXTM = fEditorGuardarMapaXTM;
	this.guardarMapaXCM3_A = fEditorGuardarMapaXCM3_A;
	this.guardarMapaXCM3 = fEditorGuardarMapaXCM3;
	this.importarMapaV3_A = fEditorImportarMapaV3_A;
	this.importarMapaV3 = fEditorImportarMapaV3;
	this.importarMapaV2_A = fEditorImportarMapaV2_A;
	this.importarMapaV2 = fEditorImportarMapaV2;
	this.importarMapaXTM_A = fEditorImportarMapaXTM_A;
	this.importarMapaXTM = fEditorImportarMapaXTM;
	this.importarMapaXCM3_A = fEditorImportarMapaXCM3_A;
	this.importarMapaXCM3 = fEditorImportarMapaXCM3;
	
	this.obtenerVistas = fEditorObtenerVistas;
	this.eliminarSaltosLinia = fEditorEliminarSaltosLinia;
	this.eliminarSaltosLiniaHTML = fEditorEliminarSaltosLiniaHTML;
	this.prepararNombreXCM = fEditorPrepararNombreXCM;
	
	this.actualizarEstado = fEditorActualizarEstado;
	this.cancelarAccion = fEditorCancelarAccion;
	
	this.continuarImportarV2 = fEditorContinuarImportarV2;
	this.generarNodosImpV2 = fEditorGenerarNodosImpV2;
	
	this.vistaDibujar = -1;
	this.dibujarArbol = fEditorDibujarArbol;
	
	this.pathArchivos = "../";
	if(document.all) this.pathArchivos = "./";
}

function fEditorVerRespuesta(pMensaje)
{
	this.mensaje = pMensaje;
	top.ifContenido.location = this.pathArchivos+"verMensaje.htm";
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
	actualizarMenu(-1);
}

function fEditorVerConfigurarEditor()
{
	top.ifContenido.location = "config.htm";
}

function fEditorInitEditor_A(pPath)
{
	this.estadoApplet = 1;
	top.ifContenido.location = "inicializando.htm";
	this.pathEditor = pPath;
	document.sapplet.configurarGestorJS(pPath);
}

function fEditorInitEditor(pPath)
{
	this.nombreDirImg = pPath.substring(0,pPath.length-1)
	var pos = this.nombreDirImg.lastIndexOf("/");
	if(pos>0) this.nombreDirImg = this.nombreDirImg.substring(pos+1);
	if(document.all)
		this.pathImg = pPath + "img_" + this.nombreDirImg + "/" ;
	else
		this.pathImg = "file:///"+pPath + "img_" + this.nombreDirImg + "/";
  
	this.pathImgNodos = pPath + "img_" + this.nombreDirImg + "/imgNodos/";
		
	this.pathOut = pPath.substring(0,pPath.length-1);
	document.getElementById("ifMapa").style.height="430px";
	top.ifMapa.location = "./mapa/mapa.htm"
	top.ifContenido.location = "editarMapa.htm";
	//actualizamos el menu
	actualizarMenu(0);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function actualizarMenu(pId)
{
	var i;
	var codigo = "";
	for(i=0;i<arrayMenuEditor.length;i++)
	{
		if (codigo!="") codigo += " | ";
		if(i!=pId)
			codigo += "<a href='javascript:"+arrayMenuEditor[i].accion+"' class='link'>"+arrayMenuEditor[i].id+"</a>";
		else
			codigo += "<span class='linkActivo'>"+arrayMenuEditor[i].id+"</span>";
	}
	codigo += "&nbsp;";
	document.getElementById("menuEditor").innerHTML = codigo;
}

function fEditorVerEditarNodo(pNodo,pPosX,pPosY)
{
	if(this.estadoApplet==1)
		return;
	
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}
	
	this.estadoEdit = false;
	this.estadoRec = false;
	
	this.posXNodo = pPosX;
	this.posYNodo = pPosY;
	this.nodoActual = pNodo;
	if(pNodo==null)
		top.ifContenido.location = this.pathArchivos+'tipoNodo.htm';
	else
	{
		if(this.nodoActual.tipo=="C")
			top.ifContenido.location = this.pathArchivos+"editarConcepto.htm";
		else
			top.ifContenido.location = this.pathArchivos+"editarFrase.htm";
	}
}

function fEditorEditarConcepto_A(pNombre, pImagen, pColor, pRecursos)
{
	var vistas = top.ifMapa.mapa1.vistas;
	var infoVistas = "";
	var i;
	var idImagen;
	for(i=0;i< vistas.lista.length;i++)
	{
		if (this.nodoActual!=null)
			idImagen = vistas.lista[i].nodos[""+this.nodoActual.id].idImagen;
		else
			idImagen = 0;
		if(infoVistas!="") infoVistas += "¦¦";
		infoVistas += vistas.lista[i].id
			+ "¦" + idImagen
			+ "¦" + vistas.lista[i].colorLinia
			+ "¦" + vistas.lista[i].colorLetra
			+ "¦" + vistas.lista[i].tipoLetra
			+ "¦" + vistas.lista[i].tamano
			+ "¦" + vistas.lista[i].estilo
			+ "¦" + vistas.lista[i].colorFondo
			+ "¦" + vistas.lista[i].colorLetraAt;
	}
	var idNodo;
	if (this.nodoActual!=null)
		idNodo = this.nodoActual.id;
	else
		idNodo = top.ifMapa.mapa1.nuevoIdNodo;
	var parametros = idNodo
		+ "¦¦¦" + pNombre
		+ "¦¦¦" + pColor
		+ "¦¦¦" + pImagen
		+ "¦¦¦C¦¦¦" + infoVistas;

	this.nombreAux = pNombre;
	this.colorAux = pColor;
	this.imagenAux = pImagen;
	this.recursosAux = pRecursos;
	
	this.estadoApplet = 1;
	document.sapplet.generarNodoJS(parametros);
}

function fEditorEditarConcepto(pParams)
{
	if(pParams.indexOf("Error")!=-1)
	{
		var arrayAux = pParams.split("×");
		this.tituloMensaje = "Editar Concepto";
		this.mensaje = "Error: "  + arrayAux[1];
		top.ifContenido.location = "verMensaje.htm";
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
		return false;
	}
	if(this.nodoActual==null)
	{
		infoVistas = pParams;
		top.ifMapa.mapa1.eAnadirConcepto(this.nombreAux, this.imagenAux, this.colorAux, this.recursosAux, this.posXNodo, this.posYNodo, infoVistas);
		top.ifContenido.location = "editarMapa.htm";
	}
	else
	{
		infoVistas = pParams;
		top.ifMapa.mapa1.eModifConcepto(this.nodoActual,this.nombreAux, this.imagenAux, this.colorAux, this.recursosAux, infoVistas);
		top.ifContenido.location = "editarMapa.htm";
	}
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorPermisoBorrarConcepto(pNodo)
{
	var i;
	var encontrado;
	var fraseActual;
	for(i=0;i<pNodo.origen.lista.length;i++)
	{
		fraseActual = pNodo.origen.lista[i];
		if ((fraseActual.origen.lista.length==1) && (fraseActual.origen.lista[0].id==pNodo.id))
			return false;
		if ((fraseActual.destino.lista.length==1) && (fraseActual.destino.lista[0].id==pNodo.id))
			return false;
	}
	for(i=0;i<pNodo.destino.lista.length;i++)
	{
		fraseActual = pNodo.destino.lista[i];
		if ((fraseActual.origen.lista.length==1) && (fraseActual.origen.lista[0].id==pNodo.id))
			return false;
		if ((fraseActual.destino.lista.length==1) && (fraseActual.destino.lista[0].id==pNodo.id))
			return false;
	}
	return true;
}

function fEditorBorrarConcepto_A(pNodo)
{
	if (!this.permisoBorrarConcepto(pNodo))
	{
		alert(pECTxtBorrar_KO);
		return;
	}
	if(confirm(pECTxtConfBorrar.replace("#nombre#",pNodo.nombre)))
	{
		this.nodoActual = pNodo;

		var vistas = top.ifMapa.mapa1.vistas;
		var infoVistas = "";
		var i;
		for(i=0;i< vistas.lista.length;i++)
		{
			if(infoVistas!="") infoVistas += "¦";
			infoVistas += pNodo.id + "_" + vistas.lista[i].id + "_" + vistas.lista[i].nodos[""+pNodo.id].idImagen;
		}
		var parametros = "C¦¦¦" + infoVistas;
	
		this.estadoApplet = 1;
		document.sapplet.borrarNodoJS(parametros);
	}
}

function fEditorBorrarConcepto()
{
	top.ifMapa.mapa1.eBorrarConcepto(this.nodoActual);
	top.ifContenido.location = "editarMapa.htm";
	this.nodoActual = null;
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorObtenerListaNodos()
{
	return top.ifMapa.mapa1.nodosOrd;
}

function fEditorEditarFrase_A(pNombre, pDireccion, pGrosor, pColor, pOrigen, pDestino)
{
	var vistas = top.ifMapa.mapa1.vistas;
	var infoVistas = "";
	var i;
	var idImagen;
	for(i=0;i< vistas.lista.length;i++)
	{
		if (this.nodoActual!=null)
			idImagen = vistas.lista[i].nodos[""+this.nodoActual.id].idImagen;
		else
			idImagen = 0;
		if(infoVistas!="") infoVistas += "¦¦";
		infoVistas += vistas.lista[i].id
			+ "¦" + idImagen
			+ "¦" + vistas.lista[i].colorLinia
			+ "¦" + vistas.lista[i].colorLetra
			+ "¦" + vistas.lista[i].tipoLetra
			+ "¦" + vistas.lista[i].tamano
			+ "¦" + vistas.lista[i].estilo
			+ "¦" + vistas.lista[i].colorFondo
			+ "¦" + vistas.lista[i].colorLetraAt;
	}
	var idNodo;
	if (this.nodoActual!=null)
		idNodo = this.nodoActual.id;
	else
		idNodo = top.ifMapa.mapa1.nuevoIdNodo;
	var parametros = idNodo
		+ "¦¦¦" + pNombre
		+ "¦¦¦" + pColor
		+ "¦¦¦ " 
		+ "¦¦¦F¦¦¦" + infoVistas;

	this.nombreAux = pNombre;
	this.colorAux = pColor;
	this.direccionAux = pDireccion;
	this.grosorAux = pGrosor;
	this.origenAux = pOrigen;
	this.destinoAux = pDestino;
	
	this.estadoApplet = 1;
	document.sapplet.generarNodoJS(parametros);
}

function fEditorEditarFrase(pParams)
{
	if(pParams.indexOf("Error")!=-1)
	{
		var arrayAux = pParams.split("×");
		this.tituloMensaje = "Editar Frase";
		this.mensaje = "Error: "  + arrayAux[1];
		top.ifContenido.location = "verMensaje.htm";
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
		return false;
	}	
	if(this.nodoActual==null)
	{
		infoVistas = pParams;
		top.ifMapa.mapa1.eAnadirFrase(this.nombreAux, this.direccionAux, this.grosorAux, this.colorAux, this.origenAux, this.destinoAux, this.posXNodo, this.posYNodo, infoVistas);
		top.ifContenido.location = "editarMapa.htm";
	}
	else
	{
		infoVistas = pParams;
		top.ifMapa.mapa1.eModifFrase(this.nodoActual,this.nombreAux, this.direccionAux, this.grosorAux, this.colorAux, this.origenAux, this.destinoAux, infoVistas);
		top.ifContenido.location = "editarMapa.htm";
	}
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorBorrarFrase_A(pNodo)
{
	if(confirm(pEFTxtConfBorrrar.replace("#nombre#",pNodo.nombre)))
	{
		this.nodoActual = pNodo;
		var vistas = top.ifMapa.mapa1.vistas;
		var infoVistas = "";
		var i;
		for(i=0;i< vistas.lista.length;i++)
		{
			if(infoVistas!="") infoVistas += "¦";
			infoVistas += pNodo.id + "_" + vistas.lista[i].id + "_" + vistas.lista[i].nodos[""+pNodo.id].idImagen;
		}
		var parametros = "F¦¦¦" + infoVistas;
	
		this.estadoApplet = 1;
		document.sapplet.borrarNodoJS(parametros);
	}
}

function fEditorBorrarFrase()
{
	top.ifMapa.mapa1.eBorrarFrase(this.nodoActual);
	top.ifContenido.location = "editarMapa.htm";
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}


function fEditorVerEditarMapa()
{
	if(this.estadoApplet==1)
		return;
	
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}
	this.estadoEdit = false;
	this.estadoRec = false;

	top.ifContenido.location = "editarMapa.htm";
	top.ifMapa.mapa1.cambiarEstadoEdicion(1);
	var vistaDef = top.ifMapa.mapa1.vistas.lista[0].id;
	top.ifMapa.mapa1.actualizarVista(vistaDef);
	top.ifMapa.mapa1.eMostrarEditar();
	actualizarMenu(0);
}

function fEditorVerConfigMapa()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	top.ifContenido.location = "configMapa.htm";
	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	actualizarMenu(1);
}

function fEditorVerVistas()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	top.ifContenido.location = "vistas.htm";
	actualizarMenu(2);
}

function fEditorVerVistaPreliminar()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confVistaPre)) return;
	}		

	this.codigoDivMapa = top.ifMapa.mapa1.eCodigoDiv("ED");
	this.codigoJSMapa = top.ifMapa.mapa1.eCodigoJS("VP");
	myWin = window.open("./mapa/mapaVP.htm");
}

function fEditorVerImportar()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	top.ifContenido.location = "importar.htm";
	actualizarMenu(4);
}

function fEditorVerGuardar()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	if(top.ifMapa.mapa1.nodosOrd.lista.length<=0)
	{
		alert(pGKo_2);
		return;
	}
	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	top.ifContenido.location = "guardar.htm";
	actualizarMenu(5);	
}

function fEditorVerAyuda()
{
	if(this.estadoApplet==1)
		return;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	top.ifContenido.location = "ayudaEditor.htm";
	actualizarMenu(6);
}

function fEditorObtenerVistas()
{
	return top.ifMapa.mapa1.vistas;
}

function fEditorVerEditarVista(pId)
{
	if(this.estadoApplet==1)
		return false;
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}		
	this.estadoEdit = false;
	this.estadoRec = false;

	if(pId!=null)
	{
		this.vistaActual = top.ifMapa.mapa1.vistas.buscar(pId);
		top.ifMapa.mapa1.actualizarVista(pId);
	}
	else
		this.vistaActual = null;
	top.ifContenido.location = "editarVista.htm";
}

function fEditorMoverVista(pPosVista, pDireccion)
{
	var vistas = top.ifMapa.mapa1.vistas.lista;
	var vistaAux;
	if ((pDireccion==-1) && (pPosVista>0))
	{
		posInt = pPosVista - 1;
	}
	if ((pDireccion==1) && (posActual<vistas.length-1) && (pPosVista>=0))
	{
		posInt = pPosVista + 1;
	}
	if(posInt!=-1)
	{
		vistaAux = vistas[posInt];
		vistas[posInt] = vistas[pPosVista];
		vistas[pPosVista] = vistaAux;
	}	
}

function fEditorEditarVista_A(pNombre, pEstilo, pColorLinia, pColorLetra, pColorLetraAt,
	pColorFondo, pTamano, pTipoLetra, pMostrarEnlaces, pMostrarMenu, pMostrarIconos)
{
	this.nombreAux = pNombre;
	this.estiloAux = pEstilo;
	this.colorLiniaAux = pColorLinia;
	this.colorLetraAux = pColorLetra;
	this.colorLetraAtAux = pColorLetraAt;
	this.colorFondoAux = pColorFondo;
	this.tamanoAux = pTamano;
	this.tipoLetraAux = pTipoLetra;
	this.mostrarEnlacesAux = pMostrarEnlaces;
	this.mostrarMenuAux = pMostrarMenu;
	this.mostrarIconosAux = pMostrarIconos;
	this.infoNodosAux = new Array();
	var infoNodos = "";
	var nodoActual;
	var infoNodoActual;
	var infoNodoActualAux;
	var i;
	var idVista;
	var idImagen;
	if (this.vistaActual!=null)
		idVista = this.vistaActual.id;
	else
		idVista = top.ifMapa.mapa1.nuevoIdVista;
	
	for(i=0;i<top.ifMapa.mapa1.nodosOrd.lista.length;i++)
	{
		nodoActual=top.ifMapa.mapa1.nodosOrd.lista[i];
		if(this.vistaActual!=null)
			idImagen = this.vistaActual.nodos[""+nodoActual.id].idImagen;
		else
			idImagen = 0;
		infoNodoActualAux = nodoActual.id
		 + "¦" + idImagen
		 + "¦" + nodoActual.posX
		 + "¦" + nodoActual.posY
		 + "¦" + nodoActual.oculto
		 + "¦" + nodoActual.resaltado;		
		 
		this.infoNodosAux[i] = infoNodoActualAux;
		
		infoNodoActual = nodoActual.id
		 + "¦" + idImagen
		 + "¦" + nodoActual.nombre
		 + "¦" + nodoActual.color
		 + "¦ " + nodoActual.imagen
		 + "¦" + nodoActual.tipo;

	
		if(infoNodos!="") infoNodos += "¦¦";
		infoNodos += infoNodoActual;
	}
	
	var parametros = idVista
		+ "¦¦¦" + pColorLinia
		+ "¦¦¦" + pColorLetra
		+ "¦¦¦" + pTipoLetra
		+ "¦¦¦" + pTamano
		+ "¦¦¦" + pEstilo
		+ "¦¦¦" + pColorFondo
		+ "¦¦¦" + pColorLetraAt
		+ "¦¦¦" + infoNodos;		

	this.estadoApplet = 1;
	document.sapplet.generarVistaJS(parametros);
}

function fEditorEditarVista(pParams)
{
	if(pParams.indexOf("Error")!=-1)
	{
		var arrayAux = pParams.split("×");
		this.tituloMensaje = "Editar Vista";
		this.mensaje = "Error: "  + arrayAux[1];
		top.ifContenido.location = "verMensaje.htm";
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
		return false;
	}	
	var infoNodos = pParams;
	
	if(this.vistaActual==null)
	{
		this.vistaActual = top.ifMapa.mapa1.eAnadirVista(this.nombreAux, this.mostrarMenuAux, this.mostrarEnlacesAux,
		 this.colorLiniaAux, this.colorLetraAux, this.colorLetraAtAux, this.tipoLetraAux, this.tamanoAux, 
		 this.estiloAux, this.colorFondoAux, this.infoNodosAux, infoNodos, this.mostrarIconosAux)
		top.ifMapa.mapa1.actualizarVista(this.vistaActual.id);
		top.ifContenido.location = "vistas.htm";
	}
	else
	{
		idNodo = this.vistaActual.id;
		top.ifMapa.mapa1.eModifVista(this.vistaActual,this.nombreAux, this.mostrarMenuAux, this.mostrarEnlacesAux,
		 this.colorLiniaAux, this.colorLetraAux, this.colorLetraAtAux, this.tipoLetraAux, this.tamanoAux, 
		 this.estiloAux, this.colorFondoAux, this.infoNodosAux, infoNodos, this.mostrarIconosAux)
		top.ifMapa.mapa1.actualizarVista(this.vistaActual.id);
		top.ifContenido.location = "vistas.htm";
	}
	this.infoNodosAux = null;
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorBorrarVista_A(pId)
{
	var vista = top.ifMapa.mapa1.vistas.buscar(pId);
	if(vista!=null)
	{
		if(confirm(pVVTxtConfBorrar.replace("#nombre#",vista.nombre)))
		{
			var parametros="";
			var i;
			for(i=0;i<top.ifMapa.mapa1.nodosOrd.lista.length;i++)
			{
				if(parametros!="") parametros += "¦";
				parametros+=top.ifMapa.mapa1.nodosOrd.lista[i].id + "_" 
					+ vista.id + "_"
					+ vista.nodos[""+top.ifMapa.mapa1.nodosOrd.lista[i].id].idImagen;
			}
			this.vistaActual = vista;
			this.estadoApplet = 1;
			document.sapplet.borrarVistaJS(parametros);
		}
	}
}

function fEditorBorrarVista(pId)
{
	top.ifMapa.mapa1.eBorrarVista(this.vistaActual.id);
	top.ifContenido.actualizarListaVistas();
	this.vistaActual=null;
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorObtenerMapa()
{
	return top.ifMapa.mapa1;
}

function fEditorModifConfigMapa(pTitulo, pAutor, pFecha, pEmail, pVerDatosGen, pVerCentrado, pPosX, pPosY)
{
	top.ifMapa.mapa1.titulo = pTitulo;
	top.ifMapa.mapa1.autor = pAutor;
	top.ifMapa.mapa1.fecha = pFecha;
	top.ifMapa.mapa1.email = pEmail;
	top.ifMapa.mapa1.verDatosGen = pVerDatosGen;
	top.ifMapa.mapa1.verCentrado = pVerCentrado;
	top.ifMapa.mapa1.posX = pPosX;
	top.ifMapa.mapa1.posY = pPosY;
	this.estadoEdit = false;
	this.estadoRec = false;
	this.verEditarMapa();
}

function fEditorGuardarMapa_A(directorio, salida)
{
	var parametros = "";
	top.ifContenido.location = "guardando.htm";
	parametros = top.ifMapa.mapa1.eCodigoJS("")
		+ "¦¦¦" + top.ifMapa.mapa1.eCodigoDiv()
		+ "¦¦¦" + top.ifMapa.mapa1.escapeAHTML(top.ifMapa.mapa1.autor)
		+ "¦¦¦" + top.ifMapa.mapa1.escapeAHTML(top.ifMapa.mapa1.fecha)
		+ "¦¦¦" + top.ifMapa.mapa1.escapeAHTML(top.ifMapa.mapa1.email)
		+ "¦¦¦" + top.ifMapa.mapa1.verCentrado
		+ "¦¦¦" + top.ifMapa.mapa1.posX
		+ "¦¦¦" + top.ifMapa.mapa1.posY
		+ "¦¦¦" + this.eliminarSaltosLiniaHTML(top.ifMapa.mapa1.eDescription())
		+ "¦¦¦" + this.eliminarSaltosLiniaHTML(top.ifMapa.mapa1.eKeywords());
	if(top.ifMapa.mapa1.titulo=="")
		parametros += "¦¦¦" + this.eliminarSaltosLinia(top.ifMapa.mapa1.ePrimerNodo());
	else
		parametros += "¦¦¦" + top.ifMapa.mapa1.escapeAHTML(top.ifMapa.mapa1.titulo);
	parametros += "¦¦¦" + directorio;
	parametros += "¦¦¦" + salida;
	this.directorioSalida = directorio;
		
	this.estadoApplet = 1;
	document.sapplet.guardarMapaJS(parametros);
}

function fEditorGuardarMapa()
{
	this.tituloMensaje = pG3Titulos[0].texto;
	this.mensaje = txtMapaOK.replace("#DIR#",this.directorioSalida);
	top.ifContenido.location = "verMensaje.htm";
	actualizarMenu(-1);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}


function fEditorGuardarMapaXTM_A(directorio, salida)
{
	var parametros = "";
	top.ifContenido.location = "guardando.htm";
	
	var infoMapa = "";
	var infoConceptos = "";
	var infoFrases = "";
	var mapa = top.ifMapa.mapa1;
	if(mapa.autor=="")
		infoMapa = " ";
	else
		infoMapa = mapa.autor;
	if(mapa.fecha=="")
		infoMapa += "¦¦ "
	else
		infoMapa += "¦¦" + mapa.fecha
	if(mapa.email=="")
		infoMapa += "¦¦ ";
	else
		infoMapa += "¦¦" + mapa.email;
	
	var i,j;
	var nodo;
	var strNodo;
	var strAux;
	for(i=0;i<mapa.nodosOrd.lista.length;i++)
	{
		nodo = mapa.nodosOrd.lista[i];
		strNodo = "";
		if(nodo.tipo=="C")
		{
			strNodo = nodo.id
				+ "¦" + nodo.posX
				+ "¦" + nodo.posY
				+ "¦" + nodo.nombre;
			strAux = "";
			for(j=0;j<nodo.recursos.lista.length;j++)
			{
				if(strAux!="") strAux += "××";

				strAux += nodo.recursos.lista[j].id 
				strAux += "×" + nodo.recursos.lista[j].nombre 
				strAux += "×" + nodo.recursos.lista[j].tipo  
				strAux += "×" + nodo.recursos.lista[j].tipoDireccion 
				if(nodo.recursos.lista[j].direccion=="")
					strAux += "× " 
				else
					strAux += "×" + nodo.recursos.lista[j].direccion;
				if(nodo.recursos.lista[j].descripcion=="")
					strAux += "× " 
				else
					strAux += "×" + nodo.recursos.lista[j].descripcion;
			}
			if(strAux=="")
				strNodo += "¦ ";
			else
				strNodo += "¦" + strAux;
				
			if (infoConceptos!="") infoConceptos += "¦¦";
			infoConceptos += strNodo;
		}
		
		if(nodo.tipo=="F")
		{
			strNodo = nodo.id
				+ "¦" + nodo.posX
				+ "¦" + nodo.posY
				+ "¦" + nodo.nombre
				+ "¦" + nodo.direccion;
			strAux = "";
			for(j=0;j<nodo.origen.lista.length;j++)
			{
				if(strAux!="") strAux += ",";
				strAux += nodo.origen.lista[j].id + "_" + nodo.origen.lista[j].posX + "_" + nodo.origen.lista[j].posY;
			}
			strNodo	+= "×" + strAux;
			strAux = "";
			for(j=0;j<nodo.destino.lista.length;j++)
			{
				if(strAux!="") strAux += ",";
				strAux += nodo.destino.lista[j].id + "_" + nodo.destino.lista[j].posX + "_" + nodo.destino.lista[j].posY;
			}
			strNodo	+= "×" + strAux;

			if (infoFrases!="") infoFrases += "¦¦";
			infoFrases += strNodo;
		}
	}
	
	if(infoFrases=="") infoFrases = " ";
	parametros = infoMapa + "¦¦¦" + infoConceptos + "¦¦¦" + infoFrases + "¦¦¦" + directorio + "¦¦¦" + salida;
	this.directorioSalida = directorio;
	this.estadoApplet = 1;
	document.sapplet.exportarMapaXTMJS(parametros);
}

function fEditorGuardarMapaXTM()
{
	this.tituloMensaje = pG3Titulos[0].texto;
	this.mensaje = txtMapaOK.replace("#DIR#",this.directorioSalida);
	top.ifContenido.location = "verMensaje.htm";
	actualizarMenu(-1);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}


function fEditorGuardarMapaXCM3_A(directorio, salida)
{
	var parametros = "";
	top.ifContenido.location = "guardando.htm";
	
	var infoMapa = "";
	var infoConceptos = "";
	var infoFrases = "";
	var mapa = top.ifMapa.mapa1;
	var vistaDef = mapa.vistas.lista[0];
	infoMapa = vistaDef.tipoLetra
		+ "¦¦" + vistaDef.tamano
		+ "¦¦" + mapa.ancho
		+ "¦¦" + mapa.alto
		;
	
	var i,j;
	var nodo;
	var nodoAux;
	var strNodo;
	var strAux;
	var offSetX = 20;
	var offSetY = 20;
	for(i=0;i<mapa.nodosOrd.lista.length;i++)
	{
		nodo = mapa.nodosOrd.lista[i];
		nodoAux = vistaDef.nodos[""+nodo.id];
		strNodo = "";
		if(nodo.tipo=="C")
		{
			strNodo = nodo.id
				+ "¦" + (nodoAux.posX + offSetX + Math.round(nodoAux.width/2))
				+ "¦" + (nodoAux.posY + offSetY + Math.round(nodoAux.height/2))
				+ "¦" + this.prepararNombreXCM(nodo.nombre);
			strAux = "";
			for(j=0;j<nodo.recursos.lista.length;j++)
			{
				if(strAux!="") strAux += "××";

				strAux += nodo.recursos.lista[j].id 
				strAux += "×" + nodo.recursos.lista[j].nombre 
				strAux += "×" + nodo.recursos.lista[j].tipo  
				strAux += "×" + nodo.recursos.lista[j].tipoDireccion 
				if(nodo.recursos.lista[j].direccion=="")
					strAux += "× " 
				else
					strAux += "×" + nodo.recursos.lista[j].direccion;
				if(nodo.recursos.lista[j].descripcion=="")
					strAux += "× " 
				else
					strAux += "×" + nodo.recursos.lista[j].descripcion;
			}
			if(strAux=="")
				strNodo += "¦ ";
			else
				strNodo += "¦" + strAux;
				
			if (infoConceptos!="") infoConceptos += "¦¦";
			infoConceptos += strNodo;
		}
		
		if(nodo.tipo=="F")
		{
			strNodo = nodo.id
				+ "¦" + (nodoAux.posX + offSetX + Math.round(nodoAux.width/2))
				+ "¦" + (nodoAux.posY + offSetY + Math.round(nodoAux.height/2))
				+ "¦" + this.prepararNombreXCM(nodo.nombre)
				+ "¦" + nodo.direccion
				+ "¦" + nodo.grosor
				+ "¦" ;
			strAux = "";
			for(j=0;j<nodo.origen.lista.length;j++)
			{
				if(strAux!="") strAux += ",";
				strAux += nodo.origen.lista[j].id + "_" + nodo.origen.lista[j].posX + "_" + nodo.origen.lista[j].posY;
			}
			strNodo	+= strAux;
			strAux = "";
			for(j=0;j<nodo.destino.lista.length;j++)
			{
				if(strAux!="") strAux += ",";
				strAux += nodo.destino.lista[j].id + "_" + nodo.destino.lista[j].posX + "_" + nodo.destino.lista[j].posY;
			}
			strNodo	+= "×" + strAux;

			if (infoFrases!="") infoFrases += "¦¦";
			infoFrases += strNodo;
		}
	}
	if(infoFrases=="") infoFrases = " ";
	parametros = infoMapa + "¦¦¦" + infoConceptos + "¦¦¦" + infoFrases + "¦¦¦" + directorio + "¦¦¦" + salida;
	this.directorioSalida = directorio;
	
	this.estadoApplet = 1;
	document.sapplet.exportarMapaXCM3JS(parametros);
}

function fEditorGuardarMapaXCM3()
{
	this.tituloMensaje = pG3Titulos[0].texto;
	this.mensaje = txtMapaOK.replace("#DIR#",this.directorioSalida);
	top.ifContenido.location = "verMensaje.htm";
	actualizarMenu(-1);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}

function fEditorImportarMapaV3_A(pPath)
{
	top.ifContenido.location = "importando.htm";
	this.estadoApplet = 1;
	document.sapplet.importarMapaV3JS(pPath);
}

function fEditorImportarMapaV3(pCodigoMapa)
{
	if(pCodigoMapa.indexOf("Error×")==0)
	{
		var mensaje = pCodigoMapa.split("×");
		top.ifMapa.document.getElementById("divMapa1").innerHTML='<div id="divRecursos"></div>'
			+ '<div id="divAnadir">[Click para añadir un nodo]</div>';
			
		top.ifMapa.eval( 'mapa1 = new Mapa("1", "'+this.pathImg +'", 1, "", "", "", "", 1, 0, 0, 0,"'+this.nombreDirImg+'");\r\n'
			+ 'mapa1.anadirVista(0,"Mapa inicial", 1, 1, "#000000", "#000000", "#CCCCCC", "Arial", 12, 0, "#FFFFFF",1);\r\n');
		top.ifMapa.mapa1.init();
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Error: " + mensaje[1];
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
	else
	{
		top.ifMapa.eval(pCodigoMapa);
		top.ifMapa.document.getElementById("divMapa1").innerHTML = "";
		top.ifMapa.mapa1.pathImg = this.pathImg;
		top.ifMapa.mapa1.dirImg = this.nombreDirImg;
		top.ifMapa.document.getElementById("divMapa1").innerHTML = top.ifMapa.mapa1.eCodigoDiv("ED")
			+ '<div id="divAnadir"></div>';		
		top.ifMapa.mapa1.eActualizarFotos(this.pathImgNodos);
		top.ifMapa.mapa1.init();
		var rExp = /&#34;/gi;
		tituloAux = top.ifMapa.mapa1.titulo.replace(rExp,"\"");
		autorAux = top.ifMapa.mapa1.autor.replace(rExp,"\"");
		rExp = /&#39;/gi;
		tituloAux = tituloAux.replace(rExp,"'");
		autorAux = autorAux.replace(rExp,"'");
		top.ifMapa.mapa1.titulo = tituloAux;
		top.ifMapa.mapa1.autor = autorAux;
		
		top.ifMapa.mapa1.cambiarEstadoEdicion(2);
		var vistaDef = top.ifMapa.mapa1.vistas.lista[0].id;
		top.ifMapa.mapa1.actualizarVista(vistaDef);
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Importación realizada con éxito";
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
}

function fEditorImportarMapaV2_A(pPath)
{
	this.importandoCargado = false;
	this.codigoImportar = "";
	top.ifContenido.location = "importandoV2.htm";
	this.estadoApplet = 1;
	document.sapplet.importarMapaV2JS(pPath);
}

function fEditorImportarMapaV2(pCodigoMapa)
{
	if(pCodigoMapa.indexOf("Error×")==0)
	{
		var mensaje = pCodigoMapa.split("×");
		top.ifMapa.document.getElementById("divMapa1").innerHTML='<div id="divRecursos"></div>'
			+ '<div id="divAnadir">[Click para añadir un nodo]</div>';
			
		top.ifMapa.eval( 'mapa1 = new Mapa("1", "'+this.pathImg +'", 1, "", "", "", "", 1, 0, 0, 0,"'+this.nombreDirImg+'");\r\n'
			+ 'mapa1.anadirVista(0,"Mapa inicial", 1, 1, "#000000", "#000000", "#CCCCCC", "Arial", 12, 0, "#FFFFFF",1);\r\n');
		top.ifMapa.mapa1.init();
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Error: " + mensaje[1];
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
	else
	{
		this.codigoImportar = pCodigoMapa;
		if(!this.importandoCargado)
			setTimeout("top.editor.continuarImportarV2()",100);
		else
			top.editor.continuarImportarV2();
	}
}

function fEditorContinuarImportarV2()
{
	if(!top.editor.importandoCargado)
		setTimeout("top.editor.continuarImportarV2()",100);
	else
	{
		top.ifContenido.eval(this.codigoImportar);

		//obtenemos la lista de vistas del mapa
		var i;
		var mapaV2 = top.ifContenido.mapa;
		var infoVistas = "";
		for(i=0;i<mapaV2.vistas.contenido.length;i++)
		{
			if(infoVistas.length>0) infoVistas += "¦¦¦";
			infoVistas += mapaV2.vistas.contenido[i].id
				+ "¦" + this.CONST_colorLiniaDef
				+ "¦" + this.CONST_colorLetraDef
				+ "¦" + mapaV2.vistas.contenido[i].tipoLetra
				+ "¦" + mapaV2.vistas.contenido[i].tamanoLetra
				+ "¦" + this.CONST_estiloDef
				+ "¦" + this.CONST_colorFondoAtDef
				+ "¦" + this.CONST_colorAtDef;
		}
		var infoNodos = "";
		for(i=0;i<mapaV2.nodos.contenido.length;i++)
		{
			if(infoNodos.length>0) infoNodos += "¦¦";
			infoNodos += mapaV2.nodos.contenido[i].id
				+ "¦0"
				+ "¦" + mapaV2.nodos.contenido[i].nombre;
			if(mapaV2.nodos.contenido[i].tipo=="C")
				infoNodos += "¦" + "#" + this.CONST_arrayDeColores[(mapaV2.nodos.contenido[i].profundidad % this.CONST_arrayDeColores.length)];
			else	
				infoNodos += "¦" + this.CONST_colorNodoDef
			infoNodos += "¦" + " "
				+ "¦" + mapaV2.nodos.contenido[i].tipo;
		}
	
		var parametros = infoVistas + "×" + infoNodos;
		document.sapplet.generarNodosImportacionV2JS(parametros);
	}
}

function fEditorGenerarNodosImpV2(pParam)
{
	if(pParam.indexOf("Error×")==0)
	{
		var mensaje = pParam.split("×");
		top.ifMapa.document.getElementById("divMapa1").innerHTML='<div id="divRecursos"></div>'
			+ '<div id="divAnadir">[Click para añadir un nodo]</div>';
			
		top.ifMapa.eval( 'mapa1 = new Mapa("1", "'+this.pathImg +'", 1, "", "", "", "", 1, 0, 0, 0,"'+this.nombreDirImg+'");\r\n'
			+ 'mapa1.anadirVista(0,"Mapa inicial", 1, 1, "#000000", "#000000", "#CCCCCC", "Arial", 12, 0, "#FFFFFF",1);\r\n');
		top.ifMapa.mapa1.init();
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Error: " + mensaje[1];
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
		return;
	}
	
	//creamos el mapa
	var mapaV2 = top.ifContenido.mapa;
	top.ifMapa.eval('mapa1 = new Mapa("1", "' + top.editor.pathImg + '", 1, "", "' + mapaV2.autor 
		+ '", "' + mapaV2.fecha
		+ '", "' + mapaV2.email
		+ '", ' + mapaV2.datosGenerales
		+ ', ' + mapaV2.centrado
		+ ', ' + mapaV2.posX
		+ ', ' + mapaV2.posY + ',"'+this.nombreDirImg+'");');
		
	var mapaV3 = top.ifMapa.mapa1;

	var i,j;
	var nodoActual;
	var color = this.CONST_colorNodoDef;
	//anadimos los conceptos
	for(i=0;i<mapaV2.nodos.contenido.length;i++)
	{
		nodoActual = mapaV2.nodos.contenido[i];
		if(nodoActual.tipo=="C")
		{
			color = "#" + this.CONST_arrayDeColores[(mapaV2.nodos.contenido[i].profundidad % this.CONST_arrayDeColores.length)];
			mapaV3.anadirConcepto(nodoActual.id, nodoActual.nombre, "", color);
			for(j=0;j<nodoActual.recursos.contenido.length>0;j++)
			{
				mapaV3.anadirRecurso(nodoActual.id,
					nodoActual.recursos.contenido[j].nombre,
					nodoActual.recursos.contenido[j].tipo,
					nodoActual.recursos.contenido[j].descripcion,
					nodoActual.recursos.contenido[j].direccion,
					nodoActual.recursos.contenido[j].tipoDireccion);
			}
		}
	}
	
	//anadimos las frases
	var listaOrigen, listaDestino;
	for(i=0;i<mapaV2.nodos.contenido.length;i++)
	{
		nodoActual = mapaV2.nodos.contenido[i];
		if(nodoActual.tipo=="F")
		{
			listaOrigen = new Array();
			listaOrigen[0] = nodoActual.padre.id;
			listaDestino = new Array();
			for(j=0;j<nodoActual.hijos.contenido.length;j++)
			{
				listaDestino[j] = nodoActual.hijos.contenido[j].id;
			}
			mapaV3.anadirFrase(nodoActual.id,nodoActual.nombre,this.CONST_colorNodoDef,listaOrigen,listaDestino,this.CONST_direccionDef,this.CONST_grosorDef);
		}
	}	
	
	//anadimos las vistas
	var vistaActual;
	var infoNodos = pParam.split("¦");
	var k;
	var infoTam, infoNodosVista;
	var atenuadoAux;
	for(i=0;i<mapaV2.vistas.contenido.length;i++)
	{
		vistaActual = mapaV2.vistas.contenido[i];
		mapaV3.anadirVista(vistaActual.id,
			vistaActual.nombre,
			vistaActual.menu,
			vistaActual.enlaces,
			this.CONST_colorLiniaDef,
			this.CONST_colorLetraDef,
			this.CONST_colorAtDef,
			this.CONST_arrayTipoLetra[vistaActual.tipoLetra],
			vistaActual.tamanoLetra,
			this.CONST_estiloDef,
			this.CONST_colorFondoAtDef,
			this.CONST_estadoIconos);
		
		mapaV2.resetVistaActual(vistaActual.id, 0);
		//ponemos a visible i desplegado todos los nodos para que se calculen bien las posiciones en el arbol
		for(j=0;j<mapaV2.nodos.contenido.length;j++)
		{
			mapaV2.nodos.contenido[j].plegado = false;
			mapaV2.nodos.contenido[j].visible = true;
			mapaV2.nodos.contenido[j].atenuado = false;		
		}
		//calculamos las posiciones de los nodos para la vista actual
		infoNodosVista = infoNodos[i].split(",");
		for(j=0;j<vistaActual.infoNodos.contenido.length;j++)
		{
			for(k=0;k<infoNodosVista.length;k++)
			{
				infoTam = infoNodosVista[k].split("×");
				mapaV2.nodos.contenido[k].ancho = parseInt(infoTam[0]);
				mapaV2.nodos.contenido[k].alto = parseInt(infoTam[1]);
			}
		}
		mapaV2.calcularPosicionesAux(10,10, 0, vistaActual.id)
		
		//creamos la informacion de la vista
		for(j=0;j<vistaActual.infoNodos.contenido.length;j++)
		{
			if(vistaActual.infoNodos.contenido[j].atenuado) atenuadoAux=2;
			atenuadoAux=0;
			mapaV3.anadirInfoVista(vistaActual.id,
				mapaV2.nodos.contenido[j].id,
				1,
				mapaV2.nodos.contenido[j].x,
				mapaV2.nodos.contenido[j].y,
				mapaV2.nodos.contenido[j].ancho,
				mapaV2.nodos.contenido[j].alto,
				!vistaActual.infoNodos.contenido[j].visible,
				atenuadoAux);
		}
	}

	top.ifMapa.document.getElementById("divMapa1").innerHTML = "";
	top.ifMapa.document.getElementById("divMapa1").innerHTML = top.ifMapa.mapa1.eCodigoDiv("ED")
		+ '<div id="divAnadir"></div>';		
	top.ifMapa.mapa1.pathImg = this.pathImg;
	top.ifMapa.mapa1.eActualizarFotos(this.pathImgNodos);
	top.ifMapa.mapa1.init();
	top.ifMapa.mapa1.cambiarEstadoEdicion(2);
	var vistaDef = top.ifMapa.mapa1.vistas.lista[0].id;
	top.ifMapa.mapa1.actualizarVista(vistaDef);
	this.tituloMensaje = "Importar Mapa";
	this.mensaje = "Importación realizada con éxito";
	top.ifContenido.location = "verMensaje.htm";
	actualizarMenu(-1);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;	
}

function fEditorImportarMapaXTM_A(pPath)
{
	top.ifContenido.location = "importando.htm";
	this.estadoApplet = 1;
	document.sapplet.importarMapaXTMJS(pPath);
}

function fEditorImportarMapaXTM(pCodigoMapa)
{
	if(pCodigoMapa.indexOf("Error×")==0)
	{
		var mensaje = pCodigoMapa.split("×");
		top.ifMapa.document.getElementById("divMapa1").innerHTML='<div id="divRecursos"></div>'
			+ '<div id="divAnadir">[Click para añadir un nodo]</div>';
			
		top.ifMapa.eval( 'mapa1 = new Mapa("1", "'+this.pathImg+'", 1, "", "", "", "", 1, 0, 0, 0,"'+this.nombreDirImg+'");\r\n'
			+ 'mapa1.anadirVista(0,"Mapa inicial", 1, 1, "#000000", "#000000", "#CCCCCC", "Arial", 12, 0, "#FFFFFF",1);\r\n');
		top.ifMapa.mapa1.init();
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Error: " + mensaje[1];
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
	else
	{
		var aux = pCodigoMapa.split("×××");
		var i;
		top.ifMapa.eval(pCodigoMapa);
		top.ifMapa.document.getElementById("divMapa1").innerHTML = "";
		top.ifMapa.mapa1.pathImg = this.pathImg;
		top.ifMapa.mapa1.dirImg = this.nombreDirImg;
		top.ifMapa.document.getElementById("divMapa1").innerHTML = top.ifMapa.mapa1.eCodigoDiv("ED")
			+ '<div id="divAnadir"></div>';		
//		top.ifMapa.mapa1.eActualizarFotos(this.pathImgNodos);
		top.ifMapa.mapa1.init();
		top.ifMapa.mapa1.cambiarEstadoEdicion(2);
		var vistaDef = top.ifMapa.mapa1.vistas.lista[0].id;
		top.ifMapa.mapa1.actualizarVista(vistaDef);
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Importación realizada con éxito";
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
}


function fEditorImportarMapaXCM3_A(pPath)
{
	top.ifContenido.location = "importando.htm";
	this.estadoApplet = 1;
	document.sapplet.importarMapaXCM3JS(pPath);
}

function fEditorImportarMapaXCM3(pCodigoMapa)
{
	if(pCodigoMapa.indexOf("Error×")==0)
	{
		var mensaje = pCodigoMapa.split("×");
		top.ifMapa.document.getElementById("divMapa1").innerHTML='<div id="divRecursos"></div>'
			+ '<div id="divAnadir">[Click para añadir un nodo]</div>';
			
		top.ifMapa.eval( 'mapa1 = new Mapa("1", "'+this.pathImg+'", 1, "", "", "", "", 1, 0, 0, 0,"'+this.nombreDirImg+'");\r\n'
			+ 'mapa1.anadirVista(0,"Mapa inicial", 1, 1, "#000000", "#000000", "#CCCCCC", "Arial", 12, 0, "#FFFFFF",1);\r\n');
		top.ifMapa.mapa1.init();
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Error: " + mensaje[1];
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
	else
	{
		var aux = pCodigoMapa.split("×××");
		var i;
		top.ifMapa.eval(pCodigoMapa);
		top.ifMapa.document.getElementById("divMapa1").innerHTML = "";

		top.ifMapa.mapa1.pathImg = this.pathImg;
		top.ifMapa.mapa1.dirImg = this.nombreDirImg;

		top.ifMapa.document.getElementById("divMapa1").innerHTML = top.ifMapa.mapa1.eCodigoDiv("ED")
			+ '<div id="divAnadir"></div>';		
//		top.ifMapa.mapa1.eActualizarFotos(this.pathImgNodos);
		top.ifMapa.mapa1.init();
		top.ifMapa.mapa1.cambiarEstadoEdicion(2);
		var vistaDef = top.ifMapa.mapa1.vistas.lista[0].id;
		top.ifMapa.mapa1.actualizarVista(vistaDef);
		this.tituloMensaje = "Importar Mapa";
		this.mensaje = "Importación realizada con éxito";
		top.ifContenido.location = "verMensaje.htm";
		actualizarMenu(-1);
		this.estadoApplet = 0;
		this.estadoEdit = false;
		this.estadoRec = false;
	}
}

function fEditorPrepararNombreXCM(pTexto)
{
	var resp = pTexto;
	var re = /\n/gi;	
	resp = resp.replace(re,"\^linebreak\\$");
	re = /\r/gi;	
	resp = resp.replace(re,"");
	return resp;
}


function fEditorEliminarSaltosLinia(pTexto)
{
	var resp = pTexto;
	var re = /\n/gi;	
	resp = resp.replace(re," ");
	re = /\r/gi;	
	resp = resp.replace(re,"");
	return resp;
}

function fEditorEliminarSaltosLiniaHTML(pTexto)
{
	var resp = pTexto;
	var re = /<BR>/gi;	
	resp = resp.replace(re," ");
	return resp;
}

function fEditorActualizarEstado()
{
	this.estadoEdit = true;
}

function fEditorCancelarAccion()
{
	if (this.estadoEdit ||	this.estadoRec)
	{
		if (!confirm(confCancelMapa)) return;
	}
	this.estadoEdit = false;
	this.estadoRec = false;
	top.ifContenido.location = "editarMapa.htm";
}

function fEditorDibujarArbol(pId)
{
	this.estadoApplet = 1;
	top.ifMapa.mapa1.eDibujarArbol(pId, this.vistaActual);
	this.estadoApplet = 0;
	this.estadoEdit = false;
	this.estadoRec = false;
}