File: /var/www/vhost/disk-apps/demo-telemedicina.teky.com.co/public/js/clinic_document/attacheds.js
$("#add-attacheds").click(function () {
$('.obj-anexo').serializeArray().length;
var lastField = $("#tab-attacheds tr:last");
var intId = (lastField && lastField.length && lastField.data("idx") + 1) || 5;
var td= $("<tr></tr>");
var sel = '<td><input class="form-control obj-anexo" id="description_'+intId+'"></td> <td><input type="file" name="file-annexes" class="form-control" id="file_'+intId+'"><p id="txt-file_'+intId+'"></p></td> <td><a href="#" onclick=""><i class="fa fa-cloud-upload iconMini a-icon upFile" data-pos="'+intId+'" data-id="file_'+intId+'" id="up-file_'+intId+'" style="cursor:pointer;" ></i></a><a href="" id="btn-file_'+intId+'" target="_blank" style="visibility:hidden;" class="viewFile"><i class="fa fa-eye iconMini a-icon" style="cursor:pointer;" ></i></a><a href="#" id="btn-delete-file_'+intId+'" class="deleteFileAnexo" data-id="file_'+intId+'" data-idFile="" ><i class="fa fa-trash iconMini a-icon" style="cursor:pointer;"></i></a> </td>';
td.data("idx", intId);
td.append(sel);
$('#tab-attacheds').append(td);
addEventUpload();
removeFileAnexos();
});
function deleteAnexo(evt) {
$('.obj-anexo').serializeArray().length;
$(evt).closest('tr').remove();
}
function uploadFileAnexo() {
if (!$('#codigo').val()) {
swal("", Lang.get('messages.gineco.attacheds.first_save'), "error");
}
}
function addEventUpload() {
$('.upFile').click(function () {
if(window.isLoading){
return;
}
window.isLoading = true;
id = $(this).attr('data-id');
$('#'+id).css('visibility','hidden');
$('#modalLoader').modal('show');
var current_id = window.localStorage.getItem('current_id');
if (!current_id) {
window.isLoading = false;
$('#'+id).css('visibility','visible');
$('#modalLoader').modal('hide');
swal('', Lang.get('messages.gineco.attacheds.first_save'), 'error');
return;
}
description = $('#description_' + $(this).attr('data-pos')).val();
pos = $(this).attr('data-pos');
var file = document.getElementById(id);
file = file.files[0];
inputTex= document.getElementById('description_' + $(this).attr('data-pos'));
if (!file) {
window.isLoading = false;
$('#'+id).css('visibility','visible');
$('#modalLoader').modal('hide');
swal('', Lang.get('messages.gineco.attacheds.file_missing'), 'error');
return;
}
// validar tama;o de archivo
var FileSize = file.size / 1024 / 1024; // in MB
if (FileSize > 15) {
window.isLoading = false;
$('#'+id).css('visibility','visible');
$('#modalLoader').modal('hide');
swal('', Lang.get('messages.attacheds.max_file_size'), 'warning');
return;
}
var form_data = new FormData();
form_data.append('file', file);
form_data.append('description', description ? description : null);
form_data.append('document', $('#documento').val());
form_data.append('filename', file.name);
form_data.append('mimetype', file.type);
form_data.append('pos', pos ? pos : null);
form_data.append('clinic_document_id', current_id);
$.ajax({
url: '/uploadANX',
type: 'POST',
processData: false,
contentType: false,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: form_data,
success: function (result) {
window.isLoading = false;
$('#modalLoader').modal('hide');
$('#up-'+id).css('visibility','hidden');
$('#btn-' + id).css('visibility', 'visible');
$('#btn-' + id).attr("href", '/attachments/' + result.obj.id);
$('#btn-delete-' + id).css('visibility', 'visible');
$('#btn-delete-' + id).attr("data-idFile", result.obj.id);
$('#txt-'+id).text(result.obj.filename);
$('#txt-'+id).css('visibility', 'visible');
$('#'+id).css('visibility','hidden');
if(inputTex){
inputTex.disabled = true;
}
swal('Ok', result.message, 'success');
},
error: function (data) {
window.isLoading = false;
$('#'+id).css('visibility','visible');
$('#modalLoader').modal('hide');
swal('Error', data.responseText, 'error');
}
});
});
}
addEventUpload();
$('#btn_fin_consulta').click(function () {
id = window.localStorage.getItem('current_id');
rol = JSON.parse(window.localStorage.getItem('rol')).id;
if (!id) {
swal(Lang.get('messages.attacheds.error_document'), "Error", "error");
return;
}
if (!(rol == 3 || rol == 6)) {
swal("Error", Lang.get('messages.gineco.analysis.only_role_medic'), "error");
return;
}
saveDocument(true); // True indica guardado silencioso.
swal({
title: Lang.get('messages.gineco.attacheds.finish_consultation'),
text: Lang.get('messages.gineco.attacheds.finish_consultation_warning'),
icon: "warning",
buttons: true,
dangerMode: false,
})
.then(function (gofn) {
if (gofn) {
var data = {
'id': id,
'rol': rol
};
$.ajax({
url: "/request/end_request",
type: "POST",
contentType: 'application/json',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
'Content-Type': 'application/json'
},
data: JSON.stringify(data),
success: function (res) {
swal(res.message, "", "success").then(function(){
$('#estado').val("Concluido");
$('#estado').css('background-color', '#pf42c1');
window.location.href = '/control_table';
});
},
error: function (err) {
swal("Error", err.responseJSON.message, "error");
}
});
}
});
});
function removeFile() {
$('.deleteFile').click(function () {
idFile = $(this).attr('data-idFile');
id = $(this).attr('data-id');
$.ajax({
url: "/attach/df/" + idFile,
type: "DELETE",
contentType: 'application/json',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
'Content-Type': 'application/json'
},
success: function (res) {
swal(res.message, "", "success");
$('#btn-' + id).css('visibility', 'hidden');
$('#btn-' + id).attr("href", '');
$('#btn-delete-' + id).css('visibility', 'hidden');
$('#btn-delete-' + id).attr("data-idFile", '');
$('#up-'+id).css('visibility','visible');
$('#'+id).val('');
$('#txt-'+id).val('');
$('#txt-'+id).css('visibility', 'hidden');
$('#'+id).css('visibility','visible');
$('#'+id).prop('disabled', false);
},
error: function (err) {
swal(err.message, "Error", "error");
}
});
});
}
removeFile();
function removeFileAnexos(){
$('.deleteFileAnexo').click(function () {
idFile = $(this).attr('data-idFile');
id = $(this).attr('data-id');
elemento= $(this).get();
if(idFile){
$.ajax({
url: "/attach/df/" + idFile,
type: "DELETE",
contentType: 'application/json',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
'Content-Type': 'application/json'
},
success: function (res) {
swal(res.message, "", "success");
deleteAnexo(elemento);
},
error: function (err) {
swal(err.message, "Error", "error");
}
});
}else{
deleteAnexo(elemento);
}
});
}