jQuery(function($){ $(".refresh_table").on('click', function(e) { e.preventDefault(); var table_name = $(this).data('table'); $('#' + table_name).DataTable().ajax.reload(); }); // Queue item $('#showQueuedMsg').on('show.bs.modal', function (e) { $('#queue_msg_content').text(lang.loading); button = $(e.relatedTarget) if (button != null) { $('#queue_id').text(button.data('queue-id')); } $.ajax({ type: 'GET', url: '/api/v1/get/postcat/' + button.data('queue-id'), dataType: 'text', complete: function (data) { $('#queue_msg_content').text(data.responseText); } }); }) function draw_queue() { // just recalc width if instance already exists if ($.fn.DataTable.isDataTable('#queuetable') ) { $('#queuetable').DataTable().columns.adjust().responsive.recalc(); return; } $('#queuetable').DataTable({ processing: true, serverSide: false, language: lang_datatables, ajax: { type: "GET", url: "/api/v1/get/mailq/all", dataSrc: function(data){ $.each(data, function (i, item) { item.chkbox = ''; rcpts = $.map(item.recipients, function(i) { return escapeHtml(i); }); item.recipients = rcpts.join('
'); item.action = '
' + '' + lang.queue_show_message + '' + '
'; }); return data; } }, columns: [ { // placeholder, so checkbox will not block child row toggle title: '', data: null, searchable: false, orderable: false, defaultContent: '' }, { title: '', data: 'chkbox', searchable: false, orderable: false, defaultContent: '' }, { title: 'QID', data: 'queue_id', defaultContent: '' }, { title: 'Queue', data: 'queue_name', defaultContent: '' }, { title: lang.arrival_time, data: 'arrival_time', defaultContent: '', render: function (data, type){ var date = new Date(data ? data * 1000 : 0); return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"}); } }, { title: lang.message_size, data: 'message_size', defaultContent: '', render: function (data, type){ return humanFileSize(data); } }, { title: lang.sender, data: 'sender', defaultContent: '' }, { title: lang.recipients, data: 'recipients', defaultContent: '' }, { title: lang.action, data: 'action', className: 'text-md-end dt-sm-head-hidden dt-body-right', defaultContent: '' }, ] }); } draw_queue(); })