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 = '
';
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 = {}));