123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- var Unibase;
- (function (Unibase) {
- let Platform;
- (function (Platform) {
- let Dashboards;
- (function (Dashboards) {
- let Components;
- (function (Components) {
- class Import extends Platform.Core.BaseComponent {
- constructor() {
- super();
- this.dashboardmanager = Dashboards.Managers.DashboardManager.Instance();
- this.navigationhelper = Unibase.Platform.Helpers.NavigationHelper.Instance();
- }
- cssFiles() {
- var cssfiles = ["libs/nestable/JqueryminMenu.css"];
- return cssfiles;
- }
- jsFiles() {
- return ['platform/dashboards/managers/dashboardmanager.js',
- 'platform/dashboards/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'];
- }
- html(id, containerid) {
- var instance = this;
- var dashboardGroup = "</br>";
- let navElement = document.getElementsByClassName("navbar-header");
- if (navElement.length != 0) {
- dashboardGroup = '<input type="radio" id="dashboard" class="dashboard_import_dashboard" onclick = "Unibase.Platform.Dashboards.Components.Import.Instance().ImportType(1)" name = "dashboard_import_radio_btn" value = "Dashboard" > <label for= "dashboard" > Dashboard </label><br> <input type="radio" id="dashboardgroup" class="dashboard_import_dashboardgroup" onclick="Unibase.Platform.Dashboards.Components.Import.Instance().ImportType(2)"name="dashboard_import_radio_btn" value="dashboardgroup"><label for="dashboardgroup">Dashboard Group</label><br>';
- }
- else {
- dashboardGroup = '<input type="radio" id="portlet" class="app_import_portlet" onclick="Unibase.Platform.Dashboards.Components.Import.Instance().ImportType(3)" name="portlet_import_radio_btn" value="portlet"><label for="dashboardgroup">Portlet</label> <br>';
- }
- let html = `<form id="form_Import" data-validate="parsley" data-isdynamic="false">
- <div class="modal-header"><strong class="text-dark">Import</strong><div id="div_importmessage" class="clear form-error-message"></div></div>
- <div data-simplebar class="import-export-body modal-body simple-scroll-bar" style="overflow-y:auto">
- <div id="industry_validation" class="clear"></div>
- <div id="div_importexport">
- <div class="card" id="importexportsection">
- <div class="card-body">
- <div id="div_Import"><input type="file" id="import_File" class="bg-light d-none d-sm-block required">
- <hr>${dashboardGroup}<a href="javascript:;" id="fileUpload" class="btn btn-warning text-white" onclick="Unibase.Platform.Dashboards.Components.Import.Instance().loadEventBeforeFileUpload('${containerid}')">Upload</a>
- </div>
- </div>
- </div>
- <div class="hidden" id="div_Export"><span id="sp_formName"></span><a href="javascript:;"
- id="fileExport" class="btn btn-primary text-white">Download</a></div>
- </div>
- </div>
- <div class="bg-white modal-footer footer"><button id="btn_CloseImport" class="btn btn-secondary btn-sm mr-auto">Close</button></div>
- </form>`;
- return html;
- }
- loadEventBeforeFileUpload(containerid) {
- let instance = this;
- $("#preloader-it").css("display", "block");
- setTimeout(function () {
- instance.FileUpload(containerid);
- }, 100);
- }
- FileUpload(containerid) {
- var instance = this;
- var url = "";
- let appcontrolid = "import_File";
- let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid);
- if (result == false) {
- MessageHelper.Instance().showError("Please Choose File", "div_importmessage");
- instance.navigationHelper.hideLoading();
- return false;
- }
- instance.navigationHelper.showLoading();
- if (this.importType == "dashboard") {
- url = _appsettings.server_url() + '/apis/v4/unibase/platform/portlets/importportlet/np';
- }
- else if (this.importType == "dashboardGroup") {
- url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/importdashboardportlets/np';
- }
- else if (this.importType == "portlet") {
- url = _appsettings.server_url() + '/apis/v4/unibase/platform/portlets/importportlet/np';
- }
- else {
- MessageHelper.Instance().showError("Please Select Import Type", "div_importmessage");
- instance.navigationHelper.hideLoading();
- }
- if (url != "") {
- instance.navigationhelper.showLoading();
- Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Dashboards.Components.Import.fileData).then(function (response) {
- if (response.status == Unibase.Data.Status.Error) {
- MessageHelper.Instance().showError(response.message, "div_importmessage");
- }
- else {
- MessageHelper.Instance().showSuccess('success', "div_importmessage");
- let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
- $('#' + VisibleContainerId).modal('hide');
- $('#' + VisibleContainerId).remove();
- }
- instance.navigationHelper.hideLoading();
- });
- }
- $("#preloader-it").css("display", "none");
- }
- load(id, containerid, callback) {
- var instance = this;
- $("#btn_CloseImport").click(function () {
- $(".biz-submenu").css({ "z-index": "9999" });
- $(".biz-layout-3-left-nav").css({ "z-index": "9999" });
- $(".toplayout-structures-panel").css({ "z-index": "9999" });
- $('#' + containerid).modal('hide');
- $('#' + containerid).remove();
- });
- $("#btn_Import").click(function () {
- $("#importexportsection").removeClass("hidden");
- $("#div_Import").removeClass("hidden");
- });
- $('#import_File').change(function (e) {
- Unibase.Platform.Dashboards.Components.Import.Instance().fileEvent(e);
- });
- $("#txt_Icon").focus(function () {
- $(".div_Icons").fadeIn();
- $("#icons").toggleClass("hidden");
- $(".div_Icons").removeClass('hidden');
- });
- $("#txt_Icon").focusout(function () {
- $(".div_Icons").fadeOut();
- });
- }
- ImportType(importType) {
- if (importType == 1) {
- this.importType = "dashboard";
- }
- else if (importType == 2) {
- this.importType = "dashboardGroup";
- }
- else if (importType == 3) {
- this.importType = "portlet";
- }
- }
- fileEvent($event) {
- const fileSelected = $event.target.files[0];
- Unibase.Platform.Dashboards.Components.Import.fileData = new FormData();
- Unibase.Platform.Dashboards.Components.Import.fileData.append(fileSelected.name, fileSelected);
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new Import();
- }
- return this.instance;
- }
- }
- Import.fileData = new FormData();
- Components.Import = Import;
- })(Components = Dashboards.Components || (Dashboards.Components = {}));
- })(Dashboards = Platform.Dashboards || (Platform.Dashboards = {}));
- })(Platform = Unibase.Platform || (Unibase.Platform = {}));
- })(Unibase || (Unibase = {}));
|