var Unibase; (function (Unibase) { let Platform; (function (Platform) { let Dashboards; (function (Dashboards_1) { let Components; (function (Components) { class ManageDashboard extends Platform.Core.BaseComponent { constructor() { super(); this._dashboardManager = Dashboards_1.Managers.DashboardManager.Instance(); } cssFiles() { return ["libs/nestable/JqueryminMenu.css"]; } jsFiles() { return ["libs/nestable/jquery.nestable.js", "platform/dashboards/components/import.js", "platform/dashboards/requests/dashboards.js", "platform/dashboards/components/createdashboard.js", "platform/dashboards/components/editdashboard.js", "platform/dashboards/components/creategroup.js", "platform/dashboards/components/editgroup.js", "tenants/themes/compact/components/nav/nav.template.js", "platform/dashboards/components/dashboardpermissions.js", "platform/dashboards/components/dashboardgrouppermissions.js", "platform/dashboards/components/editgrouppermissions.js", "platform/dashboards/components/dashboard.template.js"]; } html(id, containerid) { let html = `
`; return html; } load(id, containerid, callback) { var instance = this; let x = $('#nestable3'); x.nestable({ group: 'categories', maxDepth: 2, scroll: true, scrollSpeed: 20, beforeDragStop: function (l, e, p) { var isGroup = $(e).hasClass('RootGroup'); var Area = $(p).attr("id"); if (isGroup == true) { if (Area !== 'GrouplessDashboards') { let y = $('#MainOlMenu'); y.sortable({ scrollSpeed: 20, }); } else { return false; } setTimeout(function () { instance.saveAllDashboardSettings(); }, 300); } else { let Checkroot = $(p).parent().attr('data-type'); let checkGroupable = $(p).parent().attr('id'); if (Checkroot != 'root' || Checkroot.toString() == 'undefind') { if (checkGroupable == 'nestable2') { return true; } else { return false; } } } let z = $("#MainOlMenu"); z.sortable({ disabled: true }); }, }); let a = $('#nestable2'); a.nestable({ group: 'categories', maxDepth: 2, scroll: true, scrollSpeed: 20, beforeDragStop: function (l, e, p) { let dashboardId = $(e).attr('id'); let DashboardGroupId = $(p).parents('li').attr('id'); if (DashboardGroupId == undefined || DashboardGroupId == "undefined") DashboardGroupId = "0"; let dashboardIndex = $(e).attr('dashboardindex'); var isGroup = $(e).hasClass('RootGroup'); if (isGroup == true) { instance.saveAllDashboardSettings(); } else { } }, }); $('.dd-empty').remove(); $("#btnAddNewGroup").click(function () { instance.navigationHelper.popup(0, "", Unibase.Platform.Dashboards.Components.DashboardGroup.Instance(), null, Platform.Helpers.Size.DockLeft); }); $("#btnAddDashboard").click(function () { instance.navigationHelper.popup(0, "", Unibase.Platform.Dashboards.Components.CreateDashboard.Instance(), null, Platform.Helpers.Size.DockLeft); }); $("#btn_SaveMenuSetting").click(function () { instance.saveAllDashboardSettings(); instance.navigationHelper.closePopUp(); }); $("#btn_CloseMenuSetting").click(function () { instance.navigationHelper.closePopUp(); }); instance.loadDashboardGroups(); } loadDashboardGroups() { var instance = this; jQuery("#MainOlMenu").empty(); var html = ""; instance._dashboardManager.getDashboardGroups().then(function (response) { for (var i = 0; i < response.result.length; i++) { var group = response.result[i]; var template = Unibase.Platform.Dashboards.Components.Dashboard_Template.Instance().DashboardGroups(); var templateScript = Handlebars.compile(template); var context = { "DashboardGroupId": group.DashboardGroupId, "DashboardGroupName": group.DashboardGroupName }; html = templateScript(context); $("#MainOlMenu").append(html); } instance.loadDashboards(); instance.loadUngroupedDashboards(); }); } loadDashboards() { var instance = this; instance._dashboardManager.getDashboards().then(function (response) { for (var i = 0; i < response.result.length; i++) { var group = response.result[i]; var html = ""; var groupId = group.DashboardGroupId; var template = Unibase.Platform.Dashboards.Components.Dashboard_Template.Instance().Dashboards(); var templateScript = Handlebars.compile(template); var context = { "DashboardId": group.DashboardId, "DashboardName": group.DashboardName, "DashboardIndex": group.DashboardIndex }; html = templateScript(context); $('#GroupDashboards-' + groupId).find(".grpItem:last").after(html); } $(".DashboardOl").each(function () { let element = $(this).children('li'); $(this).html(element.sort(function (a, b) { return ($(b).attr('dashboardindex')) > ($(a).attr('dashboardindex')) ? -1 : 1 || ($(a).attr('dashboardindex')) ? -10 : 1; })); }); }); } loadUngroupedDashboards() { var instance = this; $('#GrouplessDashboards').empty(); instance._dashboardManager.getUnGroupedDashboards().then(function (response) { var Dashboards = response.result; var html = ""; for (var i = 0; i < Dashboards.length; i++) { var group = Dashboards[i]; var template = Unibase.Platform.Dashboards.Components.Dashboard_Template.Instance().UnGroupedDashboards(); var templateScript = Handlebars.compile(template); var context = { "DashboardId": group.DashboardId, "DashboardName": group.DashboardName, "DashboardIndex": group.DashboardIndex }; html += templateScript(context); } $('#GrouplessDashboards').html(html + ""); }); } saveAllDashboardSettings() { var instance = this; var Groups = []; $('#MainOlMenu .RootGroup').each(function (index, el) { Groups.push(el); }); MessageHelper.Instance().hideMessage(); let DashboardsAndGroups = []; for (var i = 0; i < Groups.length; i++) { var dashboardIds = []; var currentGrp = Groups[i]; var grpId = Number($(currentGrp).attr('id')); $(currentGrp).children('ol').find('li').each(function (index, el) { let id = $(el).attr('id'); if (id > 0 || id != null) { dashboardIds.push(Number(id)); } }); DashboardsAndGroups.push({ "GroupId": grpId, "DashboardIds": dashboardIds }); } instance._dashboardManager.saveAllDashboardSetting(DashboardsAndGroups).then(function (response) { if (response.errors == null) { MessageHelper.Instance().showSuccess('Dashboard Settings Saved Successfully', ''); } else { MessageHelper.Instance().showError(response.errors[0], ''); } }); } deleteDashboard(DashboardId) { var instance = this; MessageHelper.Instance().hideMessage(); instance._dashboardManager.deleteDashboard(DashboardId).then(function (response) { if (response.errors == null) { MessageHelper.Instance().showSuccess('Dashboard Deleted Successfully', ''); instance.loadDashboardGroups(); } else MessageHelper.Instance().showError(response.errors[0], 'divBizgaze_MessagesPlaceholder'); }); } updateDashboardGroup(dashboard, dashboardGroupId) { var instance = this; MessageHelper.Instance().hideMessage(); var DashboardIndex = $(dashboard).attr('dashboardindex'); DashboardIndex = DashboardIndex.replace(/['"]+/g, ''); var DashboardId = $(dashboard).attr('id'); let reqObj = new Unibase.Platform.Dashboards.Requests.Dashboard(); reqObj.DashboardGroupId = Number(dashboardGroupId); reqObj.DashboardId = Number(DashboardId); reqObj.DashboardIndex = Number(DashboardIndex); instance._dashboardManager.updateDashboardGroup(reqObj).then(function (response) { if (response.errors == null) MessageHelper.Instance().showSuccess('Group Saved Successfully', ''); else MessageHelper.Instance().showError(response.errors[0], ''); }); } editDashboardGroup(GroupId) { var instance = this; MessageHelper.Instance().hideMessage(); instance.navigationHelper.popup(GroupId, "", Unibase.Platform.Dashboards.Components.EditDashboardGroup.Instance(), null, Platform.Helpers.Size.DockLeft); } editDashboard(DashboardId) { var instance = this; MessageHelper.Instance().hideMessage(); instance.editDashboardInfo(DashboardId); $('#card_dashboardPermissions').addClass("hidden"); instance._dashboardManager.getDashboard(DashboardId).then(function (response) { const { DashboardName, DashboardIndex, DashboardId, DashboardGroupId, IsMandatory, IsTrackable, ViewAllStages, PinCommonFilters } = response.result; $('#Txt_EditDashboardName').val(DashboardName); $('#Txt_EditDashboardIndex').val(DashboardIndex); $("#EditDashboardId").val(DashboardId); $('#ddl_EditDashboardGroups').val(DashboardGroupId); $('#chkIsDashboardViewable').prop('checked', IsMandatory); $('#Ch_IsTrackable').prop('checked', IsTrackable); $("#div_DashboardName").addClass('floating-label-form-group-with-value'); $("#hf_dashboardviewallstages").val(String(ViewAllStages)); $("#pinCmnFiltersChk").prop('checked', PinCommonFilters); instance._dashboardManager.getDashboardGroups().then(function (groupresponse) { var html = ''; var groups = groupresponse.result; for (var i = 0; i < groups.length; i++) { if (groups[i].DashboardGroupId == DashboardGroupId) { html += ''; } else { html += ''; } } $('#ddl_EditDashboardGroups').html(html); }); }); } editDashboardInfo(DashboardId) { var instance = this; instance.navigationHelper.popup(0, "", Unibase.Platform.Dashboards.Components.EditDashboard.Instance(), null, Platform.Helpers.Size.DockLeft); $("#div_EditDashboardHeader").removeClass("pa-5"); } editDashboardPermissions(DashboardId) { var instance = this; MessageHelper.Instance().hideMessage(); instance.editDashboardInfo(DashboardId); $('#EditDashboard').addClass("hidden"); $('#card_dashboardPermissions').removeClass("hidden"); $('#btn_UpdateDashboards').addClass("hidden"); $('#EditDashboardId').val(DashboardId); Unibase.Platform.Dashboards.Components.DashboardPermissions.Instance().ShowPermissions(DashboardId); } editGroupPermissions(DashboardGroupId) { var instance = this; MessageHelper.Instance().hideMessage(); instance.editGroupPermissionsinfo(); Unibase.Platform.Dashboards.Components.DashboardGroupPermissions.Instance().loadallpermissions(DashboardGroupId); } editGroupPermissionsinfo() { var instance = this; instance.navigationHelper.popup(0, "", Unibase.Platform.Dashboards.Components.EditGroupPermissions.Instance(), null, Platform.Helpers.Size.DockLeft); } tracking() { var instance = this; if (Number($('#EditDashboardId').val()) != 0) { let reqObj = new Unibase.Platform.Dashboards.Requests.Dashboard(); reqObj.IsTrackable = $("#Ch_IsTrackable").is(":checked"); reqObj.DashboardId = Number($('#EditDashboardId').val()); instance._dashboardManager.trackDashboard(reqObj); } } loadimport() { var instance = this; instance.navigationHelper.popup(0, "", Unibase.Platform.Dashboards.Components.Import.Instance(), null, Platform.Helpers.Size.DockLeft); } ImportDashBoard(DashboardId, containerid) { var instance = this; $(".biz-submenu").css({ "z-index": "" }); $(".biz-layout-3-left-nav").css({ "z-index": "" }); $(".toplayout-structures-panel").css({ "z-index": "1040" }); instance.loadimport(); } ExportDashboard() { var instance = this; Unibase.Platform.Helpers.NavigationHelper.Instance().showLoading(); instance._dashboardManager.exportDashboard().then(function (groupresponse) { if (groupresponse.result != null && groupresponse.result != undefined) { var filename = "Dashboard.xml"; var xmltext = groupresponse.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(); Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); } }); } exportDashboardByDashboardId(dashBoardGroupId) { var instance = this; Unibase.Platform.Helpers.NavigationHelper.Instance().showLoading(); instance._dashboardManager.getDashboardGroup(dashBoardGroupId).then(function (dashboardGroupResponse) { instance._dashboardManager.exportDashboardByDashboardId(dashBoardGroupId).then(function (groupresponse) { if (dashboardGroupResponse.result != null && dashboardGroupResponse.result != undefined && groupresponse.result != null && groupresponse.result != undefined) { var filename = dashboardGroupResponse.result.DashboardGroupName + " - DashboardGroup.xml"; var xmltext = groupresponse.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(); Unibase.Platform.Helpers.NavigationHelper.Instance().hideLoading(); } }); }); } importPortlet(containerid, fileInfo) { var instance = this; var url = _appsettings.server_url() + '/apis/v4/unibase/platform/portlets/importportlet/np'; Platform.Helpers.FileHelper.Instance().upload(url, fileInfo).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(); }); } static Instance() { return new ManageDashboard(); } } Components.ManageDashboard = ManageDashboard; })(Components = Dashboards_1.Components || (Dashboards_1.Components = {})); })(Dashboards = Platform.Dashboards || (Platform.Dashboards = {})); })(Platform = Unibase.Platform || (Unibase.Platform = {})); })(Unibase || (Unibase = {}));