var Unibase; (function (Unibase) { let Platform; (function (Platform) { let Apps; (function (Apps) { let Components; (function (Components) { class PermissionExportImport extends Platform.Core.BaseComponent { constructor() { super(); this.appmanager = Apps.Managers.AppManager.Instance(); this.navigationhelper = Unibase.Platform.Helpers.NavigationHelper.Instance(); } cssFiles() { return []; } jsFiles() { return ['platform/apps/components/appbuilder.js', "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', 'platform/core/infos/status.js', '/platform/core/helpers/file/filehelper.js']; } html(id, containerid) { return `
Permissions Export/Import
Export
Select file to import
`; } load(id, containerid, callback) { var instance = this; $("#btn_PermissionClose").click(function () { $('#' + containerid).modal('hide'); $('#' + containerid).remove(); }); $('#permissionimport_File').change(function (e) { Unibase.Platform.Apps.Components.PermissionExportImport.Instance().fileEvent(e); }); $("#btn_permissionExport").on("click", function () { PermissionExportImport.Instance().exportapprolesettings(); }); $("#fileUpload").click(function () { let permissioncontrolid = "form_PermissionExpImp"; let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(permissioncontrolid); if (result == false) { MessageHelper.Instance().showError("Plase Select File", "div_importmessage"); return false; } else { PermissionExportImport.Instance().importapprolesettings(containerid); } }); } exportapprolesettings() { var instance = this; instance.navigationHelper.showLoading(); instance.appmanager.exportAppRoleSettings().then(function (response) { var filename = "Permissions.xml"; var xmltext = response.result; var pom = document.createElement('a'); var bb = new Blob([xmltext], { type: 'text/plain' }); pom.setAttribute('href', window.URL.createObjectURL(bb)); pom.setAttribute('download', filename); pom.dataset.downloadurl = ['text/plain', pom.download, pom.href].join(':'); pom.draggable = true; pom.classList.add('dragout'); pom.click(); instance.navigationHelper.hideLoading(); }); } importapprolesettings(containerid) { var instance = this; instance.navigationHelper.showLoading(); var url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/importapprolesettings/np'; Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Apps.Components.PermissionExportImport.fileData).then(function (response) { if (response.status == Unibase.Data.Status.Error) { instance.navigationHelper.hideLoading(); MessageHelper.Instance().showError(response.message, "div_importmessage"); } else { instance.navigationHelper.hideLoading(); MessageHelper.Instance().showSuccess(response.message, "div_importmessage"); $('#' + containerid).modal('hide'); $('#' + containerid).remove(); } }); } showImport() { this.navigationHelper.popup(0, '', Unibase.Platform.Apps.Components.PermissionExportImport.Instance(), null, Platform.Helpers.Size.Large); } fileEvent($event) { const fileSelected = $event.target.files[0]; Unibase.Platform.Apps.Components.PermissionExportImport.fileData = new FormData(); Unibase.Platform.Apps.Components.PermissionExportImport.fileData.append(fileSelected.name, fileSelected); } static Instance() { if (this.instance === undefined) { this.instance = new PermissionExportImport(); } return this.instance; } } PermissionExportImport.fileData = new FormData(); PermissionExportImport.childappnames = []; Components.PermissionExportImport = PermissionExportImport; })(Components = Apps.Components || (Apps.Components = {})); })(Apps = Platform.Apps || (Platform.Apps = {})); })(Platform = Unibase.Platform || (Unibase.Platform = {})); })(Unibase || (Unibase = {}));