class Web { static init() { $(document).ready(function() { $("body").on("click", ".btn-abre-bloque", function(e) { e.preventDefault(); Web.abreBloque($(this).attr("data-bloque")); }); $("body").on("click", ".cerrar-bloque", function(e) { e.preventDefault(); Web.cerrarBloque($(this).parents(".bloque-flotante").attr("id")); }); $("body").on("click", "#cerrarMenu", function() { $(".navbar-toggler").trigger("click"); }); $("body").on("click", ".btn-eliminar-caso", function (e) { e.preventDefault(); let id = $(this).attr("data-id"); ClassBlockUI.abrirBlockUIConfirm("Va a eliminar un caso, ¿Desea continuar?", "Aceptar", function(){ $(".modal").modal("hide"); const successCallback = function (data, textStatus, XMLHttpRequest) { let action = undefined; if (data["error_number"] >= 0) { if (typeof tablatablaCasos != "undefined") tablatablaCasos.ajax.reload(); else action = "https://www.divet.es/casos.html"; } ClassBlockUI.abrirBlockUIEstandarMensaje(data["error_message"], true, action); }; Utils.sendStandardAjax(null, "ajax/Casos.eliminar.php?CSRF="+CSRF+"&id="+id, {successCallback: successCallback}); }, "Cancelar"); }); }); } static initDiagnosticarCaso(idiomaCaso = "es", tipoUsuario, estadoCaso) { $(document).ready(function() { //Web.ckeditors = []; //$.each($(".ckeditor"), function(i, e) { // Web.nuevoCKEditor(e); //}); CKEDITOR.config.contentsCss = "css/ckeditor.css"; //CKEDITOR.config.disableNativeSpellChecker = false; //Activar el ckeditor en los textarea marcados como class=ckeditor $('textarea.ckeditor').each(function() { var editor = CKEDITOR.instances[$(this).attr("id")]; if (editor) { editor.destroy(true); } const idEditor = $(this).attr("id"); const height = $(this).attr("id") == "informacionPrivada" ? 300 : 500; CKEDITOR.replace( idEditor, { language: 'es', toolbar: 'simpleImage2', //extraPlugins: 'uploadimage, image2, autoresizepaste', filebrowserImageUploadUrl: 'uploadImagen.php?a=1&responseType=json&', height: height, on: { instanceReady: function (event) { // Este código se ejecutará cuando el editor esté listo //console.log(event.editor, event.editor.getData()); if (event.editor.getData() == "") { //SI NO SE PONE EL TIMEOUT NANOSPELL NO FUNCIONA BIEN, ESTO SOLO PASA CUANDO SE HACE instanceReady setTimeout(function () { event.editor.execCommand('justifyblock'); //Al hacer execCommand hace que haga scroll al ultimo ckeditor, con esto lo evito document.activeElement.blur(); $("html").scrollTop(0); }, 500); } } } }); }); //nanospell.ckeditor("all", {dictionary: idiomaCaso, server: "php"}); $("body").on("change", "input[name='mandarCorregir']", function () { if ($(this).is(":checked")) { $(".frm-group-info-clinica").addClass("d-none"); $("#btn-finalizar-radiologo").text("Mandar a corregir"); } else { $(".frm-group-info-clinica").removeClass("d-none"); $("#btn-finalizar-radiologo").text("Finalizar"); } }); $(".btn-editar-caso").click(function() { $(".btn-descargar").hide(0); const element = $(this); element.blur(); setTimeout(function() { $("textarea.ckeditor").prop("readonly", false); for (var i in CKEDITOR.instances) { CKEDITOR.instances[i].setReadOnly(false); } element.removeClass("btn-editar-caso").addClass("btn-guardar-caso").text("Finalizar Caso"); }, 100); return; }); $(".btn-soltar-caso").click(function(e) { e.preventDefault(); const id = $(this).attr("data-id"); ClassBlockUI.abrirBlockUIConfirm("Va a soltar un caso, ¿Desea continuar?", "Aceptar", function() { $(".modal").modal("hide"); Utils.sendStandardAjax(null, "ajax/Casos.cancelar.php?CSRF="+CSRF+"&id="+id, {successCallback: "data-location"}); }, "Cancelar"); }); $("#btn-preservar").click(function(e) { e.preventDefault(); Utils.sendStandardAjax("frm-preservar", "ajax/Casos.preservar.php?CSRF="+CSRF, {successCallback: null}); }); $("body").on("click", ".btn-guardar-caso", function() { //$.each(Web.ckeditors, function (i, e) //{ // //CKEDITOR.instances[i].updateElement(); // $(e.sourceElement).val(e.getData()); //}); for (var i in CKEDITOR.instances) { CKEDITOR.instances[i].updateElement(); } let successCallback = "location"; let finalizar = $(this).attr("data-finalizar")*1; if ($(this).attr("data-previsualizar") == 1) { successCallback = function (data, textStatus, XMLHttpRequest) { $(".modal").modal("hide"); if (data["error_number"] >= 0) { const url = `informe.php?id=${$("#id_caso").val()}&preview=1`; //Intenta popup y si no en la actual window.open(url, "_blank") || window.location.replace(url); //POPUP //$(``)[0].click(); } else { ClassBlockUI.abrirBlockUIEstandarMensaje(data["error_message"], true, undefined); } }; } if ($(this).attr("data-incidencia") == 1) { ClassBlockUI.abrirBlockUIConfirm("Al marcar el caso como incidencia, se guardarán los datos rellenados, el caso quedará sin asignar y solo podrá ser modificado por la clínica.
¿Desea continuar?", "Aceptar", function () { $(".modal").modal("hide"); successCallback = "casos.html"; guardarCaso(finalizar, successCallback, 1); }, "Cancelar"); } else if (finalizar == 1 && tipoUsuario != 4 && estadoCaso != 3) { ClassBlockUI.abrirBlockUIEstandar("bloque-caso-finalizar", undefined, "Finalizar Caso", "modal622"); } else { if (finalizar) { successCallback = "https://www.divet.es/casos.html"; } guardarCaso(finalizar, successCallback, 0); } }); $("#bloque-caso-finalizar").on("click", "#btn-finalizar-radiologo", function() { $(".modal").modal("hide"); guardarCaso(1, "https://www.divet.es/casos.html", 0); }); function guardarCaso(finalizar, successCallback, incidencia = 0) { Utils.sendStandardAjax(null, "ajax/Casos.guardarFinalizar.php", { successCallback: successCallback, prepareFormData: function () { let prepareFormData = new FormData($("#frm-diagnostico")[0]); prepareFormData.append("CSRF", CSRF); prepareFormData.append("finalizar", finalizar); prepareFormData.append("incidencia", incidencia); prepareFormData.append("informacionPrivada", $("#informacionPrivada").val().trim()); return prepareFormData; } }); } //AUTOGUARDADO }); } static initConversacion() { $(document).ready(function () { $("#conversacion").scrollTop($("#conversacion").innerHeight()); }); $( "#frm-conversacion" ).on( "submit", function( e ) { e.preventDefault(); const successCallback = function (data, textStatus, XMLHttpRequest) { $(".modal").modal("hide"); if (data["error_number"] >= 0) { $("#frm-conversacion")[0].reset(); $("#conversacion").append(data["mensaje"]); $("#conversacion").scrollTop($("#conversacion").innerHeight()); } else { ClassBlockUI.abrirBlockUIEstandarMensaje(data["error_message"], true, undefined); } }; Utils.sendStandardAjax("frm-conversacion", "ajax/Casos.enviarMensaje.php?CSRF="+CSRF, {successCallback: successCallback}); }); } static nuevoCKEditor(element) { CKEDITOR.ClassicEditor.create(element , { // https://ckeditor.com/docs/ckeditor5/latest/features/toolbar/toolbar.html#extended-toolbar-configuration-format image: { resizeUnit: 'px', resizeOptions: [ { name: 'resizeImage:original', label: 'Original', value: null }, { name: 'resizeImage:235', label: '3 imagenes por fila', value: '235' }, { name: 'resizeImage:350', label: '2 imagenes por fila', value: '350' }, { name: 'resizeImage:400', label: '400px', value: '400' }, { name: 'resizeImage:500', label: '500px', value: '500' } ] }, ckfinder: { uploadUrl: 'uploadImagen.php?subida=1' }, toolbar: { items: [ 'bold','italic','underline','strikethrough', '|', 'numberedList','bulletedList','alignment', '|', 'insertImage', '|', 'outdent', 'indent', '|', 'undo', 'redo', 'link', 'horizontalLine', ], shouldNotGroupWhenFull: true }, // Changing the language of the interface requires loading the language file using the