function CargarFavoritos(){
		
	$.ajax({
		type: "GET",
		url: "/servicios_n/favoritos/ajax_cont_favoritos.asp",
		cache: false,
		async: false,
		beforeSend: function(){
			$("#criterios_busqueda ~ div").not("#contenido_inicio").remove();
			$("#criterios_busqueda").after('<div id="contenido_carpetas"></div>');
		},
		success: function(html){
			$("#contenido_carpetas").html(html);
		},
		error: function(){
			alert("Error cargando zona general de carpetas.");
		}
	});

	var NodoRaiz = "<ul><li id='nodo_raiz_favoritos' class='root'>Carpetas y documentos";
	NodoRaiz = NodoRaiz + "&nbsp;<a href='javascript:void(null)' onclick='CargarFavoritos();'>actualizar</a>";
	NodoRaiz = NodoRaiz + "<\/li><\/ul>";
		
	$.ajax({
		type: "GET",
		url: "/servicios_n/favoritos/ajax_listar.asp",
		cache: false,
		async: true,
		beforeSend: function(){
			$("#arbol_favoritos").html("<img src='/comunes/imagenes/spinner.gif'/>&nbsp;Cargando...");
		},
		success: function(html){
			$("#arbol_favoritos").html(NodoRaiz);
			$("#nodo_raiz_favoritos").append(html);
			$("#arbol_favoritos input:checkbox").hide();
			$("#arbol_favoritos input:checkbox").checkbox({
				cls: "jquery-safari-checkbox"
			});
				
			$("#arbol_favoritos").SimpleTree({
				animate: true,
				autoclose: false,
				click: function(el){
					if ($(el).attr("tipo") == 'con_hijos') {
						if ($(el).nextAll("ul").css("display") == "none") 
							$(el).prevAll(".toggler").trigger('click');
						if($(el).attr("id") == "0"){
							$(".barra_acciones_carpeta").hide();
							$(el).next(".barra_acciones_carpeta").fadeIn();
						}
					}
					else {
						VerDocumentoInline(el);
					}
				},
				success: function(){
					$("#arbol_favoritos input:checkbox").hide();
					$("#arbol_favoritos input:checkbox").checkbox({
						cls: "jquery-safari-checkbox"
					});
				}
			});
		},
		error: function(){
			alert("Error cargando la rama inicial de favoritos.");
		}
	});
}

function PedirNombreCarpetaFavoritos(X, Y){

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_renombrar_carpeta.asp",
		cache: false,
		async: false,
		success: function(html){
			mostrarVentanaEmergente("vCarpetasFavoritos", html, X, Y);
			$("#txtNombreCarpeta").focus(); 
			$("#btnSelCarpetaCancelar").click(function(){
				eliminarVentanaEmergente("vCarpetasFavoritos")
			});
		},
		error: function(){
			alert("Error al pedir nombre nuevo para carpeta.");
		}
	});

}

function SeleccionarCarpetaFavoritos(X, Y, qString){

	qString = qString || "";

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_seleccion_carpeta.asp",
		data: qString,
		cache: false,
		async: false,
		success: function(html){
			mostrarVentanaEmergente("vCarpetasFavoritos", html, X, Y);

			var MostraNivelRaiz;
			
			if(qString == "modo=MOVER_DOCS" || qString == "modo=COPIAR_DOCS" || qString == "modo=CREAR_DOC")
				MostraNivelRaiz = false;
			else{
				MostraNivelRaiz = true;
				$("#txtNombreCarpeta").focus();
			}

			$("#nodo_raiz_solo_carpetas_favoritos").append(ListadoCarpetasFavoritos(MostraNivelRaiz));

			$("#arbol_solo_carpetas_favoritos").SimpleTree({
				animate: true, 
				autoclose: false,
				click:	function(el){
					if($(el).attr("tipo") == 'con_hijos'){
						$(el).prev().trigger('click');
					}else{
						//VerDocumentoInline(el);
					}
				}
			});
			
			$("#btnSelCarpetaCancelar").click(function(){
				eliminarVentanaEmergente("vCarpetasFavoritos")
			});
		},
		error: function(){
			alert("Error cargando la rama inicial de favoritos.");
		}
	});

}

function ListadoCarpetasFavoritos(MostrarRaiz){

	var resultado;
	var URL;
	
	if(MostrarRaiz)
		URL = "/servicios_n/favoritos/ajax_listar.asp?solo_carpetas=1&mostrar_raiz=1";
	else
		URL = "/servicios_n/favoritos/ajax_listar.asp?solo_carpetas=1";

	$.ajax({
		type: "GET", 
		url: URL,
		cache: false,
		async: false,
		success: function(html){
			resultado = html;
		},
		error: function(){
			alert("Error cargando la rama inicial de favoritos.");
			resultado = "";
		}
	});
	
	return resultado;
}

