var Unibase; (function (Unibase) { let Platform; (function (Platform) { let Apps; (function (Apps) { let Components; (function (Components) { class Import 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/apps/components/import.js', "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', 'platform/core/infos/status.js', '/platform/core/helpers/file/filehelper.js', 'platform/permission/managers/permissionmanager.js']; } html(id, containerid) { var instance = this; var data; if (this.DuplicateHtml == true) { var installedappid = Unibase.Themes.Providers.DetailHelper.recordId; instance.appmanager.getChilds(installedappid).then(function (response) { data = response.result; }).then(function () { if (data.length > 0) { var html1 = ""; $(".div_childbody").empty(); for (let i = 0; i < data.length; i++) { html1 += '
' + data[i].AppTitle + '
'; } $(".div_childapp").removeClass('hidden'); $(".child_card").removeClass('hidden'); $(".div_childbody").append(html1); } }); var html = `
Duplicate App
`; return html; } else if (this.PermissionsExportImportHtml == true) { return `
Export/Import Permissions
For All Apps
For Individual App
  • Import
    Select File to import



    Upload
`; } else { return `
Import App
Select file to import





Upload
`; } } load(id, containerid, callback) { var instance = this; $("#btn_CloseImport,#btn_CloseDuplicateApp").click(function () { $('#' + containerid).modal('hide'); $('#' + containerid).remove(); }); $("#btn_Import").click(function () { $("#importexportsection").removeClass("hidden"); $("#div_Import").removeClass("hidden"); }); $('#import_File').change(function (e) { Unibase.Platform.Apps.Components.Import.Instance().fileEvent(e); }); $('#import_AllAppsPermissionFile').change(function (e) { Unibase.Platform.Apps.Components.Import.Instance().allAppsPermissionFileEvent(e); }); $('#import_SingleAppPermissionFile').change(function (e) { Unibase.Platform.Apps.Components.Import.Instance().singleAppPermissionFileEvent(e); }); $("#btn_SaveDuplicateApp").on("click", function () { let controlid = "frmUnibase_DuplicateApp"; let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(controlid); if (result == false) { MessageHelper.Instance().showError("Mandatory Fields are missing", "div_duplicatemessage"); return false; } Import.Instance().SaveDuplicateApp(containerid); }); $("#txt_Icon").focus(function () { $(".div_Icons").fadeIn(); $("#icons").toggleClass("hidden"); $(".div_Icons").removeClass('hidden'); }); $("#txt_Icon").focusout(function () { $(".div_Icons").fadeOut(); }); Unibase.Platform.Apps.Components.AppBuilder.Instance().loadIcons(); $("#fileUpload").click(function () { let appcontrolid = "form_Import"; let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid); if (result == false) { MessageHelper.Instance().showError("Please Select File", "div_importmessage"); return false; } else { setTimeout(function () { if (Unibase.Platform.Apps.Components.Import.Instance().importType == "apps") { Import.Instance().importApp(containerid); } else if (Unibase.Platform.Apps.Components.Import.Instance().importType == "widget") { instance.fileCacheHelper.loadJsFile("platform/widgets/components/widget.js", function () { Unibase.Platform.Widgets.Components.Widget.Instance().importWidget(containerid, Unibase.Platform.Apps.Components.Import.fileData); }); } else { MessageHelper.Instance().showError("Please Select Import Type", "div_importmessage"); Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); } }, 1000); Unibase.Platform.Helpers.NavigationHelper.Instance().showLoading(); } }); $("#allAppsPermission_fileUpload").click(function () { let appcontrolid = "form_AllAppsPermissionsExportImport"; let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid); if (result == false) { MessageHelper.Instance().showError("Please Select File", "div_permissionsimportmessage"); return false; } else { setTimeout(function () { Import.Instance().importAppPermissions(containerid); }, 1000); Unibase.Platform.Helpers.NavigationHelper.Instance().showLoading(); } }); $("#singleAppPermission_fileUpload").click(function () { let appcontrolid = "form_SingleAppPermissionsImport"; let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid); if (result == false) { MessageHelper.Instance().showError("Please Select File", "div_permissionsimportmessage"); return false; } else { setTimeout(function () { Import.Instance().importAppPermissions(containerid); }, 1000); Unibase.Platform.Helpers.NavigationHelper.Instance().showLoading(); } }); } ImportType(importType) { if (importType == 1) { this.importType = "apps"; } else if (importType == 2) { this.importType = "widget"; } } importApp(containerid) { var instance = this; var url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/importapp/np'; Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Apps.Components.Import.fileData).then(function (response) { if (response.status == Unibase.Data.Status.Error) { MessageHelper.Instance().showError(response.message, "div_importmessage"); } else { MessageHelper.Instance().showSuccess(response.message, "div_importmessage"); $('#' + containerid).modal('hide'); $('#' + containerid).remove(); } Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); }); } showImport(isduplicate) { var obj = new Unibase.Platform.Apps.Components.Import; obj.DuplicateHtml = isduplicate; this.navigationHelper.popup(0, '', obj, null, Platform.Helpers.Size.Large); } permissionsExportImport(ispermissionhtml) { var obj = new Unibase.Platform.Apps.Components.Import; obj.PermissionsExportImportHtml = ispermissionhtml; this.navigationHelper.popup(0, '', obj, null, Platform.Helpers.Size.Large); } fileEvent($event) { const fileSelected = $event.target.files[0]; Unibase.Platform.Apps.Components.Import.fileData = new FormData(); Unibase.Platform.Apps.Components.Import.fileData.append(fileSelected.name, fileSelected); } singleAppPermissionFileEvent($event) { const fileSelected = $event.target.files[0]; Unibase.Platform.Apps.Components.Import.permissionfileData = new FormData(); Unibase.Platform.Apps.Components.Import.permissionfileData.append(fileSelected.name, fileSelected); } allAppsPermissionFileEvent($event) { const fileSelected = $event.target.files[0]; Unibase.Platform.Apps.Components.Import.permissionfileData = new FormData(); Unibase.Platform.Apps.Components.Import.permissionfileData.append(fileSelected.name, fileSelected); } exportAppRoleSettings() { var instance = this; instance.navigationHelper.showLoading(); instance.appmanager.exportAppRoleSettings().then(function (response) { if (response.status == Unibase.Data.Status.Error) { instance.navigationHelper.hideLoading(); MessageHelper.Instance().showError(response.message, "div_permissionsimportmessage"); return false; } 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; var url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/importapprolesettings/np'; Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Apps.Components.Import.permissionfileData).then(function (response) { if (response.status == Unibase.Data.Status.Error) { MessageHelper.Instance().showError(response.result, "div_permissionsimportmessage"); } else { MessageHelper.Instance().showSuccess(response.result, "div_permissionsimportmessage"); $('#' + containerid).modal('hide'); $('#' + containerid).remove(); } Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); }); } SaveDuplicateApp(containerid) { var instance = this; var recordid = Unibase.Themes.Providers.DetailHelper.recordId; $(".div_childs").each(function () { var oldappname = $(this).find(".sp_appname").text(); var newappname = $(this).find("#txt_Childapp").val(); Import.childappnames.push({ oldapptitle: oldappname, newapptitle: newappname }); }); let postdata = { InstalledAppId: recordid, AppTitle: $("#txt_Name").val(), IconName: $("#txtfafaIcon").val(), ChildApps: Import.childappnames }; instance.navigationHelper.showLoading(); instance.appmanager.duplicateApp(postdata).then(function (response) { if (response.status == Unibase.Data.Status.Error) { MessageHelper.Instance().showError(response.message, "div_duplicatemessage"); } else { MessageHelper.Instance().showSuccess(response.message, "div_duplicatemessage"); $('#' + containerid).modal('hide'); $('#' + containerid).remove(); } instance.navigationHelper.hideLoading(); }); } exportAppPermissions() { var instance = this; instance.navigationHelper.showLoading(); instance.appmanager.exportAppPermissions(0).then(function (response) { if (response.status == Unibase.Data.Status.Error) { instance.navigationHelper.hideLoading(); MessageHelper.Instance().showError(response.message, "div_permissionsimportmessage"); return false; } var filename = "AllAppPermissions.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(); }); } importAppPermissions(containerid) { var instance = this; var url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/importapppermissions/np'; Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Apps.Components.Import.permissionfileData).then(function (response) { if (response.status == Unibase.Data.Status.Error) { MessageHelper.Instance().showError(response.message, "div_permissionsimportmessage"); } else { MessageHelper.Instance().showSuccess(response.result, "div_permissionsimportmessage"); $('#' + containerid).modal('hide'); $('#' + containerid).remove(); } Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); }); } static Instance() { if (this.instance === undefined) { this.instance = new Import(); } return this.instance; } } Import.fileData = new FormData(); Import.permissionfileData = new FormData(); Import.childappnames = []; Components.Import = Import; })(Components = Apps.Components || (Apps.Components = {})); })(Apps = Platform.Apps || (Platform.Apps = {})); })(Platform = Unibase.Platform || (Unibase.Platform = {})); })(Unibase || (Unibase = {}));