Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

subform.settings.js 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. var Unibase;
  2. (function (Unibase) {
  3. let Forms;
  4. (function (Forms) {
  5. let Controls;
  6. (function (Controls) {
  7. class SubForm_Setting {
  8. constructor() {
  9. this.SubFormName = '';
  10. this.ChildFormId = 0;
  11. this.RelationPropertyId = 0;
  12. }
  13. loadSettingHtml(Container) {
  14. let html = `<div class="card div_subform"><div class="card-header"><span>SubForm</span></div><div class="card-body subform"><div class="subform-row col-sm-2" id="subform-row"></div>
  15. <div class="row"> <div class="col-sm-6"><div class="floating-label-form-group floating-label-form-group-with-value"><label for="lbl" id="lblSubFormName" class="font-bold">SuB Form<span class="text-danger" id="spnIsRequired_Section"> *</span></label><input type="text" id="txtSuBFormName" class="form-control value-control required floating-label-control" data-isdefault="true" placeholder="SuBFormName *" data-placeholder="Enter SuB Form Name" data-label="SuBFormName *"></div> </div></div><div class="row mt-20"><div class="col-sm-6"><label id="lblFormName" class="font-bold">Form Name <span class="text-danger" id="spnIsRequired_Section"> *</span></label><select name="FormName" id="txtFormNames" class="form-control value-control required" data-isdynamic="true"><option value="0">-- Select --</option></select></div><div id="div_RelationProperty" class="col-sm-6"><label for="lbl" id="lbl_RelationProperty" style="color:grey">Relation Property</label><select id="txtAutoComplete_RelationProperty" class="txtAutoComplete_RelationProperty form-control text-control" data-isdefault="true" style="width:100%;"><option value="0">-- Select --</option></select></div></div><div class="col-sm-12 row" ><div class="col-sm-6" id="EnableSubFormSettings" style="margin-top:50px"><strong>Enable SubForm Settings</strong><label class="switch pull-right"><input id="chkEnableSubFormSettings" data-group="" style="margin-top:50px" type="checkbox"><span></span> </label></div><div class="col-sm-6" id="EnableListFormSettings" style="margin-top:50px"><strong>Enable ListForm Settings</strong><label class="switch pull-right"><input id="chkEnableListFormSettings" data-group="" style="margin-top:50px" type="checkbox"><span></span> </label></div></div><div class="row hidden" id="AddButtonName"> <div class="col-sm-6"><div class="floating-label-form-group floating-label-form-group-with-value"><label for="lbl" id="lblButtonName" class="font-bold">Button Name<span class="text-danger" id="spnIsRequired_Section"> *</span></label><input type="text" id="txtButtonName" class="form-control value-control floating-label-control" data-isdefault="true" placeholder="ButtonName *" data-placeholder="Enter Button Name" data-label="Button Name *"></div> </div></div>
  16. </div></div>`;
  17. $(Container).html(html);
  18. SubForm_Setting.Instance().FormsAutocomplete();
  19. $("#chkEnableSubFormSettings").unbind("click").click(function () {
  20. var changable = $("#chkEnableSubFormSettings").prop('checked');
  21. if (changable) {
  22. $("#chksubformsettingsEnable").prop("checked", true);
  23. $("#AddButtonName").removeClass('hidden');
  24. }
  25. else {
  26. $("#chksubformsettingsEnable").prop("checked", false);
  27. $("#AddButtonName").addClass('hidden');
  28. }
  29. });
  30. $("#chkEnableListFormSettings").unbind("click").click(function () {
  31. var changable = $("#chkEnableListFormSettings").prop('checked');
  32. if (changable) {
  33. $("#chkEnableListFormSettings").prop("checked", true);
  34. $("#chkEnableListFormSettings").val("true");
  35. $(".div_CheckListform").removeClass('hidden');
  36. }
  37. else {
  38. $("#chkEnableListFormSettings").prop("checked", false);
  39. $("#chkEnableListFormSettings").val("false");
  40. $(".div_CheckListform").addClass('hidden');
  41. }
  42. });
  43. }
  44. FormsAutocomplete() {
  45. var _fileCacheHelper = Unibase.Platform.Helpers.FileCacheHelper.Instance();
  46. var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
  47. var term = "";
  48. if (term == undefined || term == "") {
  49. term = undefined;
  50. }
  51. _fileCacheHelper.loadJsFile('/platform/forms/managers/formmanager.js', function () {
  52. Unibase.Platform.Forms.Managers.FormManager.Instance().getFormsAutoComplete(term, userinfo.sessionId).then(function (response) {
  53. var data = response.result;
  54. var FormsData = [];
  55. for (let i = 0; i < data.length; i++) {
  56. var roles = data[i];
  57. FormsData.push({ id: roles.Value, text: roles.SelectText });
  58. }
  59. $('#txtFormNames').select2({
  60. placeholder: 'Select Form',
  61. data: FormsData,
  62. });
  63. $("#txtFormNames").on("change", function () {
  64. if ($("#txtFormNames").val() != null) {
  65. var Formid = $("#txtFormNames option:selected").val().toString();
  66. SubForm_Setting.Instance().GetDocPropertyAutocompleteDetails(Number(Formid));
  67. }
  68. });
  69. });
  70. });
  71. }
  72. GetDocPropertyAutocompleteDetails(FormId) {
  73. $('#txtAutoComplete_RelationProperty').empty();
  74. Unibase.Platform.Forms.Managers.FormManager.Instance().getFormProperties(FormId).then(function (response) {
  75. for (let i = 0; i < response.result.length; i++) {
  76. $('#txtAutoComplete_RelationProperty').append('<option value="' + response.result[i].DocPropertyId + '">' + response.result[i].DocPropertyName + '</option>');
  77. }
  78. });
  79. }
  80. bindControlData(controldatajson) {
  81. var data = controldatajson;
  82. $("#hdnAutocompletePropertyId").val(data.AutoCompletePropertyId);
  83. var selectDatalistname = new Option(data.DataListName, data.DataListId, true);
  84. $("#loadDatalist").append(selectDatalistname);
  85. var selectIdColumn = new Option(data.AutoCompleteIdColumn, data.AutoCompleteIdColumn, true);
  86. $("#loadDatalistIdColumns").append(selectIdColumn);
  87. var selectTextColumn = new Option(data.AutoCompleteTextColumn, data.AutoCompleteTextColumn, true);
  88. $("#txtPropertyName").val(data.FormPropertyName);
  89. $("#loadDatalistTextColumns").append(selectTextColumn);
  90. $("#hfloadDatalistId").val(data.DataListId);
  91. $("#txtSuBFormName").val(data.SubFormName);
  92. $('select#txtFormNames option:selected').text(data.ChildFormName);
  93. $('select#txtFormNames option:selected').val(data.ChildFormId);
  94. $('select#txtAutoComplete_RelationProperty option:selected').text(data.RelationPropertyName);
  95. $('select#txtAutoComplete_RelationProperty option:selected').val(data.RelationPropertyId);
  96. if (data.EnableSubFormSettings == true) {
  97. $('#chkEnableSubFormSettings').prop("checked", true);
  98. $('#chkEnableSubFormSettings').val('true');
  99. $("#AddButtonName").removeClass('hidden');
  100. $("#txtButtonName").val(data.ButtonName);
  101. }
  102. else {
  103. $('#chkEnableSubFormSettings').prop("checked", false);
  104. $('#chkEnableSubFormSettings').val('false');
  105. $("#AddButtonName").addClass('hidden');
  106. }
  107. if (data.EnableListFormSettings == true) {
  108. $("#chkEnableListFormSettings").prop("checked", true);
  109. $("#chkEnableListFormSettings").val("true");
  110. $(".div_CheckListform").removeClass('hidden');
  111. }
  112. else {
  113. $("#chkEnableListFormSettings").prop("checked", false);
  114. $("#chkEnableListFormSettings").val("false");
  115. $(".div_CheckListform").addClass('hidden');
  116. }
  117. $("#chkIsTagSelect").prop('checked', data.IsTagSelect);
  118. $("#hdnIsTagSelect").val(data.IsTagSelect);
  119. $("#hdnFormId").val(data.FormId);
  120. $("#hdnAutocompleteFilterColumn").val(data.AutocompleteFilterColumn);
  121. $("#hdnAppConfigId").val(data.AppConfigId);
  122. $("#txt_FormUniqueId").val(Unibase.Platform.Forms.Components.FormBuilder.Instance().FormUniqueId).toString();
  123. }
  124. SaveControlData(controldatajson) {
  125. var chkenblesetting;
  126. var chkenbleListsetting;
  127. var changable = $("#chkEnableSubFormSettings").prop('checked');
  128. if (changable) {
  129. $("#chkEnableSubFormSettings").prop("checked", true);
  130. $("#chkEnableSubFormSettings").val("true");
  131. $("#AddButtonName").removeClass('hidden');
  132. chkenblesetting = true;
  133. }
  134. else {
  135. $("#chkEnableSubFormSettings").prop("checked", false);
  136. $("#chkEnableSubFormSettings").val("false");
  137. chkenblesetting = false;
  138. $("#AddButtonName").addClass('hidden');
  139. }
  140. var Listchangable = $("#chkEnableListFormSettings").prop('checked');
  141. if (Listchangable) {
  142. $("#chkEnableListFormSettings").prop("checked", true);
  143. $("#chkEnableListFormSettings").val("true");
  144. chkenbleListsetting = true;
  145. $(".div_CheckListform").removeClass('hidden');
  146. }
  147. else {
  148. $("#chkEnableListFormSettings").prop("checked", false);
  149. $("#chkEnableListFormSettings").val("false");
  150. chkenbleListsetting = false;
  151. $(".div_CheckListform").addClass('hidden');
  152. }
  153. let SubFormName = $("#txtSuBFormName").val();
  154. let ChildFormId = Number($('select#txtFormNames option:selected').val());
  155. let RelationPropertyId = Number($('select#txtAutoComplete_RelationProperty option:selected').val());
  156. SubForm_Setting.instance.SubFormName = SubFormName;
  157. SubForm_Setting.instance.ChildFormId = Number(ChildFormId);
  158. SubForm_Setting.instance.RelationPropertyId = Number(RelationPropertyId);
  159. var controldatajson1 = [];
  160. if (controldatajson != null && controldatajson != "") {
  161. controldatajson1[0] = {
  162. DocPropertyId: Number(0),
  163. DataListId: Number($("#loadDatalist option:selected").val()),
  164. IsIncludeAllOption: false,
  165. IsMultiSelect: false,
  166. SubFormName: controldatajson.SubFormName,
  167. ChildFormId: Number(controldatajson.ChildFormId),
  168. ChildFormName: controldatajson.ChildFormName,
  169. RelationPropertyId: Number(controldatajson.RelationPropertyId),
  170. RelationPropertyName: controldatajson.RelationPropertyName,
  171. EnableSubFormSettings: controldatajson.EnableSubFormSettings,
  172. EnableListFormSettings: controldatajson.EnableListFormSettings,
  173. ButtonName: controldatajson.ButtonName,
  174. ParentFormId: Number(controldatajson.ParentFormId),
  175. IsTagSelect: $("#chkIsTagSelect").prop('checked'),
  176. FormId: Number(controldatajson.FormId),
  177. AppConfigId: Number($("#hdnAppConfigId").val()),
  178. Parameters: null,
  179. DataListName: $("#loadDatalist option:selected").text(),
  180. FormUniqueId: controldatajson.FormUniqueId,
  181. ParentFormUniqueId: controldatajson.ParentFormUniqueId,
  182. ChildFormUniqueId: controldatajson.ChildFormUniqueId,
  183. FormPropertyName: $("#txtPropertyName").val(),
  184. };
  185. }
  186. else {
  187. controldatajson1[0] = {
  188. DocPropertyId: Number(Unibase.Platform.Forms.Components.PropertyEditor.Instance().DocPropertyId),
  189. DataListId: Number($("#loadDatalist option:selected").val()),
  190. IsIncludeAllOption: false,
  191. IsMultiSelect: false,
  192. SubFormName: $("#txtSuBFormName").val(),
  193. ChildFormId: Number($('select#txtFormNames option:selected').val()),
  194. ChildFormName: $('select#txtFormNames option:selected').text(),
  195. RelationPropertyId: Number($('select#txtAutoComplete_RelationProperty option:selected').val()),
  196. RelationPropertyName: $('select#txtAutoComplete_RelationProperty option:selected').text(),
  197. EnableSubFormSettings: chkenblesetting,
  198. EnableListFormSettings: chkenbleListsetting,
  199. ButtonName: $("#txtButtonName").val(),
  200. ParentFormId: Number(0),
  201. IsTagSelect: $("#chkIsTagSelect").prop('checked'),
  202. FormId: Number(Unibase.Platform.Forms.Components.FormBuilder.Instance().FormId),
  203. AppConfigId: Number($("#hdnAppConfigId").val()),
  204. Parameters: null,
  205. DataListName: $("#loadDatalist option:selected").text(),
  206. FormUniqueId: Unibase.Platform.Forms.Components.FormBuilder.Instance().FormUniqueId,
  207. FormPropertyName: $("#txtPropertyName").val(),
  208. };
  209. controldatajson = JSON.stringify(controldatajson1[0]);
  210. }
  211. return controldatajson;
  212. }
  213. loadControlPropertiesHtml(controlpropList, container) {
  214. return ``;
  215. }
  216. bindPropertySettings(prop) {
  217. var propertySettings = prop.PropertySettings;
  218. return "";
  219. }
  220. savePropertySettings(prop) {
  221. var propertySettings = prop.PropertySettings;
  222. return "";
  223. }
  224. static Instance() {
  225. if (this.instance === undefined) {
  226. this.instance = new SubForm_Setting();
  227. }
  228. return this.instance;
  229. }
  230. }
  231. Controls.SubForm_Setting = SubForm_Setting;
  232. })(Controls = Forms.Controls || (Forms.Controls = {}));
  233. })(Forms = Unibase.Forms || (Unibase.Forms = {}));
  234. })(Unibase || (Unibase = {}));