function AdjuntarDocEnFavoritos(Ref, CarpetaDestino){

	CarpetaDestino = CarpetaDestino || -1;

	if(CarpetaDestino == -1){
		SeleccionarCarpetaFavoritos(RatonX, RatonY, "modo=CREAR_DOC");
		$("#btnSelCarpetaAceptar").click(function(){
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			if(CarpetaSeleccionada){
				AdjuntarDocEnFavoritos(Ref, CarpetaSeleccionada);
				eliminarVentanaEmergente("vCarpetasFavoritos")
			}else
				alert("Es necesario que nos indiques la carpeta destino.");
		});
		return false;
	}

	//var aDocs = Ref;

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_operaciones.asp",
		//data: {docs: aDocs, dest: CarpetaDestino, operacion: "CREAR_DOC"},
		//data: "docs=" + aDocs.join("&docs=") + "&dest=" + CarpetaDestino + "&operacion=CREAR_DOC",
		data: "docs=" + Ref + "&dest=" + CarpetaDestino + "&operacion=CREAR_DOC",
		cache: false,
		async: false,
		success: function(html){
			//CargarFavoritos();
		},
		error: function(){
			alert("Error añadiendo documento a favoritos.");
		}
	});
}

function MoverDocumentosFavoritos(CarpetaDestino){

	if(!HayDocsMarcados()){
		alert("Primero tienes que seleccionar algún documento.");
		return false;
	}

	CarpetaDestino = CarpetaDestino || -1;

	if(CarpetaDestino == -1){
		SeleccionarCarpetaFavoritos(RatonX, RatonY, "modo=MOVER_DOCS");
		$("#btnSelCarpetaAceptar").click(function(){
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			if(CarpetaSeleccionada){
				MoverDocumentosFavoritos(CarpetaSeleccionada);
				eliminarVentanaEmergente("vCarpetasFavoritos")
			}else
				alert("Es necesario que nos indiques la carpeta destino.");
		});
		return false;
	}
	
	var idCarpeta = $("#arbol_solo_carpetas_favoritos");
	var aDocs = DocumentosFavoritosMarcados();

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_operaciones.asp",
		//data: {"docs": aDocs, "dest": CarpetaDestino, "operacion": "MOVER_DOCS"},
		data: "docs=" + aDocs.join("&docs=") + "&dest=" + CarpetaDestino + "&operacion=MOVER_DOCS",
		cache: false,
		async: false,
		success: function(html){
			CargarFavoritos();
		},
		error: function(){
			alert("Error moviendo favoritos.");
		}
	});
}

function CopiarDocumentosFavoritos(CarpetaDestino){

	if(!HayDocsMarcados()){
		alert("Primero tienes que seleccionar algún documento.");
		return false;
	}

	CarpetaDestino = CarpetaDestino || -1;

	if(CarpetaDestino == -1){
		SeleccionarCarpetaFavoritos(RatonX, RatonY, "modo=COPIAR_DOCS");
		$("#btnSelCarpetaAceptar").click(function(){
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			if(CarpetaSeleccionada){
				CopiarDocumentosFavoritos(CarpetaSeleccionada);
				eliminarVentanaEmergente("vCarpetasFavoritos")
			}else
				alert("Es necesario que nos indiques la carpeta destino.");
		});
		return false;
	}
	
	var idCarpeta = $("#arbol_solo_carpetas_favoritos");
	var aDocs = DocumentosFavoritosMarcados();

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_operaciones.asp",
		//data: {docs: aDocs, dest: CarpetaDestino, operacion: "COPIAR_DOCS"},
		data: "docs=" + aDocs.join("&docs=") + "&dest=" + CarpetaDestino + "&operacion=COPIAR_DOCS",
		cache: false,
		async: false,
		success: function(html){
			CargarFavoritos();
		},
		error: function(){
			alert("Error copiando favoritos.");
		}
	});
}

function EliminarDocumentosFavoritos(){

	if(!HayDocsMarcados()){
		alert("Primero tienes que seleccionar algún documento.");
		return false;
	}
	
	if(confirm('¿Quieres eliminar los documentos marcados?')){
		var aDocs = DocumentosFavoritosMarcados();

		$.ajax({
			type: "GET", 
			url: "/servicios_n/favoritos/ajax_operaciones.asp",
			//data: {docs: aDocs, operacion: "ELIMINAR_DOCS"},
			data: "docs=" + aDocs.join("&docs=") + "&operacion=ELIMINAR_DOCS",
			cache: false,
			async: false,
			success: function(html){
				CargarFavoritos();
			},
			error: function(){
				alert("Error eliminando favoritos.");
			}
		});
	}
}

