var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class TemplateViewerSettings extends Platform.Core.BaseComponent {
constructor() {
super();
this.subTemplateCount = 1;
this.Templates = [];
this.TemplateNames = [];
this.viewerManager = Analytics.Managers.ViewerManager.Instance();
this.reportViewer = Components.ReportViewer.Instance();
this.ReportId = 0;
}
jsFiles() {
return ["platform/analytics/providers/iviewersettings.js",
"platform/analytics/managers/interfaces/iviewermanager.js"];
}
cssFiles() {
return [];
}
html(id, containerid) {
var html = `
`;
return html;
}
load(id, containerid, callback) {
var instance = this;
instance.TemplateNames = [];
instance.templateResponse = null;
$("#Txt_TemplatePageSize").val(20);
$("#chkIsEnableCardMode").change(function () {
var IsEnableCardMode = $("#chkIsEnableCardMode").prop("checked");
$("#input_templateheader").val("");
$(".TemplateHeader_Section").removeClass("hidden");
});
$("#subtmp_plus").click(function () {
instance.subTemplateCount++;
let html = ``;
$("#subtmp_div").append(html);
for (var i = 0; i < instance.Templates.length; i++) {
$(".select_templates").append(``);
}
});
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/templates';
AutoCompleteHelper.getHelper().Create("#cmdsub_1", "hfReportAutoComplete", url, null);
if (id != 0) {
instance.getTemplateById(id);
}
jQuery("#btnSave").click(function () {
instance.saveTemplate(id, Number(instance.ReportId), containerid, null);
});
$("#layoutRadio").click(function () { });
}
removeSubTemplate(SubTmpCount) {
let instance = this;
$("#divsubtmp_" + SubTmpCount).remove();
instance.TemplateNames.splice(SubTmpCount, 1);
}
selectedSubTemplate(SubTmpCount) {
let instance = this;
let SubTemplateVal = $("#cmdsub_" + SubTmpCount + " option:selected").text();
instance.TemplateNames[SubTmpCount] = SubTemplateVal;
}
getTemplateById(id) {
var instance = this;
instance.subTemplateCount = 1;
instance.viewerManager.getTemplateView(id).then(function (response) {
var resp = response.result;
instance.templateResponse = response.result;
$("#Txt_Template_Name").val(resp.TemplateName.trim()).attr("readonly", 'true').css("cursor", "not-allowed");
if (resp.DisplayName != null) {
$("#Txt_Display_Name").val(resp.DisplayName.trim());
}
$("#input_templateheader").val(HtmlHelper.getHelper().decode(resp.HeaderText.trim()));
$("#input_TemplateText").val(HtmlHelper.getHelper().decode(resp.TemplateText.trim()));
$("#input_TemplateFooter").val(HtmlHelper.getHelper().decode(resp.FooterText.trim()));
if (resp.Js != null) {
$("#input_Js").val(resp.Js.trim());
}
$("#chkIsEnableCardMode").prop("checked", resp.EnableCardMode);
$("#chkIsCarousel").prop("checked", resp.IsCarousel);
$("input[name=layoutRadio][value=" + resp.DisplayModeTypeId + "]").prop('checked', 'checked');
$("#chkIsEnableSubTemplatesMode").prop("checked", resp.EnableSubTemplatesMode);
if (resp.PageSize != 0) {
$("#Txt_TemplatePageSize").val(resp.PageSize);
}
resp.PrintTemplateText && ($("#input_printtemplatetext").val(HtmlHelper.getHelper().decode(resp.PrintTemplateText.trim())));
resp.PrintHeaderText && ($("#input_printheadertext").val(HtmlHelper.getHelper().decode(resp.PrintHeaderText.trim())));
resp.PrintFooterText && ($("#input_printfootertext").val(HtmlHelper.getHelper().decode(resp.PrintFooterText.trim())));
if (resp.SubTemplates != "" && resp.SubTemplates != null) {
instance.viewerManager.getTemplates(resp.SubTemplates).then((response) => {
if (response.status == Unibase.Data.Status.Success) {
var templates = response.result;
for (var i = 0; i < templates.length; i++) {
$("#cmdsub_1").append(new Option(templates[i].TemplateName, templates[i].TemplateViewId.toString(), true, true));
}
}
});
}
});
}
saveTemplate(id, reportid, containerid, obj) {
var instance = this;
var PostData = obj;
let SubTemplateTexts = "";
let subTempaltes = $("#cmdsub_1").select2("data");
SubTemplateTexts = subTempaltes.map(x => x.text).join("|");
if (obj == null) {
PostData = {
HeaderText: HtmlHelper.getHelper().encode($("#input_templateheader").val()),
TemplateText: HtmlHelper.getHelper().encode($("#input_TemplateText").val()),
FooterText: HtmlHelper.getHelper().encode($("#input_TemplateFooter").val()),
Js: $("#input_Js").val(),
TemplateName: $("#Txt_Template_Name").val().toString().trim(),
DisplayName: $("#Txt_Display_Name").val().toString().trim(),
ReportId: Number(reportid),
TemplateViewId: Number(id),
EnableCardMode: $("#chkIsEnableCardMode").prop("checked"),
EnableSubTemplatesMode: $("#chkIsEnableSubTemplatesMode").prop("checked"),
IsCarousel: $("#chkIsCarousel").prop("checked"),
PageSize: Number($("#Txt_TemplatePageSize").val()),
SubTemplates: SubTemplateTexts,
DisplayModeTypeId: Number($('input[name="layoutRadio"]:checked').val()),
PrintTemplateText: HtmlHelper.getHelper().encode($("#input_printtemplatetext").val() || ""),
PrintHeaderText: HtmlHelper.getHelper().encode($("#input_printheadertext").val() || ""),
PrintFooterText: HtmlHelper.getHelper().encode($("#input_printfootertext").val() || ""),
ViewAll: instance.templateResponse ? instance.templateResponse.ViewAll : true,
IsFromUI: Number(id) == 0 ? true : false,
};
}
instance.viewerManager.saveTemplateView(PostData).then(function (response) {
if (response.status == Unibase.Data.Status.Error) {
MessageHelper.Instance().showError(response.message, 'divTemplateView_ErrorMessage');
}
else {
MessageHelper.Instance().showSuccess(response.message, '');
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
}
});
}
deleteTemplate(id, containerid, ev) {
if (ev != undefined)
ev.stopPropagation();
var instance = this;
bootbox.confirm("Do you want to Delete the Template ?", function (result) {
if (result) {
instance.viewerManager.deleteTemplate(id, instance.ReportId).then(function (delresponse) {
if (delresponse.status == Unibase.Data.Status.Success) {
MessageHelper.Instance().showSuccess(delresponse.message, '');
$(`#deleteTemplateIcon_${id}`).parents('.biz-views-dropdown').siblings('.views-dropdown-toggle').dropdown('toggle');
}
else {
let errMsgEl = $(`#deleteTemplateIcon_${id}`).parents('.biz-views-dropdown').find('#dpErrMessage_' + containerid).attr('id');
MessageHelper.Instance().showError(delresponse.message, errMsgEl);
}
}, null);
}
});
}
updateViewerStatus(viewerId, viewerTypeId) {
var instance = this;
instance.viewerManager.updateViewerStatus(viewerId, viewerTypeId).then(function (viewerres) {
if (viewerres.status == Unibase.Data.Status.Success) {
if (Number(viewerres.result) == Unibase.Platform.Core.Enums.RowStatus.Active) {
$(".tempStatus_" + viewerId).text("Active").addClass("btn-success").removeClass("btn-red");
}
else {
$(".tempStatus_" + viewerId).text("InActive").addClass("btn-red").removeClass("btn-success");
}
}
});
}
deleteViewer(id, viewerTypeId, containerid, ev) {
if (ev != undefined)
ev.stopPropagation();
var instance = this;
bootbox.confirm("Do you want to Delete the Template ?", function (result) {
if (result) {
var rv = instance.reportViewer.getReportViewerInstance(containerid);
if (rv.reportResponse && rv.reportResponse.result && rv.reportResponse.result.ReportInfo && rv.reportResponse.result.ReportInfo.ReportId)
instance.ReportId = rv.reportResponse.result.ReportInfo.ReportId;
instance.viewerManager.deleteViewer(instance.ReportId, id, viewerTypeId).then(function (delresponse) {
if (delresponse.status == Unibase.Data.Status.Success) {
MessageHelper.Instance().showSuccess(delresponse.message, '');
$(`#deleteTemplateIcon_${id}`).parents('.biz-views-dropdown').siblings('.views-dropdown-toggle').dropdown('toggle');
}
else {
let errMsgEl = $(`#deleteTemplateIcon_${id}`).parents('.biz-views-dropdown').find('#dpErrMessage_' + containerid).attr('id');
MessageHelper.Instance().showError(delresponse.message, errMsgEl);
}
}, null);
}
});
}
loadViewers() {
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/viewers';
AutoCompleteHelper.getHelper().Create("#cmdsub_1", "hfReportAutoComplete", url, null);
}
static Instance() {
if (this._instance === undefined)
this._instance = new Unibase.Platform.Analytics.Components.TemplateViewerSettings();
return this._instance;
}
}
Components.TemplateViewerSettings = TemplateViewerSettings;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));