
function MostrarNotasUsuario(ref, contenedor){

	var re = new RegExp("/","ig");
	var id_previa = "#prev_doc_" + ref.replace(re, "_");

	id_previa = id_previa + ">#marco_documento";

	$(id_previa, contenedor).find(".contenedor_notas_usuario").show();
	if($(id_previa, contenedor).find("#crear_nota_usuario").length == 0){
		$(id_previa, contenedor).find(".contenedor_notas_usuario").prepend("<div id='crear_nota_usuario'><a href='javascript:void(null)'>crear nueva nota</a></div>");
		$(id_previa, contenedor).find("#crear_nota_usuario>a:first").click(function(){
			MostrarFormNotasDeUsuario(ref, contenedor);
		});
	}
	ListarNotasDeUsuario(ref, contenedor);
	
}

function ListarNotasDeUsuario(Ref, contenedor){

	var re = new RegExp("/","ig");
	var id_previa = "#prev_doc_" + Ref.replace(re, "_");

	id_previa = id_previa + ">#marco_documento>.contenedor_notas_usuario";

	$.ajax({
		async:		true,
		type:		"GET",		
		cache:		false,
		url:		"/visor/ajax_listar_notas.asp",
		data:		"ref=" + Ref,
		beforeSend: function(){
			$(id_previa, contenedor).find("#lst_notas_de_usuario").remove();
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").after("<div id='lst_notas_de_usuario'><\/div>");
			$(id_previa, contenedor).find("#lst_notas_de_usuario").html("<img src='/comunes/imagenes/spinner.gif' \/>&nbsp;Buscando...");
		},
		success:	function(html){
			if(html == "")
				html  = "<span class='msg_no_hay_notas'>(Este documento no tiene notas asociadas)<\/span>";
			$(id_previa, contenedor).find("#lst_notas_de_usuario").html(html);
		},
		error:		function(){
			$(id_previa, contenedor).find("#lst_notas_de_usuario").remove();
			alert("Error cargando las notas de usuario de este documento");
		}
	});

}

function MostrarFormNotasDeUsuario(ref, contenedor){

	var re = new RegExp("/","ig");
	var id_previa = "#prev_doc_" + ref.replace(re, "_");

	id_previa = id_previa + ">#marco_documento>.contenedor_notas_usuario";

	$.ajax({
		async:		true,
		type:		"GET",		
		cache:		false,
		url:		"/visor/ajax_form_nota.asp",
		data:		"referencia=" + ref,
		beforeSend: function(){
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").show();
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").html("<img src='/comunes/imagenes/spinner.gif' \/>&nbsp;Cargando...");
		},
		success:	function(html){
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").html(html);
	
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input:checkbox").hide();
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input:checkbox").checkbox({cls:"jquery-safari-checkbox"});
				
				
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input:radio").hide();
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input:radio").checkbox({cls:"jquery-safari-radio-buttons"});
			
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input#btnGuardar").click(function(){
				CrearNota(ref);
			});

			$(id_previa, contenedor).find("#contenedor_form_nota_usuario input#btnCancelar").click(function(){
				$(id_previa, contenedor).find("#contenedor_form_nota_usuario").empty();
			});
		},
		error:		function(){
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").empty();
			$(id_previa, contenedor).find("#contenedor_form_nota_usuario").hide();
			alert("Error cargando las notas de usuario de este documento");
		}
	});

}

function CrearNota(ref){

	var re = new RegExp("/","ig");
	var id_previa = "#prev_doc_" + ref.replace(re, "_");
	var privada, mostrar_autor;

	id_previa = id_previa + ">#marco_documento>.contenedor_notas_usuario";
	
	if($(id_previa + " #nota_privada").attr("checked"))
		privada = 1;
	else
		privada = 0;
	
	if($(id_previa + " #mostrar_autor").attr("checked"))
		mostrar_autor = 1;
	else
		mostrar_autor = 0;
	
	if($(id_previa + " #texto_nota").val() != ""){
		$.ajax({
			type: "GET", 
			url: "/visor/ajax_guardar_nota.asp",
			data: "ref=" + ref + "&texto_nota=" + $("#texto_nota").val() + "&privada=" + privada + "&mostrar_autor=" + mostrar_autor,
			cache: false,
			async: true,
			beforeSend: function(){
				$(id_previa + " #form_nota_usuario *").attr("disabled", "disabled");
			},
			success: function(html){
				ListarNotasDeUsuario(ref);
			},
			error: function(){
				alert("Error guardando la nota de usuario.");
			}
		});
		$(id_previa + ">#form_nota_usuario *").removeAttr("disabled");
		$(id_previa + ">#contenedor_form_nota_usuario").empty();
		$(id_previa + ">#contenedor_form_nota_usuario").hide();
	}
	
}

function EliminarNotaUsuario(Id, Ref){

	$.ajax({
		type: "GET", 
		url: "/visor/ajax_eliminar_nota.asp",
		data: "id=" + Id,
		cache: false,
		async: true,
		success: function(html){
			ListarNotasDeUsuario(Ref);
		},
		error: function(){
			alert("Error eliminando la nota de usuario.");
		}
	});
}

