var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Automation;
(function (Automation) {
let Components;
(function (Components) {
class ContactSelection {
constructor() {
this.RecipientProviders = [];
}
init(rpid) {
Unibase.Platform.Automation.Components.ContactSelection.Instance().loadRecipients();
Unibase.Platform.Automation.Components.ContactSelection.Instance().LoadContactColumns(rpid);
return Unibase.Platform.Automation.Components.ContactSelection.Instance().html();
}
loadRecipients() {
return __awaiter(this, void 0, void 0, function* () {
return yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getRecipientProviders().then(function (response) {
Unibase.Platform.Automation.Components.ContactSelection.Instance().RecipientProviders = response;
for (var i = 0; i <= response.length - 1; i++) {
let html = '';
html += '
' +
'' +
'' +
'
';
$(".recipients").append(html);
let selectid = "select2_" + response[i].RecipientName + "";
let selectlable = response[i].DisplayName;
let recipientProviderid = response[i].RecipientProviderId;
Unibase.Platform.Automation.Components.ContactSelection.Instance().RecipientsData(selectid, selectlable, recipientProviderid);
}
});
});
}
html() {
let html = `
`;
return html;
}
RecipientsData(selectid, selectlable, recipientProviderid) {
return __awaiter(this, void 0, void 0, function* () {
var url = _appsettings.server_url() + '/apis/v4/unibase/notificationrule/platform/RecipientsAutoComplete/RecipientProviderId/' + recipientProviderid;
return yield AutoCompleteHelper.getHelper().Create("#" + selectid, "hdn" + selectid, url, function (response) {
var data = response;
});
});
}
GetRecipients() {
var obj = new Object();
$(".recipient").each(function () {
let id = $(this).find(".recipient");
let index = (id.prevObject[0].id).split('_');
index = index[1];
let propname = $(this).find(".propname").text();
let recipientname = $(this).find(".recipientname").text();
let selectid = "select2_" + recipientname + "";
let recipients = Unibase.Platform.Automation.Components.ContactSelection.Instance().getSelectedRecipients(selectid);
obj[propname] = recipients;
});
return obj;
}
BindRecipients(ruleactionid) {
return __awaiter(this, void 0, void 0, function* () {
var recipientproviders = Unibase.Platform.Automation.Components.ContactSelection.Instance().RecipientProviders;
return yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getActionRecipient(ruleactionid).then(function (response) {
for (var i = 0; i < recipientproviders.length; i++) {
let recipients = response[recipientproviders[i].ColumnName];
let IdColumn = recipientproviders[i].IdColumn;
let RecipientProviderId = Number(recipientproviders[i].RecipientProviderId);
Unibase.Platform.Automation.Components.ContactSelection.Instance().BindRecipientOptions(RecipientProviderId, recipients, IdColumn, recipientproviders[i].RecipientName);
}
if (response.ExternalRecipients != undefined && response.ExternalRecipients != null) {
Unibase.Platform.Automation.Components.ContactSelection.Instance().BindExternalRecipients(response.ExternalRecipients);
}
});
});
}
BindExternalRecipients(externalrecipients) {
var recipients = externalrecipients.split("|");
for (let i = 0; i < recipients.length; i++) {
$("#chkreportcolumns_" + recipients[i]).prop("checked", true);
}
}
BindRecipientOptions(RecipientProviderId, recipients, IdColumn, RecipientName) {
return __awaiter(this, void 0, void 0, function* () {
return yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getSelectedRecipientsData(RecipientProviderId, recipients, IdColumn).then(function (response) {
if (response != "" && response.result.length > 0) {
var Result = response.result;
for (var j = 0; j < Result.length; j++) {
var recipient = Result[j];
var newOption = new Option(recipient.AutoCompleteTextColumn, recipient.AutoCompleteIdColumn, true, true);
$("#select2_" + RecipientName + "").append(newOption).trigger('change');
}
}
});
});
}
getSelectedRecipients(selectid) {
let Recipientcount = new Array();
Recipientcount = $('#' + selectid).val();
let Recipient = "";
for (var i = 0; i < Recipientcount.length; i++) {
Recipient += "|" + Recipientcount[i];
}
if (Recipient != "")
Recipient += "|";
return Recipient;
}
LoadContactColumns(rpid) {
return __awaiter(this, void 0, void 0, function* () {
let ruleproviderid = rpid;
return yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getContactColumns(ruleproviderid).then(function (response) {
if (response != null) {
for (let i = 0; i <= response.length - 1; i++) {
let html = '';
let secondaryhtml = '';
html += '';
secondaryhtml += '';
$("#contactcolumns").append(html);
$("#secondarycontactcolumns").append(secondaryhtml);
}
}
});
});
}
getContactColumns() {
var contactcolumns = "";
$.each($("input[name='Contactcolumns']:checked"), function () {
var Contact = $(this).parents("label");
Contact = Contact.prevObject[0].labels[0].innerText;
contactcolumns += "|" + Contact;
});
if (contactcolumns != "")
contactcolumns += "|";
return contactcolumns;
}
getSecondaryContactColumns() {
var contactcolumns = "";
$.each($("input[name='SecondaryContactcolumns']:checked"), function () {
var Contact = $(this).parents("label");
Contact = Contact.prevObject[0].labels[0].innerText;
contactcolumns += "|" + Contact;
});
if (contactcolumns != "")
contactcolumns += "|";
return contactcolumns;
}
CheckContactColumns(Users) {
if (Users != null)
var contacts = Users.split("|");
for (var i = 0; i < contacts.length; i++) {
if (contacts[i] != "") {
var id = contacts[i];
$('#chk_' + id + '').prop("checked", true);
}
}
}
CheckSecondaryContactColumns(Users) {
if (Users != null)
var contacts = Users.split("|");
for (var i = 0; i < contacts.length; i++) {
if (contacts[i] != "") {
var id = contacts[i];
$('#chk_sec_' + id + '').prop("checked", true);
}
}
}
loadexternalreportcolumns() {
return __awaiter(this, void 0, void 0, function* () {
var html = '';
var reportid = $(' option:selected').val();
Unibase.Platform.Automation.Managers.RuleManager.Instance().getExternalContactsFromReport(reportid).then(function (response) {
if (response != null) {
$('.external_reportcolumns').html('');
for (let i = 0; i < response.length; i++) {
html += '';
}
$('.external_reportcolumns').html(html);
}
});
});
}
getResultActions(ruleactionid) {
return __awaiter(this, void 0, void 0, function* () {
yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getResultActions(ruleactionid).then(function (response) {
if (response != null) {
$(".ResultActions").removeClass("hidden");
let cmbRActions = document.getElementById('ddl_ResultAction');
$('#ddl_ResultAction').empty();
var defaultOpt1 = document.createElement("option");
defaultOpt1.text = "Select";
defaultOpt1.value = "0";
cmbRActions.appendChild(defaultOpt1);
for (let i = 0; i <= response.length - 1; i++) {
var opt = document.createElement("option");
opt.text = response[i].EventName;
opt.value = response[i].EventId.toString();
cmbRActions.appendChild(opt);
}
$("#ddlResultAction").val($("#hf_ResultAction").val());
}
});
});
}
loadQueryBuilder(ruleproviderid, querystring) {
return __awaiter(this, void 0, void 0, function* () {
return yield Unibase.Platform.Automation.Managers.RuleManager.Instance().getRuleProvider(ruleproviderid).then(function (response) {
let ruleconditionhtml = Unibase.Platform.DataSources.Components.QueryBuilder.Instance().html(null, null);
jQuery(".ActionConditions").html(ruleconditionhtml);
var qinstance = Unibase.Platform.DataSources.Components.QueryBuilder.Instance();
qinstance.QueryBuilder_Columns = [];
qinstance.QueryBuilder_Filters = [];
qinstance.queryBuilderString = "";
if (response.ReportId != 0) {
qinstance.ReportId = response.ReportId;
qinstance.loadQueryBuilderDiv(querystring);
}
else {
qinstance.DoctypeId = response.DoctypeId;
qinstance.loadQueryBuilderDivByDoctypeId(querystring);
}
$("#QueryBuilder").removeClass("hidden");
});
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new ContactSelection();
}
return this.instance;
}
}
Components.ContactSelection = ContactSelection;
})(Components = Automation.Components || (Automation.Components = {}));
})(Automation = Platform.Automation || (Platform.Automation = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));