function VerDocumentosFavoritosSeleccionados(){

	if(HayDocsMarcados()){
		var aDocs = DocumentosFavoritosMarcadosRefSP();
		var Referencias = aDocs.join("~");
		var SoloExtractos = 0;
		
		if(confirm("En el caso de las sentencias, ¿quieres ver sólo los extractos?"))
			SoloExtractos = 1;
		window.open("/visor/multiple.asp?solo_extractos=" + SoloExtractos + "&referencias=" + Referencias);
	}else
		alert("Antes debes marcar los documentos que quieres ver.");
}

function CrearCarpetaFavoritos(Nombre, CarpetaDestino){

	Nombre = Nombre || "";
	CarpetaDestino = CarpetaDestino || -1

	if(CarpetaDestino == -1 || Nombre == ""){
		SeleccionarCarpetaFavoritos(RatonX, RatonY, "modo=CREAR_CARPETA");
		$("#btnSelCarpetaAceptar").click(function(){
			var CarpetaNueva = $("#vCarpetasFavoritos #txtNombreCarpeta").val();
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			if(CarpetaSeleccionada){
				if(CarpetaNueva){
					CrearCarpetaFavoritos(CarpetaNueva, CarpetaSeleccionada);
					eliminarVentanaEmergente("vCarpetasFavoritos")
				}else
					alert("Es necesario que nos indiques el nombre de la carpeta nueva.");
			}else
				alert("Es necesario que nos indiques en el árbol donde colocar la carpeta nueva.");
		});
		return false;
	}

	$.ajax({
		type: "GET", 
		url: "/servicios_n/favoritos/ajax_operaciones.asp",
		data: "nombre_carpeta=" + Nombre + "&dest=" + CarpetaDestino + "&operacion=CREAR_CARPETA",
		cache: false,
		async: false,
		success: function(html){
			CargarFavoritos();
		},
		error: function(){
			alert("Error creando carpeta de favoritos.");
		}
	});
}

function RenombrarCarpetaFavoritos(IdCarpeta, NuevoNombre){

	var IdCarpeta = IdCarpeta || "";
	
	if(IdCarpeta == ""){
		if($("#arbol_favoritos span.active[tipo='con_hijos']").length > 0){
			IdCarpeta = $("#arbol_favoritos span.active[tipo='con_hijos']").attr("id");
		}else{
			alert("Antes tienes que seleccionar una de las carpetas.");
			return;
		}
	}

	NuevoNombre = NuevoNombre || "";

	if(NuevoNombre == ""){
		PedirNombreCarpetaFavoritos(RatonX, RatonY);
		$("#btnSelCarpetaAceptar").one("click", function(){
			var Nombre = $("#vCarpetasFavoritos #txtNombreCarpeta").val();
			RenombrarCarpetaFavoritos(IdCarpeta, Nombre);
			eliminarVentanaEmergente("vCarpetasFavoritos")
		});
	}

	if(NuevoNombre != ""){
		$.ajax({
			type: "GET", 
			url: "/servicios_n/favoritos/ajax_operaciones.asp",
			data: "origen=" + IdCarpeta + "&nombre_carpeta=" + NuevoNombre + "&operacion=EDITAR_CARPETA",
			cache: false,
			async: false,
			success: function(html){
				CargarFavoritos();
			},
			error: function(){
				alert("Error renombrando carpeta de favoritos.");
			}
		});
	}

}

function MoverCarpetaFavoritos(IdCarpeta, CarpetaDestino){

	var IdCarpeta = IdCarpeta || "";
	
	if(IdCarpeta == ""){
		if($("#arbol_favoritos span.active[tipo='con_hijos']").length > 0){
			IdCarpeta = $("#arbol_favoritos span.active[tipo='con_hijos']").attr("id");
		}else{
			alert("Antes tienes que seleccionar una de las carpetas.");
			return;
		}
	}
	
	CarpetaDestino = CarpetaDestino || -1;

	if(CarpetaDestino == -1){
		SeleccionarCarpetaFavoritos(RatonX, RatonY);
		$("#btnSelCarpetaAceptar").one("click", function(){
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			MoverCarpetaFavoritos(IdCarpeta, CarpetaSeleccionada);
			eliminarVentanaEmergente("vCarpetasFavoritos")
		});
	}

	if(CarpetaDestino != -1){
		$.ajax({
			type: "GET", 
			url: "/servicios_n/favoritos/ajax_operaciones.asp",
			//data: {origen: IdCarpeta, dest: CarpetaDestino, operacion: "MOVER_CARPETA"},
			data: "origen=" + IdCarpeta + "&dest=" + CarpetaDestino + "&operacion=MOVER_CARPETA",
			cache: false,
			async: false,
			success: function(html){
				CargarFavoritos();
			},
			error: function(){
				alert("Error moviendo carpeta de favoritos.");
			}
		});
	}

}

