Iniit
This commit is contained in:
@@ -0,0 +1,245 @@
|
||||
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 Forms;
|
||||
(function (Forms) {
|
||||
let Controls;
|
||||
(function (Controls) {
|
||||
class select2 {
|
||||
constructor() {
|
||||
this.Ids = [];
|
||||
this.data = [];
|
||||
}
|
||||
init(formpropertyid, prop, callback) {
|
||||
var container = $(".select2_" + prop.FormPropertyId);
|
||||
Unibase.Forms.Controls.select2.Instance().loadControlSettings(container, null).then(function () {
|
||||
if (callback != null)
|
||||
callback();
|
||||
});
|
||||
$(".select2_" + prop.FormPropertyId).on('select2:select', function (e) {
|
||||
var ids = $(".select2_" + prop.FormPropertyId).val().toString().replace(/,/g, '|');
|
||||
$("#hdnselect2_" + prop.FormPropertyId).val(ids);
|
||||
});
|
||||
$(".select2_" + prop.FormPropertyId).on('select2:unselect', function (e) {
|
||||
$("#hdnselect2_" + prop.FormPropertyId).val(0);
|
||||
var ids = $(".select2_" + prop.FormPropertyId).val().toString().replace(/,/g, '|');
|
||||
$("#hdnselect2_" + prop.FormPropertyId).val(ids);
|
||||
});
|
||||
}
|
||||
loadControl(containerid, prop) {
|
||||
Unibase.Forms.Controls.select2.Instance().data = [];
|
||||
Unibase.Forms.Controls.select2.Instance().Ids = [];
|
||||
var Isrequired = prop.IsRequired != true ? 'hidden' : '';
|
||||
var required = prop.IsRequired != true ? '' : 'required';
|
||||
var CurrentStageId = $("#hf_" + $("#hfLayout_InstalledPageId").val() + "_StageId").val();
|
||||
if (prop.StagesForRequired != null && prop.StagesForRequired != "") {
|
||||
var StagesForRequired = prop.StagesForRequired.split('|');
|
||||
Isrequired = StagesForRequired.find(x => x == CurrentStageId) ? '' : 'hidden';
|
||||
required = StagesForRequired.find(x => x == CurrentStageId) ? 'required' : '';
|
||||
}
|
||||
var IsTagSelect = false;
|
||||
if (prop.ControlJsonText != "" && prop.ControlJsonText != null && prop.ControlJsonText != undefined) {
|
||||
var text = JSON.parse(prop.ControlJsonText);
|
||||
if (text["IsTagSelect"] == true) {
|
||||
IsTagSelect = true;
|
||||
}
|
||||
}
|
||||
const { helpTooltipHtml, helpTextHtml } = Unibase.Platform.Forms.Components.FormViewer.Instance().getControlHelpHtml(prop);
|
||||
var html = '<div id="div_' + prop.DocPropertyName + '" class="floating-label-form-group-with-value floating-validate" style="border-bottom:0;"><label for= "lbl" id = "lbl_' + prop.DocPropertyName + '" >' + helpTooltipHtml + '<span class="label-name">' + prop.LabelName + '</span><span class="text-danger hide ' + Isrequired + '" id="spnIsRequired_' + prop.DocPropertyName + '"> *</span></label >' +
|
||||
'<input type="hidden" id="hdnselect2_' + prop.FormPropertyId + '" class="value-control" value="0" data-text="">' +
|
||||
'<select id="select2_' + prop.FormPropertyId + '" class=" select2_' + prop.FormPropertyId + ' type-control select2_' + prop.DocPropertyName + ' form-control text-control ' + required + '" multiple="multiple" data-isdynamic="' + prop.IsDefault + '" data-istagselect="' + IsTagSelect + '" style="width:100%;" data-propdoctypename="' + prop.DocTypeName + '" data-propertyid="' + prop.DocPropertyId + '" data-propertyname="' + prop.DocPropertyName + '" data-formpropertyid="' + prop.FormPropertyId + '" data-regularexp="" data-validatemsg="" data-textformpropertyid="' + text.TextFormPropertyId + '"><option>Select</option></select>' + helpTextHtml +
|
||||
'</div>';
|
||||
$("#" + containerid).html(html);
|
||||
}
|
||||
loadControlSettings(Container, Parameters) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
var ColumnName = "0";
|
||||
var Value = "0";
|
||||
var DocPropertyId = Container.data('propertyid');
|
||||
var DocPropertyName = Container.data('propertyname');
|
||||
var FormPropertyId = Container.data('formpropertyid');
|
||||
if (Parameters != null && Parameters != "") {
|
||||
ColumnName = Parameters.map(function (item) { return item.ColumnName; }).toString();
|
||||
Value = Parameters.map(function (item) { return item.Value + "|"; }).toString();
|
||||
}
|
||||
var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
|
||||
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/forms/select2post';
|
||||
var data = select2.instance.data.find(x => x.formpropertyid == FormPropertyId);
|
||||
$(".select2_" + FormPropertyId).select2({
|
||||
multiple: true,
|
||||
allowClear: false,
|
||||
data: select2.instance.data,
|
||||
placeholder: 'Select',
|
||||
ajax: {
|
||||
url: function (request) {
|
||||
var reqUrl = url;
|
||||
return reqUrl;
|
||||
},
|
||||
contentType: 'application/json',
|
||||
type: "POST",
|
||||
delay: 250,
|
||||
data: function (params) {
|
||||
var query = {
|
||||
term: params.term,
|
||||
DocPropertyId: DocPropertyId,
|
||||
ColumnName: ColumnName,
|
||||
FormPropertyId: FormPropertyId,
|
||||
Value: Value,
|
||||
bindedData: "",
|
||||
authToken: userinfo.sessionId,
|
||||
SelectedIds: $(".select2_" + FormPropertyId).val().toString().replace(/,/g, '|'),
|
||||
};
|
||||
return JSON.stringify(query);
|
||||
},
|
||||
beforeSend: function (xhr) {
|
||||
if (userinfo !== undefined && userinfo !== null) {
|
||||
xhr.setRequestHeader("Authorization", "Basic " + userinfo.sessionId);
|
||||
xhr.setRequestHeader('geoposition', userinfo.latd + ':' + userinfo.lgId);
|
||||
}
|
||||
},
|
||||
processResults: function (data, params) {
|
||||
return {
|
||||
results: jQuery.map(JSON.parse(data.result), function (item) {
|
||||
return {
|
||||
id: item.Value,
|
||||
text: item.DisplayText
|
||||
};
|
||||
})
|
||||
};
|
||||
}
|
||||
},
|
||||
templateResult: function (item) { return item.text; },
|
||||
templateSelection: function (item) { return item.text; },
|
||||
}).on('select2:select', function () {
|
||||
Unibase.Forms.Controls.select2.Instance().assigningDataText(FormPropertyId, this);
|
||||
}).on('select2:unselect', function () {
|
||||
Unibase.Forms.Controls.select2.Instance().assigningDataText(FormPropertyId, this);
|
||||
});
|
||||
$(".select2_" + FormPropertyId).val(select2.instance.Ids).trigger('change');
|
||||
var autocompleteid1 = $(".select2_" + DocPropertyName).attr('id');
|
||||
if (autocompleteid1 != undefined) {
|
||||
var eventList = $.data($("#" + autocompleteid1)[0], "events");
|
||||
if (eventList != undefined) {
|
||||
eventList.change.unshift(eventList.change.pop());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
assigningDataText(FormPropertyId, instance) {
|
||||
let selectedValues = '';
|
||||
let length = $(instance).select2('data').length;
|
||||
$(instance).select2('data').forEach(function (obj, i) {
|
||||
if (i == length - 1) {
|
||||
selectedValues = selectedValues + obj.text;
|
||||
}
|
||||
else {
|
||||
selectedValues = selectedValues + obj.text + '|';
|
||||
}
|
||||
});
|
||||
$(`#hdnselect2_${FormPropertyId}`).attr('data-text', selectedValues);
|
||||
}
|
||||
loadControlSettings_delete(Container, Parameters) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
var ColumnName = "0";
|
||||
var Value = "0";
|
||||
var DocPropertyId = Container.data('propertyid');
|
||||
var DocPropertyName = Container.data('propertyname');
|
||||
var FormPropertyId = Container.data('formpropertyid');
|
||||
if (Parameters != null && Parameters != "") {
|
||||
ColumnName = Parameters.map(function (item) { return item.ColumnName; }).toString();
|
||||
Value = Parameters.map(function (item) { return item.Value + "|"; }).toString();
|
||||
}
|
||||
var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
|
||||
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/forms/autocomplete/docpropertyid/' + DocPropertyId + '/columnname/' + ColumnName + '/value/' + Value + '/formpropertyid/' + FormPropertyId + '/formid/0';
|
||||
url = url + "/term/";
|
||||
url = url.replace('#', '');
|
||||
var data = select2.instance.data.find(x => x.formpropertyid == FormPropertyId);
|
||||
$(".select2_" + FormPropertyId).select2({
|
||||
multiple: true,
|
||||
allowClear: false,
|
||||
data: select2.instance.data,
|
||||
placeholder: 'Select',
|
||||
ajax: {
|
||||
url: function (request) {
|
||||
var reqUrl = url;
|
||||
var term = request.term;
|
||||
if (term == undefined || term == "")
|
||||
reqUrl = reqUrl + term + "/authtoken/" + userinfo.sessionId;
|
||||
else
|
||||
reqUrl = reqUrl + term + "/authtoken/" + userinfo.sessionId;
|
||||
return reqUrl;
|
||||
},
|
||||
beforeSend: function (xhr) {
|
||||
if (userinfo !== undefined && userinfo !== null) {
|
||||
xhr.setRequestHeader("Authorization", "Basic " + userinfo.sessionId);
|
||||
xhr.setRequestHeader('geoposition', userinfo.latd + ':' + userinfo.lgId);
|
||||
}
|
||||
},
|
||||
delay: 250,
|
||||
dataType: 'json',
|
||||
processResults: function (data) {
|
||||
var selectData = [];
|
||||
var Data = JSON.parse(data.result);
|
||||
for (var i = 0; i < Data.length; i++) {
|
||||
selectData.push({
|
||||
id: Data[i].Value,
|
||||
text: Data[i].DisplayText
|
||||
});
|
||||
}
|
||||
;
|
||||
return { results: selectData };
|
||||
}
|
||||
},
|
||||
templateResult: function (item) { return item.text; },
|
||||
templateSelection: function (item) { return item.text; },
|
||||
});
|
||||
$(".select2_" + FormPropertyId).val(select2.instance.Ids).trigger('change');
|
||||
var autocompleteid1 = $(".select2_" + DocPropertyName).attr('id');
|
||||
if (autocompleteid1 != undefined) {
|
||||
var eventList = $.data($("#" + autocompleteid1)[0], "events");
|
||||
if (eventList != undefined) {
|
||||
eventList.change.unshift(eventList.change.pop());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
loadPropertySettings(propertysettings, formpropertyid) {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
if (propval != null || propval != "" || propval != undefined) {
|
||||
var selectedvalues = JSON.parse(propval);
|
||||
if (selectedvalues != 0) {
|
||||
$("#hdnselect2_" + formpropertyid).val(selectedvalues[selectedvalues.length - 1]);
|
||||
for (var i = 0; i < selectedvalues.length; i++) {
|
||||
var data = selectedvalues[i];
|
||||
if ((data.id != undefined && data.text != undefined) && (data.id != "" && data.text != "")) {
|
||||
select2.instance.Ids.push(data.id);
|
||||
var newOption = new Option(data.text, data.id, true, true);
|
||||
$(".select2_" + formpropertyid).append(newOption).trigger('change');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
static Instance() {
|
||||
if (this.instance === undefined) {
|
||||
this.instance = new select2();
|
||||
}
|
||||
return this.instance;
|
||||
}
|
||||
}
|
||||
Controls.select2 = select2;
|
||||
})(Controls = Forms.Controls || (Forms.Controls = {}));
|
||||
})(Forms = Unibase.Forms || (Unibase.Forms = {}));
|
||||
})(Unibase || (Unibase = {}));
|
||||
File diff suppressed because one or more lines are too long
+1
File diff suppressed because one or more lines are too long
@@ -0,0 +1,131 @@
|
||||
var Unibase;
|
||||
(function (Unibase) {
|
||||
let Forms;
|
||||
(function (Forms) {
|
||||
let Controls;
|
||||
(function (Controls) {
|
||||
class select2_settings {
|
||||
constructor() {
|
||||
this.Id = 0;
|
||||
this.TextFormPropertyId = 0;
|
||||
}
|
||||
loadControlPropertiesHtml(controlpropList, container) {
|
||||
return ``;
|
||||
}
|
||||
bindPropertySettings(prop) {
|
||||
var propertySettings = prop.PropertySettings;
|
||||
return "";
|
||||
}
|
||||
savePropertySettings(prop) {
|
||||
var propertySettings = prop.PropertySettings;
|
||||
return "";
|
||||
}
|
||||
loadSettingHtml(Container) {
|
||||
var html = '<div class="card AutoProperties"> <div class="card-header"><h6><b>Select2Setting Details</b></h6></div>' +
|
||||
'<div class="card-body" id="DivAutocomplete"><div class="row">' +
|
||||
'<div class="col-sm-6"><label class="font-bold" style="color:grey">Report<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control required" id="loadReport"></selec><input type="hidden" id="hfloadReportId" /></div><div class="col-sm-6 "><label class="font-bold" style="color:grey">Text Column<span class="text-danger" id="spnIsRequired_Section"> *</span></label><select class="form-control required" id="loadReportTextColumns" /><input type="hidden" id="hfloadReportTextColumnsId" /></div></div>' +
|
||||
'<div class="row mt-10"><div class="col-sm-6"><label class="font-bold" style="color:grey">Id Column:</label><select class="form-control" id="loadReportIdColumns" /><input type="hidden" id="hfloadReportIdColumnsId" /></div><div class="col-sm-6 mt-30"><label for="frmchkIsDefault" style="margin-top:19px"> <b>Is Include All Option</b></label><label id="lblIsIncludeAllOption" class="switch m-t form-inline pull-right mt-10" style="color:grey"><input id="IsIncludeAllOption" data-group="IsRequired" type="checkbox" data-controlpropertyname="IsTagSelect" onclick="_bizgaze_forms_controlproperties.requiredCheckBox();"><span></span></label></div></div>' +
|
||||
'<div class="row col-sm-6"><div class="floating-label-form-group"><label for= "lbl" id = "select2lblparameterName" class= "font-bold">Parameter Name<span class="text-danger">* </span></label><input type="text" id = "txt_Select2Parameter" class="form-control value-control floating-label-control" placeholder = "Enter Parameter" data - placeholder="Enter Parameter" data - label="Enter Parameter"></div></div></div></div>';
|
||||
$(Container).html(html);
|
||||
$("#loadReport").select2({ placeholder: 'Select Report', width: '100%' });
|
||||
$("#loadReportIdColumns").select2({ placeholder: 'Select IdColumn', width: '100%' });
|
||||
$("#loadReportTextColumns").select2({ placeholder: 'Select TextColumn', width: '100%' });
|
||||
select2_settings._instance.LoadReports();
|
||||
}
|
||||
LoadReports() {
|
||||
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reports';
|
||||
AutoCompleteHelper.getHelper().Create($("#loadReport"), $("#hfloadReportId"), url, function (response) {
|
||||
$("#loadReport").change(function () {
|
||||
$("#reportIdColumns").text('');
|
||||
$("#reporttextColumns").text('');
|
||||
var Id = $("#loadReport option:selected").val().toString();
|
||||
var ReportId = Number(Id);
|
||||
select2_settings._instance.LoadReportCoulmns(ReportId);
|
||||
});
|
||||
});
|
||||
}
|
||||
LoadReportCoulmns(ReportId) {
|
||||
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reportcolumnsautocomplete/reportid/' + ReportId;
|
||||
AutoCompleteHelper.getHelper().Create($("#loadReportIdColumns"), $("#hfloadReportIdColumnsId"), url, function (response) { });
|
||||
AutoCompleteHelper.getHelper().Create($("#loadReportTextColumns"), $("#hfloadReportTextColumnsId"), url, function (response) { });
|
||||
Unibase.Platform.Analytics.Managers.ReportManager.Instance().getHeaderColumns(ReportId).then(function (response) {
|
||||
var html = "";
|
||||
for (let i = 0; i < response.length; i++) {
|
||||
var data = response[i];
|
||||
var template = Unibase.Platform.Forms.Components.FormBuilder_Template.Instance().loadTemplate();
|
||||
var templateScript = Handlebars.compile(template);
|
||||
var context = { "Id": data.field, "Name": data.title };
|
||||
html += templateScript(context);
|
||||
}
|
||||
jQuery("#loadReportIdColumns").html(html);
|
||||
jQuery("#loadReportTextColumns").html(html);
|
||||
});
|
||||
}
|
||||
bindControlData(controldatajson) {
|
||||
var data = controldatajson;
|
||||
select2_settings._instance.Id = data.AutoCompletePropertyId;
|
||||
select2_settings._instance.TextFormPropertyId = data.TextFormPropertyId;
|
||||
$("#chkIsTagSelect").prop('checked', data.IsTagSelect);
|
||||
var datalist = new Option(data.DataListName, data.ReportId, true);
|
||||
$("#loadReport").append(datalist);
|
||||
$("#loadReport").val(data.ReportId);
|
||||
select2_settings._instance.LoadReports();
|
||||
var reportIdColumns = new Option(data.AutoCompleteIdColumn, data.AutoCompleteIdColumn, true);
|
||||
$("#loadReportIdColumns").append(reportIdColumns);
|
||||
$("#loadReportIdColumns").val(data.AutoCompleteIdColumn);
|
||||
var reporttextColumns = new Option(data.AutoCompleteTextColumn, data.AutoCompleteTextColumn, true);
|
||||
$("#loadReportTextColumns").append(reporttextColumns);
|
||||
$("#loadReportTextColumns").val(data.AutoCompleteTextColumn);
|
||||
$("#txt_Select2Parameter").val(data.Parameters);
|
||||
}
|
||||
SaveControlData(controldatajson) {
|
||||
var controldatajson1 = [];
|
||||
if (controldatajson != null && controldatajson != "") {
|
||||
controldatajson1[0].AutoCompletePropertyId = select2_settings._instance.Id;
|
||||
controldatajson1[0].DocPropertyId = Number(Unibase.Platform.Forms.Components.PropertyEditor.Instance().DocPropertyId),
|
||||
controldatajson1[0].ReportId = $("#hfloadReportId").val();
|
||||
controldatajson1[0].AutoCompleteTextColumn = $("#loadReportTextColumns option:selected").val();
|
||||
controldatajson1[0].AutoCompleteIdColumn = $("#loadReportIdColumns option:selected").val();
|
||||
controldatajson1[0].IsTagSelect = $("#chkIsTagSelect").prop('checked');
|
||||
controldatajson1[0].IsIncludeAllOption = false;
|
||||
controldatajson1[0].FormId = $("#hdnFormId").val();
|
||||
controldatajson1[0].AutoCompleteFilterColumn = $("#hdnAutocompleteFilterColumn").val();
|
||||
controldatajson1[0].AppConfigId = $("#hdnAppConfigId").val();
|
||||
controldatajson1[0].IsMultiSelect = false;
|
||||
controldatajson1[0].Parameters = $("#txt_Select2Parameter").val();
|
||||
controldatajson1[0].DataListName = $("#loadReport option:selected").text();
|
||||
controldatajson1[0].FormuniqueId = $('#txt_FormUniqueId').val();
|
||||
controldatajson = JSON.stringify(controldatajson1[0]);
|
||||
}
|
||||
else {
|
||||
controldatajson1[0] = {
|
||||
AutoCompletePropertyId: Number(select2_settings._instance.Id),
|
||||
DocPropertyId: Number(Unibase.Platform.Forms.Components.PropertyEditor.Instance().DocPropertyId),
|
||||
ReportId: Number($("#loadReport option:selected").val()),
|
||||
AutoCompleteTextColumn: $("#loadReportTextColumns option:selected").text(),
|
||||
AutoCompleteIdColumn: $("#loadReportIdColumns option:selected").text(),
|
||||
IsTagSelect: $("#chkIsTagSelect").prop('checked'),
|
||||
IsIncludeAllOption: false,
|
||||
FormId: Number(Unibase.Platform.Forms.Components.FormBuilder.Instance().FormId),
|
||||
AutoCompleteFilterColumn: "",
|
||||
AppConfigId: 0,
|
||||
IsMultiSelect: false,
|
||||
Parameters: $("#txt_Select2Parameter").val(),
|
||||
DataListName: $("#loadReport option:selected").text(),
|
||||
FormUniqueId: $('#txt_FormUniqueId').val(),
|
||||
TextFormPropertyId: Number(select2_settings._instance.TextFormPropertyId),
|
||||
};
|
||||
controldatajson = JSON.stringify(controldatajson1[0]);
|
||||
}
|
||||
return controldatajson;
|
||||
}
|
||||
static Instance() {
|
||||
if (this._instance === undefined)
|
||||
this._instance = new select2_settings();
|
||||
return this._instance;
|
||||
}
|
||||
}
|
||||
Controls.select2_settings = select2_settings;
|
||||
})(Controls = Forms.Controls || (Forms.Controls = {}));
|
||||
})(Forms = Unibase.Forms || (Unibase.Forms = {}));
|
||||
})(Unibase || (Unibase = {}));
|
||||
File diff suppressed because one or more lines are too long
+1
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user