var Unibase; (function (Unibase) { let Themes; (function (Themes) { let Compact; (function (Compact) { let KpiWidgets; (function (KpiWidgets) { class Default extends Unibase.Platform.Core.BaseComponent { jsFiles() { return []; } cssFiles() { return []; } html(obj, containerid) { let title = obj[0].WidgetName; var html = '
' + '' + '' + '
' + '' + title + '' + '' + '' + '' + '
'; html += ' ' + '0' + '' + '
' + '
'; return html; } linkReport(widgetid, PortletWidgetId, containerid) { var instance = this; Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getKPIWidget(widgetid).then(function (response) { var res = response.result; if (res != null) { let containerid = "div_kpireport_" + PortletWidgetId; instance.navigationHelper.popup(res.LinkReportId, containerid, Unibase.Platform.Analytics.Components.ReportViewer.Instance(), null, Unibase.Platform.Helpers.Size.ExtraLarge); } }); } load(id, containerid, callback) { let instance = this; let inputparameters = Unibase.Themes.Providers.DashboardHelper.Instance().replaceWidgetParameterValues(id[0].WidgetParameters, id[0].InstalledAppId); let fromDate = "", toDate = ""; var cf_fromDate = Unibase.Platform.Membership.Infos.Identity.currentUser.fromDate; var cf_toDate = Unibase.Platform.Membership.Infos.Identity.currentUser.toDate; if (cf_fromDate != null && cf_toDate != null) { fromDate = cf_fromDate.toString(); toDate = cf_toDate.toString(); } else { fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD"); toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD"); } var parameters = { WidgetId: id[0].WidgetId, PortletWidgetId: id[0].PortletWidgetId, InstalledAppId: id[0].InstalledAppId, InputParameters: inputparameters, FromDate: fromDate, ToDate: toDate }; instance.loadResponseData(id[0].PortletWidgetId, containerid, parameters); } loadResponseData(portletwidgetid, detailContainer, parameters) { let instance = this; instance.inputParameters = parameters.InputParameters; Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getKpiWidgetData(parameters).then(function (response) { instance.loadData(portletwidgetid, detailContainer, parameters, false, response); }); } loadData(portletwidgetid, detailContainer, parameters, IsPreview, response) { detailContainer = "." + detailContainer; let instance = this; var post = response.result; if (post != null) { let result = JSON.parse(response.result.Data); if (post.IsMaximize == true) { $("#kpi_FullScreen_" + portletwidgetid).removeClass("hidden"); } var iconhtml = ""; if (post.Icon != "" && post.Icon != null) { iconhtml = ''; $("#span_kpi_icon_" + portletwidgetid).html(iconhtml); } var selected_values = post.Selected_Columns; if (selected_values != null) { var sp = selected_values.split(','); var column1 = sp[0]; } let kpiresult = JSON.parse(response.result.Data); let data = ""; if (kpiresult != null) { if (kpiresult.length != 0) { data = JSON.parse(response.result.Data)[0]; post.Data = data[column1]; } } else post.Data = ""; var color = post.Color; if (color != null) { $(detailContainer).find("#kpi_card_" + portletwidgetid).addClass(color); } if (post.IsFiltarable == true) { $(detailContainer).find(".KpiFilter_" + portletwidgetid + "").removeClass('hidden'); } if (post.Data == "0.000" || post.Data == "" || post.Data == null || post.Data == "[]") { post.Data = "0"; } if (post.LinkUrl == 'NULL' || post.LinkUrl == null || post.LinkUrl == "") { $(detailContainer).find("#spanlnk_widget_" + portletwidgetid).remove(); } else { $(detailContainer).find("#span_widget_" + portletwidgetid).remove(); $(detailContainer).find("#spanlnk_widget_" + portletwidgetid).removeClass("hidden"); $(detailContainer).find("#hdn_widget_link_" + portletwidgetid).val(post.LinkUrl); $(detailContainer).find("#lnk_widget_" + portletwidgetid).click(function () { if (post.Data == "0" || Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(post.Data, 2) == 0.00) { alert('No data'); } else { } }); } var l; var m; var n; if (l == true || m == true || n == true) $(detailContainer).find("#value_widget_" + portletwidgetid).text(Unibase.Core.Helpers.NumberHelper.Instance().format(post.Data, 2, '')); else $(detailContainer).find("#value_widget_" + portletwidgetid).text(Unibase.Core.Helpers.NumberHelper.Instance().format(post.Data, 2, '')); if (post.Color != "" && post.Color != null) { $(detailContainer).find("#value_widget_" + portletwidgetid).addClass("text-" + color); } if (post.LinkReportId != 0 && post.LinkReportId != null) { } else { $(detailContainer).find("#showreport_" + portletwidgetid).addClass('hidden'); } var colors = ["primary", "success", "warning", "danger", "info", "light", "secondary", "dark"]; if (response.result.AppConfigurations != null) { if (response.result.AppConfigurations.length != 0) { var designhtml = ""; var statusconditions = ""; var widgetconditions = ""; var appconfig = response.result.AppConfigurations; for (var i = 0; i < appconfig.length; i++) { var onlickurl = ""; var sname = appconfig[i].SettingName.replace(/ /g, ''); onlickurl = Default.Instance().load_appconfigurations(appconfig[i], response.result.Data, portletwidgetid); designhtml += ' ' + '' + ' '; if (appconfig[i].JsFunction != null && appconfig[i].JsFunction != "") { if (appconfig[i].JsFunction.indexOf("{{") > -1 || appconfig[i].JsFunction.indexOf("}}") > -1) { statusconditions += appconfig[i].JsFunction + " "; } else { widgetconditions += appconfig[i].JsFunction + " "; } } } designhtml += ""; $(detailContainer).find("#config_widget_" + portletwidgetid).html(designhtml); if (widgetconditions != "") widgetconditions = HtmlHelper.getHelper().decode(widgetconditions); let evaljs; for (var h = 0; h < result.length; h++) { var model = result[h]; evaljs = Unibase.Core.Helpers.TokenHelper.Instance().replace(widgetconditions, model); } eval(evaljs); if (statusconditions != "") { if (result != null) { for (var i = 0; i < result.length; i++) { var model = result[i]; var condition = Unibase.Core.Helpers.TokenHelper.Instance().replace(statusconditions, model); eval(condition); } } } } } } $(detailContainer).siblings('.line-loader').remove(); $(detailContainer).removeClass('hidden'); } load_appconfigurations(config, data, portletwidgetid) { var instance = this; let settingurltype = config.SettingUrlType; var appconfigurationid = config.AppConfigurationId; var settingUrl = config.SettingUrl; var jsfunction = config.JsFunction; var formid = config.FormId; let editformid; var formpkname = config.FormPrimaryColumn; if (data.length <= 0) { editformid = 0; } else editformid = 0; var onclick = ""; if (settingurltype == 2) { onclick = "this.fileCacheHelper.loadJsFile('" + config.SettingUrl + "', function () {var html = Unibase.Apps.Components.Stages.Instance().init();NavigationHelper.Instance().loadPopupHtml(html, Helpers.Size.DockLeft, function(containerid) {" + config.JsFunction + " ;});});"; } else if (settingurltype == 1) { onclick = 'Unibase.Platform.Helpers.NavigationHelper.Instance().loadForm(' + formid + ', ' + editformid + ',' + appconfigurationid + ',' + portletwidgetid + ' )'; } else if (settingurltype == 3) { let variablename = "Widget_" + config.SettingUrl.split(",")[0].split(".")[0].trim(); let methodname = config.SettingUrl.split(",")[1]; var onclickurl = "Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile('widgets/" + config.SettingUrl.split(",")[0] + "', function () { " + variablename + "." + methodname + " });"; onclick = onclickurl; } else if (settingurltype == 10) { onclick = "Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(" + config.LinkDashboardId + ",'" + config.DashboardName + "')"; } else if (settingurltype == 11) { onclick = "Unibase.Themes.Compact.Components.Nav.Instance().loadDashboardsInDashboard(" + config.LinkDashboardGroupId + ",0,true)"; } return onclick; } static Instance() { if (this.instance === null || this.instance === undefined) this.instance = new Default(); return this.instance; } } KpiWidgets.Default = Default; })(KpiWidgets = Compact.KpiWidgets || (Compact.KpiWidgets = {})); })(Compact = Themes.Compact || (Themes.Compact = {})); })(Themes = Unibase.Themes || (Unibase.Themes = {})); })(Unibase || (Unibase = {}));