"use strict"; /*! * (c) 2021-2022, Broto Suseno (broto.suseno@kemenkopm.go.id) */ function TAktifitas() { var AktifitasInfo = { 'Id': '' , 'Judul': '' , 'Artikel': '' , 'IsActive': 0 }; var priorId = ''; var nextId = ''; var quill; this.run = function (prmAktivitasId) { if (prmAktivitasId) AktifitasInfo.Id = prmAktivitasId; document.addEventListener('DOMContentLoaded', function (event) { if (![1, 3, 5].includes(GLoginInfo.UserTypeId)) { General.hideElement('btnAktifitasTambah'); General.hideElement('btnAktifitasEdit'); General.hideElement('btnAktifitasHapus'); } if (![1, 3, 5].includes(GLoginInfo.UserTypeId)) { xenJS.getElm('edDlgAktifitasIsActive').disabled = true; } doLoadData(AktifitasInfo.Id); quill = new Quill('#edDlgAktifitasArticle', { modules: { imageResize: { displaySize: true } , toolbar: [ ['bold', 'italic', 'underline'] , [{ align: '' }, { align: 'center' }, { align: 'right' }, { align: 'justify' }] , [{ list: 'ordered' }, { list: 'bullet' }] , ['link', 'image', 'video', 'blockquote'] ] } , theme: 'snow' }); }); }; this.prior = function () { doLoadData(priorId); }; this.next = function () { doLoadData(nextId); }; function doLoadData(prmAktifitasId) { var url = GServerURL + 'atf-rea.php?Id=' + prmAktifitasId; Dialogs.showDlgWait(); xenJS.fetchJSON(url, function (prmJSONData) { if (prmJSONData.success) { var tmp = false; AktifitasInfo = prmJSONData.data; if (AktifitasInfo) { AktifitasInfo.CreateBy = parseInt(AktifitasInfo.CreateBy); AktifitasInfo.ModifyBy = parseInt(AktifitasInfo.ModifyBy); priorId = prmJSONData.prior; nextId = prmJSONData.next; xenJS.getElm('btnAktifitasPrior').disabled = (priorId ? false : true); xenJS.getElm('btnAktifitasNext').disabled = (nextId ? false : true); } else { if (GLoginInfo.UserId && (GLoginInfo.UserTypeId <= 10)) { xenJS.getElm('btnAktifitasEdit').disabled = true; xenJS.getElm('btnAktifitasHapus').disabled = true; } xenJS.getElm('btnAktifitasPrior').disabled = true; xenJS.getElm('btnAktifitasNext').disabled = true; } showAktifitas(); Dialogs.hideDlgWait(); } else { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmJSONData.message); } }); } function showAktifitas() { var str = ''; var onclick = ''; if (AktifitasInfo) { AktifitasInfo.CreateAt = new Date(AktifitasInfo.CreateAt); AktifitasInfo.IsActive = parseInt(AktifitasInfo.IsActive); str = AktifitasInfo.CreateAt.toLocaleDateString('id-ID') + ' ' + AktifitasInfo.CreateAt.toLocaleTimeString('id-ID', { hour: '2-digit', minute: '2-digit' }) + ' WIB'; if (GLoginInfo.UserId && (GLoginInfo.UserTypeId <= 10)) { str += '  ' + (AktifitasInfo.IsActive == 1 ? ''; } xenJS.getElm('txtAktifitasCreateAt').innerHTML = str; xenJS.getElm('txtAktifitasJudul').innerHTML = AktifitasInfo.Judul; str = AktifitasInfo.Artikel; str = str.replace('ql-align-left', 'w3-left-align'); str = str.replace('ql-align-right', 'w3-right-align'); str = str.replace('ql-align-center', 'w3-center'); str = str.replace('ql-align-justify', 'w3-justify'); str = str.replace('img src=', 'img class="w3-image" src='); xenJS.getElm('divAktifitasArtikel').innerHTML = str; if ((GLoginInfo.UserId > 0) && (GLoginInfo.UserTypeId <= 10)) { if (!AktifitasInfo.ModifyBy || (AktifitasInfo.CreateBy == AktifitasInfo.ModifyBy)) { str = AktifitasInfo.CreateName; } else { str = AktifitasInfo.CreateName + ', ' + AktifitasInfo.ModifyName; } } else { str = ''; } xenJS.getElm('txtAktifitasPenulis').innerHTML = '' + str + ''; } else { xenJS.getElm('txtAktifitasCreateAt').innerHTML = ''; xenJS.getElm('txtAktifitasJudul').innerHTML = ''; xenJS.getElm('divAktifitasArtikel').innerHTML = 'Segera hadir!'; xenJS.getElm('txtAktifitasPenulis').innerHTML = ''; } } this.tambah = function () { xenJS.getElm('frmAktifitas').reset(); xenJS.getElm('txtDlgAktifitasTitle').innerHTML = 'Tambah Aktifitas'; xenJS.getElm('edDlgAktifitasId').value = ''; xenJS.getElm('edDlgAktifitasIsActive').checked = false; quill.root.innerHTML = ''; General.showElement('dlgAktifitas'); } this.edit = function () { //if ((AktifitasInfo.IsActive == 1) && GLoginInfo.UserId && (GLoginInfo.UserTypeId > 3)) { // Dialogs.showDlgError('Pengeditan aktifitas yang sedang tampil hanya dapat dilakukan oleh Manajer.'); // return; //} xenJS.getElm('frmAktifitas').reset(); xenJS.getElm('txtDlgAktifitasTitle').innerHTML = 'Edit Aktifitas'; xenJS.getElm('edDlgAktifitasId').value = AktifitasInfo.Id; xenJS.getElm('edDlgAktifitasJudul').value = AktifitasInfo.Judul; xenJS.getElm('edDlgAktifitasIsActive').checked = (AktifitasInfo.IsActive == 1); quill.root.innerHTML = AktifitasInfo.Artikel; General.showElement('dlgAktifitas'); }; this.ubahAktif = function () { var msg; var IsActive; if (AktifitasInfo.IsActive == 1) { msg = 'Ubah aktifitas ini menjadi tidak tampil?'; IsActive = 0; } else { msg = 'Tampilkan aktifitas ini?'; IsActive = 1; } Dialogs.showDlgConfirm2(msg, onOK); function onOK() { var url = 'atf-act.php'; var params = { 'Id': AktifitasInfo.Id , 'IsActive': IsActive }; General.ajaxPost(url, params, onSuccess, onError); function onSuccess(prmData) { if (prmData.success) { location.reload(); } else { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmData.message); } } function onError(prmXHR) { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmXHR.statusText); } } }; this.hapus = function () { //if ((AktifitasInfo.IsActive == 1) && GLoginInfo.UserId && (GLoginInfo.UserTypeId > 3)) { // Dialogs.showDlgError('Penghapusan aktifitas yang sedang tampil hanya dapat dilakukan oleh Manajer.'); // return; //} var msg = 'Hapus aktifitas ini?'; Dialogs.showDlgConfirm2(msg, onOK); function onOK() { var url = 'atf-del.php'; var params = { 'Id': AktifitasInfo.Id }; General.ajaxPost(url, params, onSuccess, onError); function onSuccess(prmData) { if (prmData.success) { location.reload(); } else { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmData.message); } } function onError(prmXHR) { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmXHR.statusText); } } }; this.frmAktifitasSubmit = function () { var AktifitasId = xenJS.getElm('edDlgAktifitasId').value; var url = (AktifitasId ? 'atf-upd.php' : 'atf-cre.php'); var IsActive = (xenJS.getElm('edDlgAktifitasIsActive').checked ? 1 : 0); var params = { 'Id': AktifitasId , 'Judul': xenJS.getElm('edDlgAktifitasJudul').value , 'Artikel': quill.root.innerHTML , 'IsActive': IsActive }; Dialogs.showDlgWait(); General.ajaxPost(url, params, onSuccess, onError); function onSuccess(prmData) { if (prmData.success) { if (!AktifitasId) { location.reload(); } else { doLoadData(AktifitasId); General.hideElement('dlgAktifitas'); Dialogs.hideDlgWait(); } } else { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmData.message); } } function onError(prmXHR) { Dialogs.hideDlgWait(); Dialogs.showDlgError(prmXHR.statusText); } }; } var Aktifitas = new TAktifitas();