function CopiarCarpetaFavoritos(IdCarpeta, CarpetaDestino){

	var IdCarpeta = IdCarpeta || "";
	
	if(IdCarpeta == ""){
		if($("#arbol_favoritos span.active[tipo='con_hijos']").length > 0){
			IdCarpeta = $("#arbol_favoritos span.active[tipo='con_hijos']").attr("id");
		}else{
			alert("Antes tienes que seleccionar una de las carpetas.");
			return;
		}
	}

	CarpetaDestino = CarpetaDestino || -1;

	if(CarpetaDestino == -1){
		SeleccionarCarpetaFavoritos(RatonX, RatonY);
		$("#btnSelCarpetaAceptar").one("click", function(){
			var CarpetaSeleccionada = $("#arbol_solo_carpetas_favoritos span.active").attr("id");
			CopiarCarpetaFavoritos(IdCarpeta, CarpetaSeleccionada);
			eliminarVentanaEmergente("vCarpetasFavoritos")
		});
	}

	if(CarpetaDestino != -1){
		$.ajax({
			type: "GET", 
			url: "/servicios_n/favoritos/ajax_operaciones.asp",
			//data: {origen: IdCarpeta, dest: CarpetaDestino, operacion: "COPIAR_CARPETA"},
			data: "origen=" + IdCarpeta + "&dest=" + CarpetaDestino + "&operacion=COPIAR_CARPETA",
			cache: false,
			async: false,
			success: function(html){
				CargarFavoritos();
			},
			error: function(){
				alert("Error copiando carpeta de favoritos.");
			}
		});
	}

}

function EliminarCarpetaFavoritos(IdCarpeta){

	var IdCarpeta = IdCarpeta || "";
	
	if(IdCarpeta == ""){
		if($("#arbol_favoritos span.active[tipo='con_hijos']").length > 0){
			IdCarpeta = $("#arbol_favoritos span.active[tipo='con_hijos']").attr("id");
		}else{
			alert("Antes tienes que seleccionar una de las carpetas.");
			return;
		}
	}

	if(confirm("¿Quieres eliminar esta carpeta y sus documentos?")){
		$.ajax({
			type: "GET", 
			url: "/servicios_n/favoritos/ajax_operaciones.asp",
			//data: {origen: IdCarpeta, operacion: "ELIMINAR_CARPETA"},
			data: "origen=" + IdCarpeta + "&operacion=ELIMINAR_CARPETA",
			cache: false,
			async: false,
			success: function(html){
				CargarFavoritos();
			},
			error: function(){
				alert("Error eliminando carpeta de favoritos.");
			}
		});
	}
}

function SeleccionarDocsCarpetaFavoritos(Marcado){

	var IdCarpeta = IdCarpeta || "";
	
	if(IdCarpeta == ""){
		if($("#arbol_favoritos span.active[tipo='con_hijos']").length > 0){
			IdCarpeta = $("#arbol_favoritos span.active[tipo='con_hijos']").attr("id");
		}else{
			alert("Antes tienes que seleccionar una de las carpetas.");
			return;
		}
	}

	//var jqCarpeta = $("#" + IdCarpeta + ".folder-open input:checkbox, #" + IdCarpeta + ".folder-close input:checkbox, #" + IdCarpeta + ".folder-open-last input:checkbox, #" + IdCarpeta + ".folder-close-last input:checkbox");
	var jqCarpeta = $("#" + IdCarpeta + ".folder-open>ul>ul>li>input:checkbox, #" + IdCarpeta + ".folder-open-last>ul>ul>li>input:checkbox");
	
	jqCarpeta.attr("checked", Marcado);

}

function HayDocsMarcados(){

	return($("#arbol_favoritos input:checked").length > 0);
}

function DocumentosFavoritosMarcados(){

	 var sDocs = "";
	
	$("#arbol_favoritos input:checked").each(function(){
		sDocs = sDocs + $(this).parent().attr("id") + ",";
	});
	
	if(sDocs.length > 0){
		sDocs = sDocs.substr(0, sDocs.length - 1);
		return(sDocs.split(","));
	}else
		return(null);
}


function DocumentosFavoritosMarcadosRefSP(){

	 var sDocs = "";
	
	$("#arbol_favoritos input:checked").each(function(){
		sDocs = sDocs + $(this).nextAll("span").eq(1).attr("id") + ",";
	});
	
	if(sDocs.length > 0){
		sDocs = sDocs.substr(0, sDocs.length - 1);
		return(sDocs.split(","));
	}else
		return(null);
}

