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.

index.reportbuilder.min.js 75KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. var __awaiter,Unibase;(function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){class ReportFilter extends Platform.Core.BaseComponent{constructor(){super();this.isUnLimited=!0;this.isreportViewer=!1;this.dynamicFilters=[];this.datalistColumns=[];this.reportManager=Analytics.Managers.ReportManager.Instance();this.reportBuilder=Unibase.Platform.Analytics.Reports.ReportBuilder.Instance()}cssFiles(){return[]}jsFiles(){return["platform/analytics/managers/reportmanager.js","platform/datasources/managers/datalistmanager.js"]}html(){return`<section id="is-filterable-section" class="modal-content">
  2. <div class="modal-header pa-10">
  3. <strong class="modal-title biz-highlight-bg-color">CommonFilter</strong>
  4. <a class="btn btn-sm btn-theme ml-auto" id="btnClear">Clear</a>
  5. <div id="report_viewer_filter" class="form-error-message"></div>
  6. </div>
  7. <div data-simplebar class="simple-scroll-bar modal-body" id="CardViewer_modal">
  8. <div class="sub-report-block card">
  9. <header class="sub-report-head">
  10. <h6>
  11. Filter
  12. </h6>
  13. <span><i class="las la-filter filter"></i></span>
  14. </header>
  15. <div class="report-body">
  16. <div class="form-row mb-10">
  17. <div class="form-group col-sm 12">
  18. <label> Display Name </label>
  19. <input type="text" class="form-control" id="txt_DisplayName" placeholder="Display Name">
  20. </div>
  21. </div>
  22. <div class="form-row mb-10">
  23. <div class="col">
  24. <div id="div_datalistColumn">
  25. <label> DataList Name </label>
  26. <select id="datalistauto_AutoComplete" class="form-control text-control required">
  27. <option value="0" selected="">Select Datalist</option>
  28. </select>
  29. </div>
  30. </div>
  31. </div>
  32. <div class="form-row mb-10">
  33. <div class="col-sm-6">
  34. <div id="div_datalistvaluecolumn">
  35. <label> Value Column </label>
  36. <select id="datalistvalue_AutoComplete" class="form-control text-control required">
  37. <option value="0" selected="">Select value Column</option>
  38. </select>
  39. </div>
  40. </div>
  41. <div class="col-sm-6">
  42. <div id="div_datalisttextcolumn">
  43. <label> Text Column </label>
  44. <select id="datalisttext_AutoComplete" class="form-control text-control required">
  45. <option value="0" selected="">Select Text Column</option>
  46. </select>
  47. </div>
  48. </div>
  49. </div>
  50. <div class="form-row mb-10 mappedcolumnsdiv">
  51. <div class="form-group col-sm 12">
  52. <label>Mapped Columns</label>
  53. <select class="form-control custom-select" id="mappedcolumnsdropdown">
  54. <option value="0" selected="">Select Column</option>
  55. </select>
  56. </div>
  57. </div>
  58. <div class="form-row mb-10">
  59. <div class="form-group col-sm 12">
  60. <label>Control Type</label>
  61. <select class="form-control custom-select" id="ControlTypeDropDown">
  62. <option value="0" selected="">Select Control Type</option>
  63. <option value="1">AutoComplete </option>
  64. <option value="2"> TextBox </option>
  65. <option value="3"> Select2 </option>
  66. </select>
  67. </div>
  68. </div>
  69. <div class="form-row mb-10">
  70. <div class="form-group col-sm 12">
  71. <label>FontCase Type</label>
  72. <select class="form-control custom-select" id="FontCaseTypeDropDown">
  73. <option value="0" selected="">Select FontCase Type</option>
  74. <option value="1">No Change</option>
  75. <option value="2">Upper Case</option>
  76. <option value="3">Lower Case</option>
  77. </select>
  78. </div>
  79. </div>
  80. <div class="form-row mb-10">
  81. <div class="form-group col-6 col-sm-6">
  82. <label for="unlimited_checkbox">IsUnLimit</label>
  83. <div><input type="checkbox" class="chkIsUnLimited mr-10" id="isunlimited_checkbox">IsUnLimit</div>
  84. </div>
  85. <div class="form-group col-6 col-sm-6">
  86. <label for="isrequired_checkbox">Is Required</label>
  87. <div><input type="checkbox" class="chkisrequired mr-10" id="isrequired_checkbox">Is Required</div>
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. <div class="modal-footer pa-10">
  94. <a class="btn btn-sm btn-light mr-auto" id="btnClose">Close</a>
  95. <a class="btn btn-sm btn-primary" id="btnSave">Save</a>
  96. </div>
  97. </section>`}load(index,containerid){var instance=this,reportcolumn,filtercols,url;$("#isunlimited_checkbox").click(function(){$("#isunlimited_checkbox").prop("checked")==!1?(instance.isUnLimited=!1,$("#isunlimited_checkbox").prop("checked",!1)):(instance.isUnLimited=!0,$("#isunlimited_checkbox").prop("checked",!0))});reportcolumn=Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.selectedColumns[index];filtercols=[];filtercols=instance.isreportViewer?instance.dynamicFilters.filter(function(o){return o.IsFilterableColumn===instance.displayText}):Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().dynamicFilters.filter(function(o){return o.IsFilterableColumn===reportcolumn.AliasName});filtercols.length>0?(filtercols[0].IsUnLimited&&$("#isunlimited_checkbox").prop("checked",!0),filtercols[0].IsRequired&&$("#isrequired_checkbox").prop("checked",!0),$("#ControlTypeDropDown").val(filtercols[0].ControlTypeId),$("#FontCaseTypeDropDown").val(filtercols[0].FontCaseTypeId),$("#datalistauto_AutoComplete").append("<option value="+filtercols[0].DataListId+" selected>"+filtercols[0].DataListName+"<\/option>"),$("#datalistauto_AutoComplete").unbind().trigger("change"),Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportManager.getDataListColumns(Number($("#datalistauto_AutoComplete").val()),null,null).then(response=>{var data,valcol,txtcol;if(response.status==Unibase.Data.Status.Success)if(response.result!=""){this.datalistColumns=JSON.parse(response.result);data=[];for(let i=0;i<this.datalistColumns.length;i++)data.push({id:this.datalistColumns[i].ColumnId,text:this.datalistColumns[i].AliasName});data.filter(function(o){return o.text===filtercols[0].ValueColumn}).length>0&&(valcol=data.filter(function(o){return o.text===filtercols[0].ValueColumn})[0].id);data.filter(function(o){return o.text===filtercols[0].TextColumn}).length>0&&(txtcol=data.filter(function(o){return o.text===filtercols[0].TextColumn})[0].id);$("#datalistvalue_AutoComplete").select2({placeholder:"Select DataList",data:data});$("#datalisttext_AutoComplete").select2({placeholder:"Select DataList",data:data});$("#datalistvalue_AutoComplete").val(valcol).trigger("change");$("#datalisttext_AutoComplete").val(txtcol).trigger("change")}else return MessageHelper.Instance().showError("No DatalistColumns","divDynamicFilter_ErrorMessage");else return MessageHelper.Instance().showError(response.message,"divDynamicFilter_ErrorMessage")}),$("#txt_DisplayName").val(filtercols[0].DisplayName)):reportcolumn&&$("#txt_DisplayName").val(reportcolumn.DisplayText);url=_appsettings.server_url()+"/apis/v4/unibase/platform/datalists/getall_autocomplete";AutoCompleteHelper.getHelper().Create("#datalistauto_AutoComplete","#hfcommmonfilterAutoComplete_DataList",url,function(response){var data=response;$("#btnClear").click(function(){var index,filter;let dynamicFilters=[];Unibase.Platform.Analytics.Reports.ReportFilter.Instance().isreportViewer?dynamicFilters=Unibase.Platform.Filters.Components.Editfilters.Instance().dynamicFilters:(dynamicFilters=Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.dynamicFilters,index=Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.dynamicFilters.findIndex(function(o){return o.IsFilterableColumn===reportcolumn.DisplayText}),index!==-1&&Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.dynamicFilters.splice(index,1),reportcolumn.IsFilterable=!1);filter=dynamicFilters.find(x=>x.TextColumn==$("#datalisttext_AutoComplete").select2("data")[0].text.trim());Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportManager.deleteDynamicFilter(filter.DynamicFilterId).then(function(){});$("#datalistauto_AutoComplete").text("select");$("#datalisttext_AutoComplete").text("select");$("#datalistvalue_AutoComplete").text("select")});$("#btnSave").unbind().click(function(){instance.isreportViewer?Unibase.Platform.Filters.Components.Editfilters.Instance().saveDynamicFilter(containerid):instance.save(reportcolumn,containerid)});$("#btnClose").unbind().click(function(){$("#"+containerid).modal("hide");$("#"+containerid).remove();instance.isreportViewer=!1});$("#datalistauto_AutoComplete").unbind().change(function(){Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportManager.getDataListColumns(Number($("#datalistauto_AutoComplete").val()),null,null).then(function(response){var res,data;if(response.status==Unibase.Data.Status.Success)if(response.result!=""){res=JSON.parse(response.result);data=[];for(let i=0;i<res.length;i++)data.push({id:res[i].ColumnId,text:res[i].AliasName});$("#datalistvalue_AutoComplete").html("");$("#datalisttext_AutoComplete").html("");$("#datalistvalue_AutoComplete").select2({placeholder:"Select DataList",data:data});$("#datalisttext_AutoComplete").select2({placeholder:"Select DataList",data:data})}else return MessageHelper.Instance().showError("No DataListColumns","divDynamicFilter_ErrorMessage");else return MessageHelper.Instance().showError(response.message,"divDynamicFilter_ErrorMessage")})})});let dlId=Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().DataListId;Unibase.Platform.DataSources.Managers.DataListManager.Instance().getDataList(dlId).then(res=>{if(res.status==Unibase.Data.Status.Success)if(res.result.Parameters){let params=res.result.Parameters.replaceAll("@","");params=params.split("|");let paramOptions="";for(var i=0;i<params.length;i++){let currentFilter=filtercols.find(x=>x.MappedColumn==params[i]);paramOptions+=currentFilter?`<option value="${params[i]}" selected > ${params[i]} </option>`:`<option value="${params[i]}"> ${params[i]} </option>`}$("#mappedcolumnsdropdown").append(paramOptions)}else $(".mappedcolumnsdiv").addClass("d-none")})}save(reportcolumn,containerid){var dynamicFilters,dynamicfilIndex,dynFill,index,model;let currentDatalistCol,IsFilterable=reportcolumn.IsFilterable;IsFilterable==!1&&(reportcolumn.IsFilterable=!IsFilterable);dynamicFilters=Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.dynamicFilters;let dynamicfilterid=0;if(dynamicfilIndex=dynamicFilters.find(d=>d.IsFilterableColumn==reportcolumn.DisplayText),dynFill=dynamicFilters.filter(function(o){return o.IsFilterableColumn===reportcolumn.DisplayText}),dynFill.length>0&&(dynamicfilterid=dynFill[0].DynamicFilterId,index=dynamicFilters.findIndex(function(o){return o.IsFilterableColumn===reportcolumn.DisplayText}),index!==-1&&dynamicFilters.splice(index,1)),model=new DynamicFilterModel,model.IsFilterableColumn=reportcolumn.AliasName,model.DynamicFilterId=dynamicfilterid,model.DataListId=Number($("#datalistauto_AutoComplete").val()),model.DataListName=$("#datalistauto_AutoComplete").select2("data")[0].text,model.ReportId=0,model.MappedColumn=$("#mappedcolumnsdropdown option:selected").val()==="0"?"":$("#mappedcolumnsdropdown option:selected").val().toString(),model.TextColumn=$("#datalisttext_AutoComplete").select2("data")[0].text.trim(),model.ValueIdColumn=Number($("#datalistvalue_AutoComplete").val()),model.ValueColumn=$("#datalistvalue_AutoComplete").select2("data")[0].text.trim(),model.TextIdColumn=Number($("#datalisttext_AutoComplete").val()),model.Index=dynamicfilIndex?dynamicfilIndex.Index:dynamicFilters.length,model.ControlTypeId=Number($("#ControlTypeDropDown").val()),model.FontCaseTypeId=Number($("#FontCaseTypeDropDown").val()),model.DataType=reportcolumn.DataType,model.DisplayName=$("#txt_DisplayName").val().toString(),model.IsDefault=$(".dynamicfilter-defaultdate_"+reportcolumn.ColumnName).is(":checked"),model.IsUnLimited=$("#isunlimited_checkbox").prop("checked"),model.IsRequired=$("#isrequired_checkbox").prop("checked"),currentDatalistCol=this.datalistColumns.find(x=>x.ColumnId==model.ValueIdColumn),currentDatalistCol&&reportcolumn.DataType==Reports.Enums.DataType.string&&currentDatalistCol.DataTypeId!=Reports.Enums.DataType.string&&currentDatalistCol.DataTypeId!=Reports.Enums.DataType.text)return MessageHelper.Instance().showError("Selected value column data type should be string","report_viewer_filter");if(currentDatalistCol&&(reportcolumn.DataType==Reports.Enums.DataType.int32||reportcolumn.DataType==Reports.Enums.DataType.int64||reportcolumn.DataType==Reports.Enums.DataType.decimal)&&currentDatalistCol.DataTypeId!=Reports.Enums.DataType.int32&&currentDatalistCol.DataTypeId!=Reports.Enums.DataType.int64&&currentDatalistCol.DataTypeId!=Reports.Enums.DataType.decimal)return MessageHelper.Instance().showError("Selected value column data type should be integer as dynamic filter data type is integer","report_viewer_filter");Unibase.Platform.Analytics.Reports.ReportFilter.Instance().sortDynamicFilter(model);Unibase.Platform.Analytics.Reports.ReportFilter.Instance().reportBuilder.dynamicFilters.push(model);$("#"+containerid).modal("hide");$("#"+containerid).remove()}sortDynamicFilter(){var instance=this;let filetersList=$("#dynamic-list-group-wrapper");filetersList&&filetersList.sortable({connectWith:"#dynamic-list-group-wrapper",cursor:"move",update:function(){$.each($("#dynamic-list-group-wrapper .datagroup"),function(index,item){let itemName=$(item).attr("data-isfilterablecolumn"),dynamicFilters=instance.dynamicFilters;if(dynamicFilters.length!=0)for(let x=0;x<dynamicFilters.length;x++)if(dynamicFilters[x].IsFilterableColumn==itemName){dynamicFilters[x].Index=index;break}instance.isreportViewer&&$(item).find(".filter-index").text(index+1)});instance.isreportViewer||instance.reportBuilder.load_data(instance.reportBuilder.table)}})}dynamicFilterIsDefaultDateColumn(columnName){var dIndex=this.getIndexByDisplayText_dynamicFilterColumns(columnName),isdefault;if(dIndex!=-1){let currentFilter=this.reportBuilder.dynamicFilters[dIndex];if(currentFilter.IsPartition)return $("#dynamicfilter-defaultdate_"+columnName).prop("checked",!1),MessageHelper.Instance().showError("Dynamic filter cannot be both partition and default, uncheck partition before making default","div_ReportBuilderErrorMessage");$("#dynamicfilter-defaultdate_"+columnName).hasClass("imchecked")&&($("input[type=radio][name=defaultdate]").prop("checked",!1),$("#dynamicfilter-defaultdate_"+columnName).removeClass("imchecked"));isdefault=$("#dynamicfilter-defaultdate_"+columnName).is(":checked");isdefault&&$("#dynamicfilter-defaultdate_"+columnName).addClass("imchecked");currentFilter.IsDefault=isdefault;this.reportBuilder.dynamicFilters[dIndex]=currentFilter;Unibase.Platform.Analytics.Managers.ReportManager.Instance().saveDynamicFilter(this.reportBuilder.reportid,this.reportBuilder.dynamicFilters).then(res=>{res.status==Unibase.Data.Status.Success?MessageHelper.Instance().showSuccess("Filter Saved Sucessfully","divEditFiltersErrMsg"):MessageHelper.Instance().showError(res.message,"div_ReportBuilderErrorMessage")})}}dynamicFilterIsPartition(columnName){var dIndex=this.getIndexByDisplayText_dynamicFilterColumns(columnName),ispartition;if(dIndex!=-1){let currentFilter=this.reportBuilder.dynamicFilters[dIndex];if(currentFilter.IsDefault)return $("#chk_ispartition_"+columnName).prop("checked",!1),MessageHelper.Instance().showError("Dynamic filter cannot be both partition and default, uncheck default before making partition","div_ReportBuilderErrorMessage");ispartition=$("#chk_ispartition_"+columnName).prop("checked");currentFilter.IsPartition=ispartition;this.reportBuilder.dynamicFilters[dIndex]=currentFilter;Unibase.Platform.Analytics.Managers.ReportManager.Instance().saveDynamicFilter(this.reportBuilder.reportid,this.reportBuilder.dynamicFilters).then(res=>{res.status==Unibase.Data.Status.Success?MessageHelper.Instance().showSuccess("Filter Saved Sucessfully","divEditFiltersErrMsg"):MessageHelper.Instance().showError(res.message,"div_ReportBuilderErrorMessage")})}}removeDynamicFilterSelectedColumn_table(DisplayText){var instance=this;bootbox.confirm("Do you want to Delete the Filter?",function(result){var index,i;if(result)if(index=instance.dynamicFilters.findIndex(function(o){return o.IsFilterableColumn===DisplayText&&instance.reportManager.deleteDynamicFilter(o.DynamicFilterId).then(function(response){response.status==Unibase.Data.Status.Success?MessageHelper.Instance().showSuccess(response.message,""):response.status==Unibase.Data.Status.Error&&MessageHelper.Instance().showError(response.message,"divEditFiltersErrMsg")}),o.IsFilterableColumn===DisplayText}),index!==-1&&instance.dynamicFilters.splice(index,1),$(`[data-isfilterablecolumn="${DisplayText}"]`).remove(),instance.dynamicFilters.length!=0)for(i=0;i<instance.dynamicFilters.length;i++){let filterIndex=instance.getIndexByDisplayText_dynamicFilterColumns(instance.dynamicFilters[i].IsFilterableColumn);instance.dynamicFilters[filterIndex].Index=i;instance.isreportViewer&&$("#dynamic-list-group-wrapper .filter-item").eq(i).find(".filter-index").text(i+1)}else instance.isreportViewer&&($("#dynamicFiltersCard").addClass("d-none"),$("#staticFiltersCard").is(":visible")||$("#noFiltersErrMsg").removeClass("d-none"))})}getIndexByDisplayText_dynamicFilterColumns(isFilterableColumn){return this.reportBuilder.dynamicFilters.findIndex(x=>x.IsFilterableColumn==isFilterableColumn)}static Instance(){return this.instance===undefined&&(this.instance=new ReportFilter),this.instance}}Reports.ReportFilter=ReportFilter})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))})(Unibase||(Unibase={})),function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){let Requests;(function(Requests){class ReportGroup{}Requests.ReportGroup=ReportGroup})(Requests=Reports.Requests||(Reports.Requests={}))})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))}(Unibase||(Unibase={})),function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){class ReportGroup extends Platform.Core.BaseComponent{constructor(){super();this.parentGroupId=0;this.groupId=0;this.groupName="";this._reportManager=Analytics.Managers.ReportManager.Instance()}cssFiles(){return[]}jsFiles(){return["platform/analytics/requests/reportgroup.js","platform/core/infos/status.js"]}html(){return`<form id="" method="post" class="" data-formuniquekey="" data-validate="parsley"><header class="b-b bg-white modal-header"><strong class="text-dark Title" id="div_FormName">Create Report Group</strong></header><div class="bg-light control-sorting modal-body bg-white" style="overflow-y:auto; height:475px;"><div id="" class="clear bizgaze_FormErrorMessages"></div><div id="divReportGroup_ErrorMessage"></div><div class="section_ReportGroup card"><div class="card-body">
  98. <div class="row">
  99. <div class="col-sm-6">
  100. <div>
  101. <label for="lbl" id="lbl_GroupName">Report Group Name
  102. <span class="text-danger" id="spnIsRequired_reportgroup"> *</span>
  103. </label>
  104. <input type="text" id="txt_GroupName" class="type-control form-control type-control value-control required"
  105. data-regularexp="" data-validatemsg="" placeholder="Enter Report Group Name *">
  106. </div>
  107. <label for="Validation" id="lblValidation_GroupName"></label>
  108. </div>
  109. <div class="col-sm-6">
  110. <label for="lbl" id="lbl_displayname">Display Name</label>
  111. <input type="text" id="txt_displayname" class="type-control form-control type-control value-control required"
  112. data-regularexp="" data-validatemsg="" placeholder="Enter Display Name ">
  113. <label for="Validation" id="lblValidation_displayname"></label>
  114. </div>
  115. <div class="IsInternalGroupDiv col-sm-6 flex-between-center">
  116. <span>IsInternalGroup</span>
  117. <label class="switch mb-0" for="reportGroup_IsInternalGroup">
  118. <input type="checkbox" id="reportGroup_IsInternalGroup"><span></span>
  119. <input type="hidden" id="hf_IsInternalGroup"> <input type="hidden" class="value-control"
  120. id="hf_IsInternalGroupid">
  121. </label>
  122. </div>
  123. <div id="" class="form-group col-sm-6">
  124. <label for="lbl" id="lbl_reportgroupindex">Report Group Index
  125. <span class="text-danger " id="spnIsRequired_reportgroupindex"></span>
  126. </label>
  127. <input type="text" id="txt_reportgroupindex"
  128. class="type-control form-control type-control value-control required"
  129. data-regularexp="" data-validatemsg="" placeholder="Enter Report Group Index *">
  130. </div>
  131. <div class="form-group col-sm-6">
  132. <label for="parentgroupid">
  133. Parent Group
  134. </label>
  135. <select class="form-control" id="parentgroupid" >
  136. </select>
  137. </div>
  138. <div class="IsEnableFolder col-sm-6 flex-between-center">
  139. <span>EnableFolder</span>
  140. <label class="switch mb-0" for="reportGroup_IsEnableFolder">
  141. <input type="checkbox" id="reportGroup_IsEnableFolder"><span></span>
  142. <input type="hidden" id="hf_IsEnableFolder"> <input type="hidden" class="value-control" id="hf_IsEnableFolder">
  143. </label>
  144. </div>
  145. <label for="Validation" id="lblValidation_GroupName"></label>
  146. </div></div></div></div></div><footer class="bg-white modal-footer" id="formFooter"><a href="javascript:;" id="btn_CloseForm" class="btn btn-light btn-sm mr-auto" onclick=""> Close</a><a href="javascript:;" id="btn_SaveReportGrp" class="btn btn-primary btn-sm" > Save</a></footer></form>`}load(id,containerid){var instance=this;instance.parentGroupId=0;$("#"+containerid).find(".modal-body").css("height",$(window).outerHeight()-$("#"+containerid).find(".modal-header").outerHeight()-$("#"+containerid).find(".modal-footer").outerHeight()+"px");id!=0&&instance.loadReportGroup(id);$("#btn_SaveReportGrp").click(function(){let isInternal=$("#reportGroup_IsInternalGroup").prop("checked"),isEnableFolder=$("#reportGroup_IsEnableFolder").prop("checked"),groupIndex=$("#txt_reportgroupindex").val();if($("#txt_GroupName").val()=="")return MessageHelper.Instance().showError("Please select ReportGroup","divReportGroup_ErrorMessage");let model=new Unibase.Platform.Analytics.Reports.Requests.ReportGroup;model.GroupName=String($("#txt_GroupName").val());model.ReportGroupId=id;model.IsInternalGroup=isInternal;model.EnableFolder=isEnableFolder;model.ReportGroupIndex=parseInt(groupIndex)?parseInt(groupIndex):0;model.ParentGroupId=instance.parentGroupId;model.DisplayName=String($("#txt_displayname").val());instance._reportManager.saveReportGroup(model).then(function(response){let res=JSON.parse(response.result);response.status==Unibase.Data.Status.Error?MessageHelper.Instance().showError(response.message,"divReportGroup_ErrorMessage"):($("#RptGroup_AutoComplete").append("<option selected value="+res.ReportGroupId+">"+res.GroupName+"<\/option>"),MessageHelper.Instance().showSuccess(response.message,""),$("#"+containerid).modal("hide"),$("#"+containerid).remove())})});$("#btn_CloseForm").click(function(){$("#"+containerid).modal("hide");$("#"+containerid).remove();$("#RptGroup_AutoComplete").remove()});instance.loadReportGroups();$("#parentgroupid").change(function(e){instance.parentGroupId=Number(e.currentTarget.value);var parentGroupName=e.currentTarget.textContent.trim();if(instance.groupId==instance.parentGroupId)return e.currentTarget.value="0",e.currentTarget.textContent="",MessageHelper.Instance().showError(`Cannot select same report group as parent group`,"divReportGroup_ErrorMessage"),!1;instance.groupId&&instance.parentGroupId&&instance._reportManager.checkReportGroupDependency(instance.groupId,instance.parentGroupId).then(response=>{if(response.status==Unibase.Data.Status.Success&&response.result)return e.currentTarget.value="0",e.currentTarget.textContent="",MessageHelper.Instance().showError(`Parent group ${parentGroupName} has the current report group ${instance.groupName} as parent group, change the parent report group and try again`,"divReportGroup_ErrorMessage"),!1})})}loadForm(){var instance=this;instance.navigationHelper.popup(0,"",instance,null,Platform.Helpers.Size.Large)}loadReportGroupForm(iscreate){var Pk_Value=0,instance=this;iscreate||(Pk_Value=Unibase.Themes.Providers.DetailHelper.recordId);instance.navigationHelper.popup(Pk_Value,"",instance,null,Platform.Helpers.Size.Large)}editReportGroup(){var instance=this,reportGroupId=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("reportgroupid")).Value);instance.navigationHelper.popup(reportGroupId,"",instance,null,Unibase.Platform.Helpers.Size.Large)}loadReportGroup(id){var instance=this;instance._reportManager.getReportGroupById(id).then(function(response){if(response.status==Unibase.Data.Status.Success){var res=response.result;instance.groupId=response.result.ReportGroupId;instance.groupName=response.result.GroupName;instance.displayName=response.result.DisplayName;$("#txt_GroupName").val(res.GroupName).attr("disabled","disabled");$("#reportGroup_IsInternalGroup").prop("checked",res.IsInternalGroup);$("#reportGroup_IsEnableFolder").prop("checked",res.EnableFolder);$("#txt_reportgroupindex").val(res.ReportGroupIndex);$("#txt_displayname").val(res.DisplayName);res.ParentGroupId&&(instance.parentGroupId=res.ParentGroupId,instance._reportManager.getReportGroupById(res.ParentGroupId).then(res=>{if(res.status==Unibase.Data.Status.Success){var option=new Option(res.result.RecursiveParentName,res.result.ReportGroupId.toString(),!0,!0);$("#parentgroupid").append(option)}}))}else return MessageHelper.Instance().showError(response.message,"divReportGroup_ErrorMessage")})}exportGroupReports(reportgroupid){var instance=this,ReportGroupId=0;ReportGroupId=reportgroupid==0?Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("reportgroupid")).Value):reportgroupid;ReportGroupId!=0&&(instance.navigationHelper.showLoading(),instance._reportManager.getReportGroupById(ReportGroupId).then(function(response){let groupname=response.result.GroupName;instance._reportManager.exportGroupreports(ReportGroupId).then(function(rptgrpresponse){var filename=groupname+".xml",xmltext=rptgrpresponse.result,pom=document.createElement("a"),bb=new Blob([xmltext],{type:"text/plain"});pom.setAttribute("href",window.URL.createObjectURL(bb));pom.setAttribute("download",filename);pom.dataset.downloadurl=["text/plain",pom.download,pom.href].join(":");pom.draggable=!0;pom.classList.add("dragout");pom.click();instance.navigationHelper.hideLoading()})}))}deleteReportGroup(){const reportGroupId=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("reportgroupid")).Value),reportCount=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("reportcount")).Value);reportCount?bootbox.confirm("One or more reports are associated with this group, Please ensure to delete all reports associated with this group before deleting",()=>{}):bootbox.confirm("Are you sure to delete this group?",result=>{result&&this._reportManager.deleteReportGroup(reportGroupId).then(response=>{response.status==Unibase.Data.Status.Success?(MessageHelper.Instance().showSuccess("Report group has been sucessfully deleted","divReportGroup_ErrorMessage"),Unibase.Platform.Apps.Managers.AppManager.Instance().getInstallAppId("Unibase_Platform_Analytics_Reports_App_ReportsGroup").then(response=>{response.status==Unibase.Data.Status.Success&&Unibase.Themes.Compact.Components.Nav.Instance().loadList(response.result.InstalledAppId)})):MessageHelper.Instance().showError(response.message,"divReportGroup_ErrorMessage")})})}loadReportGroups(){var url=_appsettings.server_url()+"/apis/v4/unibase/platform/analytics/reportgroups_autocompleterecursive";AutoCompleteHelper.getHelper().Create("#parentgroupid","#hfAutoComplete_ReportGroup",url,null)}updateStatus(){var instance=this;let reportidGroupId=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("reportgroupid")).Value),statusId=Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x=>x.Key.endsWith("statusid")).Value),installedappId=Number(Unibase.Themes.Providers.DetailHelper.installedAppId);$("#DetailSetting_"+installedappId+"_Active").removeClass("btn-outline-primary");statusId==Unibase.Platform.Core.Enums.RowStatus.Active?($("#DetailSetting_"+installedappId+"_Active").addClass("btn-success"),$("#DetailSetting_"+installedappId+"_Active").removeClass("btn-red")):($("#DetailSetting_"+installedappId+"_Active").removeClass("btn-success"),$("#DetailSetting_"+installedappId+"_Active").addClass("btn-red"));$("#DetailSetting_"+installedappId+"_Active").text(statusId==Unibase.Platform.Core.Enums.RowStatus.Active?"Active":"InActive");$("#DetailSetting_"+installedappId+"_Active").click(function(){let id=Unibase.Platform.Core.Enums.RowStatus.Active;$("#DetailSetting_"+installedappId+"_Active").text()=="Active"&&(id=Unibase.Platform.Core.Enums.RowStatus.InActive);instance._reportManager.updateReportGroupStatus(reportidGroupId,id).then(function(statusres){statusres.status==Unibase.Data.Status.Success})})}static Instance(){return this.instance===undefined&&(this.instance=new ReportGroup),this.instance}}Reports.ReportGroup=ReportGroup})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))}(Unibase||(Unibase={}));__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())})},function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){class SubReport extends Platform.Core.BaseComponent{constructor(){super();this.subReportId=0;this.isDetail=!1;this.linkreport_aliasname="";this.inline=!0;this.appName="";this.childReportName="";this.filters=[];this.filterIndex=0;this.subReportsExists=!1;this.childReportId=0;this.parentReportId=0;this.isReportDuplicate=!1;this._reportManager=Analytics.Managers.ReportManager.Instance();this._reportBuilder=Reports.ReportBuilder.Instance();this._reportBuilderTemplate=Reports.ReportBuilder_Template.Instance()}cssFiles(){return[]}jsFiles(){return["platform/analytics/managers/reportmanager.js","platform/analytics/enums/subreporttype.js"]}html(){return this._reportBuilderTemplate.loadLinkToOtherReportForm()}load(id,containerid){var instance=this;instance.filters=[];instance.filterIndex=0;instance.isDetail=!1;instance.inline=!0;instance.subReportEdit();$("#btnConfigAddFilter").click(function(e){instance.filterIndex++;let isValueElement=$(e.target).closest(".form-row").find("[id^=isvalue_radio]"),isValue=isValueElement.prop("checked"),parametername=$("#cmbmainrptCols option:selected").text().trim(),parametervalue=$("#cmbsbrptCols option:selected").text().trim(),operator=$("#slctdoperater option:selected").text().trim(),isValueText=$("#cmbmainrptCols_textbox").val();if(isValue||parametername.toLowerCase()!="main report columns"){if(isValue&&!isValueText)return MessageHelper.Instance().showError("Please enter text in main report value column","sub_report_error_message")}else return MessageHelper.Instance().showError("Please select main report column","sub_report_error_message");if(operator.toLowerCase()=="-select-")return MessageHelper.Instance().showError("Please select operator type","sub_report_error_message");if(isValue&&isValueText==parametervalue.toLowerCase())return MessageHelper.Instance().showError("Main report column name and value column and is value text cannot be same","sub_report_error_message");if(parametervalue.toLowerCase()=="sub report column")return MessageHelper.Instance().showError("Please select sub report column","sub_report_error_message");isValue&&(parametername=isValueText);instance.filters.push({ParameterName:parametername,ParameterValue:parametervalue,Operator:operator,Isvalue:isValue});instance.addSubReportFilter(parametername,parametervalue,operator,isValue);isValue&&($("#cmbmainrptCols_textbox").val(""),isValueElement.trigger("click"));$("#cmbmainrptCols").val(0).trigger("change");$("#cmbsbrptCols").val(0).trigger("change");$("#slctdoperater").val(0).trigger("change")});$("#btnLinkReportSave").click(()=>{var table,autoNumFormatter,hideIcon;let subReportArray=instance.getSubReportContainerArray();if(instance.isDetail)instance.saveSubReport_DetailFields();else if(instance.saveSubReport_Report(subReportArray))return;instance.linkreport_aliasname==undefined&&(table=instance._reportBuilder.table,autoNumFormatter=function(cell){var row=cell.getRow(),rowIndex=row.getPosition(!1);return rowIndex+1},table.element&&table.element.children[1]&&table.element.children[1].lastChild&&table.element.children[1].lastChild.firstChild&&table.element.children[1].lastChild.firstChild.firstElementChild&&table.element.children[1].lastChild.firstChild.firstElementChild.firstChild&&table.element.children[1].lastChild.firstChild.firstElementChild.firstChild.className!="fa fa-eye"&&(hideIcon=function(){return"<i class='fa fa-eye'><\/i>"},table.addColumn({formatter:autoNumFormatter,title:"",headerSort:!1,minWidth:20},!0),table.addColumn({formatter:hideIcon,title:"",headerSort:!1},!0)));$("#"+containerid).modal("hide");$("#"+containerid).remove()});$("#btnLinkReportClose").click(function(){$("#"+containerid).modal("hide");$("#"+containerid).remove()});$("#subrpt_clear").click(function(){if(instance._reportBuilder.subreportdata.length!=0){var subfil_Index=instance._reportBuilder.subreportdata.findIndex(s=>s.AliasName==instance.linkreport_aliasname);subfil_Index>-1&&instance._reportBuilder.subreportdata.splice(subfil_Index,1)}});$(".select_reports").change(function(){let reportId=Number($(".select_reports").val());instance.subReportColumns(reportId)});$(".subreport-radio-btn").change(function(){$(this).val()=="report"?($("#linkreport_modal,#detailScreenBody").toggleClass("d-none"),$(".opentype-radio-btn:checked").val()=="inline"&&$("#subrpt_plus").removeClass("d-none")):($("#linkreport_modal,#detailScreenBody").toggleClass("d-none"),$("#subrpt_plus").addClass("d-none"))});$(".opentype-radio-btn").change(function(){if($(this).val()=="inline"?(instance.inline=!0,$("#subrpt_plus").removeClass("d-none")):(instance.inline=!1,$("#subrpt_plus").addClass("d-none")),instance._reportBuilder.subreportdata.length!=0){let index;index=instance.linkreport_aliasname?instance._reportBuilder.subreportdata.findIndex(s=>s.AliasName==instance.linkreport_aliasname):instance._reportBuilder.subreportdata.findIndex(s=>s.RowClick==!0);index>-1&&(instance._reportBuilder.subreportdata[index].Inline=instance.inline)}});$("#isvalue_radio_0").unbind().click(e=>{let isChecked=$(e.target).prop("checked");$(e.target).closest(".form-row").find("#div_mainreportColumn_textbox").parent().toggleClass("hidden");$(e.target).closest(".form-row").find("#div_mainreportColumn").parent().toggleClass("hidden")})}loadForm(){return[]}linkreport(aliasname){var instance=this;instance.linkreport_aliasname=aliasname;instance.navigationHelper.popup(0,"",this,null,Platform.Helpers.Size.Medium)}loadReports(){var instance=this,url;instance.childReportName="";url=_appsettings.server_url()+"/apis/v4/unibase/platform/analytics/reports";AutoCompleteHelper.getHelper().Create(".select_reports","hfReportAutoComplete",url,function(res){instance.childReportName=res.text.trim()})}mainReportColumns(){var instance=this,mainrpt_Cols=[];if(instance._reportBuilder.selectedColumns.length!=0){mainrpt_Cols.push({id:0,text:"Main Report Columns"});for(let i=0;i<instance._reportBuilder.selectedColumns.length;i++){let sCol=instance._reportBuilder.selectedColumns[i];mainrpt_Cols.push({id:sCol.AliasName,text:sCol.AliasName})}$("#cmbmainrptCols").select2({placeholder:"Select",data:mainrpt_Cols})}}subReportColumns(reportid){var instance=this;instance._reportManager.getColumns(reportid).then(function(subresponse){var subrpt_data=[];for(let i=0;i<subresponse.result.length;i++)subrpt_data.push({id:subresponse.result[i].ReportColumnId,text:subresponse.result[i].AliasName});$("#cmbsbrptCols").select2({placeholder:"Select",data:subrpt_data})})}loadInstalledApps(){return __awaiter(this,void 0,void 0,function*(){var instance=this,url;instance.appName="";url=_appsettings.server_url()+"/apis/v4/unibase/platform/apps/InstalledAppAutocomplete";AutoCompleteHelper.getHelper().Create("#detailInstalledApps","#hfAutoComplete_InstalledApp",url,function(res){instance.appName=res.text.trim()})})}primaryColumns(){var instance=this,mainrpt_Cols=[];if(instance._reportBuilder.selectedColumns.length!=0){mainrpt_Cols.push({id:0,text:"Main Report Columns"});for(let i=0;i<instance._reportBuilder.selectedColumns.length;i++){let sCol=instance._reportBuilder.selectedColumns[i];mainrpt_Cols.push({id:sCol.AliasName,text:sCol.AliasName})}$("#detailPrimaryKeyColumns").select2({placeholder:"Select",data:mainrpt_Cols})}}addSubReportFilter(paramname,paramvalue,operator,isValue){var Confightml="";let id=paramname.replace(" ","_").trim()+paramvalue.replace(" ","_").trim();Confightml=`<li id="li_filter_ul2list_0${id}" class="fltr-row filteritems-addedrow clear" ><div class="form-row mb-10">
  147. <div class="col-auto mt-2 mr-2">
  148. <input class="" type="checkbox" readonly title="Is value" ${isValue&&"checked"} onclick="return false">
  149. </div>
  150. <div class="col"><input type="text" class="form-control disabled-border" value="`+paramname+`" disabled></div><div class="col-auto"><input type="text" class="form-control disabled-border text-center" value="`+operator+`" disabled></div><div class="col"><input type="text" class="form-control disabled-border" value="`+paramvalue+`" disabled></div><div class="col-auto"><a id="btnDeleteCouponItem" onclick = "Unibase.Platform.Analytics.Reports.SubReport.Instance().removefilters( `+Number($(".select_reports").val())+`,'`+paramname+`','`+paramvalue+`','li_filter_ul2list_0${id}');" class="btn btn-icon btn-flush-danger flush-soft-hover btn-rounded filter-remove-btn"><span class="btn-icon-wrap"><span class="line-icon"><i class="las la-trash-alt font-26 text-danger"></i></span></span></a></div></div></li>`;$(".ul2list_0").append(Confightml);$(".ul2list_0").children().length==1&&$(".ul2list_0").children().first().find(".filter-remove-btn").addClass("disabled")}subReportEdit(){return __awaiter(this,void 0,void 0,function*(){var instance=this,subfil_Index,subrpt_data,filters,f,Confightml;yield instance.loadReports();instance.mainReportColumns();instance.primaryColumns();yield instance.loadInstalledApps();instance.subReportsExists=!1;let subReportArray=instance.getSubReportContainerArray();if(subReportArray!=undefined&&(subReportArray.length&&(instance.subReportsExists=!0),instance.linkreport_aliasname?subfil_Index=subReportArray.findIndex(s=>s.AliasName==instance.linkreport_aliasname):(subfil_Index=subReportArray.findIndex(s=>s.RowClick==!0),subfil_Index==-1&&(subfil_Index=subReportArray.findIndex(s=>s.AliasName||s.SubReportTypeId==Unibase.Platform.Analytics.Reports.Enums.SubReportType.Detail))),subfil_Index>-1))if(subrpt_data=subReportArray[subfil_Index],subrpt_data.SubReportTypeId==Unibase.Platform.Analytics.Reports.Enums.SubReportType.Report){for($("#reportRadioBtn").prop("checked",!0),$(".select_reports").empty().append('<option value = "'+subrpt_data.ChildReportId+'" > '+subrpt_data.ChildReportName+" <\/option>"),$(".select_reports").val(subrpt_data.ChildReportId),instance.subReportId=subrpt_data.SubReportId,instance.childReportId=subrpt_data.ChildReportId,instance.parentReportId=subrpt_data.ReportId,instance.subReportColumns(subrpt_data.ChildReportId),filters=JSON.parse(subrpt_data.Filters),f=0;f<filters.length;f++){let fill=filters[f],id=fill.ParameterName.replaceAll(" ","_").trim()+fill.ParameterValue.replaceAll(" ","_").trim();Confightml=`<li id="li_filter_ul2list_0${id}" class="fltr-row filteritems-addedrow clear" ><div class="form-row mb-10">
  151. <div class="col-auto mt-2 mr-2">
  152. <input class="" type="checkbox" readonly title="Is value" ${fill.Isvalue&&"checked"} onclick="return false">
  153. </div>
  154. <div class="col"><input type="text" class="form-control disabled-border" value="`+fill.ParameterName+`" disabled></div><div class="col-auto"><input type="text" class="form-control disabled-border text-center" value="`+fill.Operator+`" disabled></div><div class="col"><input type="text" class="form-control disabled-border" value="`+fill.ParameterValue+`" disabled></div><div class="col-auto"><a id="btnDeleteCouponItem" onclick = "Unibase.Platform.Analytics.Reports.SubReport.Instance().removefilters( `+Number($(".select_reports").val())+`,'`+fill.ParameterName+`','`+fill.ParameterValue+`','li_filter_ul2list_0${id}');" class="btn btn-icon btn-flush-danger flush-soft-hover btn-rounded filter-remove-btn"><span class="btn-icon-wrap"><span class="line-icon"><i class="las la-trash-alt font-26 text-danger"></i></span></span></a></div></div></li>`;$(".ul2list_0").append(Confightml);f||$(".ul2list_0").find(".filter-remove-btn").addClass("disabled");instance.filters.push(fill)}Confightml="";subrpt_data.Inline?$("#inlineRadioBtn").prop("checked",!0):$("#outlineRadioBtn").prop("checked",!0);instance.inline=subrpt_data.Inline}else instance.isDetail=!0,instance.subrpt_AliasName=subrpt_data.AliasName,instance.installedAppId=subrpt_data.InstalledAppId,instance.primaryKeyColumn=subrpt_data.PrimaryKeyColumn,$("#detailRadioBtn").prop("checked",!0),$("#linkreport_modal,#detailScreenBody").toggleClass("d-none"),$("#subrpt_plus").addClass("d-none"),$("#detailInstalledApps").empty().append('<option value = "'+subrpt_data.InstalledAppId+'" > '+subrpt_data.AppName+" <\/option>"),$("#detailInstalledApps").val(subrpt_data.InstalledAppId),$("#detailPrimaryKeyColumns").val(subrpt_data.PrimaryKeyColumn).trigger("change")})}subReportType_Deatil(){var instance=this,subfil_Index,subfill,fil,i;if(instance.isDetail=!0,subfil_Index=instance._reportBuilder.subreportdata.findIndex(s=>s.AliasName==instance.linkreport_aliasname),subfil_Index>-1)for(subfill=instance._reportBuilder.subreportdata[subfil_Index],fil=JSON.parse(subfill.Filters),i=0;i<fil.length;i++){let id=fil[i].ParameterName.replace(" ","_")+fil[i].ParameterValue.replace(" ","_");$("#li_filter_ul2list_0"+id).remove();instance._reportBuilder.subreportdata.splice(subfil_Index,1)}$(".select_reports").val(0).trigger("change");$("#cmbmainrptCols").val(0).trigger("change");$("#cmbsbrptCols").val(0).trigger("change");instance.primaryColumns();instance.loadInstalledApps()}subReportType_Report(){var instance=this,subfil_Index;instance.isDetail=!1;subfil_Index=instance._reportBuilder.subreportdata.findIndex(s=>s.AliasName==instance.linkreport_aliasname);subfil_Index>-1&&($("#detailInstalledApps").val("0").trigger("change"),$("#detailPrimaryKeyColumns").val("0").trigger("change"),$("#txt_detailonclick").val(""),instance._reportBuilder.subreportdata.splice(subfil_Index,1))}saveSubReport_Report(subReportArray){var instance=this,rowclick=!0,subreportdata,Index;instance.linkreport_aliasname&&(rowclick=!1);let reportType=this._reportBuilder.res?this._reportBuilder.res.ReportTypeId:this._reportBuilder.reportType,isChart=reportType==Unibase.Platform.Analytics.Reports.Enums.ReportType.Table?!1:!0;if(subreportdata=new NestedTableModel,subreportdata.ChildReportId=Number($(".select_reports").val()),subreportdata.ChildReportName=instance.childReportName,subreportdata.Filters=JSON.stringify(instance.filters),subreportdata.SubReportTypeId=$("#reportRadioBtn").is(":checked")?Unibase.Platform.Analytics.Reports.Enums.SubReportType.Report:0,subreportdata.Inline=instance.inline,subreportdata.RowClick=rowclick,subreportdata.AliasName=instance.linkreport_aliasname,subreportdata.ChildReportId||instance.subReportsExists){if(subreportdata.Filters=="[]"&&!instance.subReportsExists&&!isChart)return MessageHelper.Instance().showError("Please select sub report columns ","sub_report_error_message"),!0}else return MessageHelper.Instance().showError("Please select sub report ","sub_report_error_message"),!0;return subReportArray.length!=0&&typeof subReportArray=="object"?(Index=instance.linkreport_aliasname?subReportArray.findIndex(s=>s.AliasName==instance.linkreport_aliasname):subReportArray.findIndex(s=>s.RowClick==!0),Index>-1&&subreportdata.ChildReportId?subReportArray[Index]=subreportdata:subreportdata.ChildReportId&&subReportArray.push(subreportdata)):subreportdata.ChildReportId&&subReportArray.push(subreportdata),instance._reportBuilder.subreportdata=subReportArray,!1}saveSubReport_DetailFields(){var instance=this,subreportdata=new NestedTableModel,Index;if(subreportdata.InstalledAppId=Number($("#detailInstalledApps").val()),subreportdata.PrimaryKeyColumn=$("#detailPrimaryKeyColumns option:selected").text().trim(),subreportdata.Inline=instance.inline,subreportdata.SubReportTypeId=$("#detailRadioBtn").is(":checked")?Unibase.Platform.Analytics.Reports.Enums.SubReportType.Detail:0,subreportdata.AliasName=instance.linkreport_aliasname,subreportdata.AppName=instance.appName,subreportdata.PrimaryKeyColumn.toLowerCase()=="select column")return MessageHelper.Instance().showError("Please select primary key column","sub_report_error_message");if(!subreportdata.InstalledAppId)return MessageHelper.Instance().showError("Please select installed app","sub_report_error_message");let subReportArray=instance.getSubReportContainerArray();subReportArray.length!=0?(Index=instance.linkreport_aliasname?subReportArray.findIndex(s=>s.AliasName==instance.linkreport_aliasname):subReportArray.findIndex(s=>s.RowClick==!0),Index>-1&&subreportdata.AppName!="Select"?subReportArray[Index]=subreportdata:subreportdata.AppName!="Select"&&subReportArray.push(subreportdata)):subReportArray.push(subreportdata)}removefilters(reportid,mainreportcolumn,subreportcolumn,id){var instance=this,index,fillIndex;instance.linkreport_aliasname?instance._reportBuilder.subreportdata.length!=0&&(index=instance._reportBuilder.subreportdata.findIndex(s=>s.AliasName==instance.linkreport_aliasname),index>-1&&instance._reportBuilder.subreportdata.splice(index,1)):instance.filters.length==1&&(index=instance._reportBuilder.subreportdata.findIndex(function(o){return o.ChildReportId===reportid}),index!==-1&&instance._reportBuilder.subreportdata.splice(index,1));fillIndex=instance.filters.findIndex(function(f){return f.ParameterName==mainreportcolumn&&f.ParameterValue===subreportcolumn});fillIndex>-1&&instance.filters.splice(fillIndex,1);instance.filters.length||$(event.target).closest(".report-body").find(".select_reports.custom-select").empty();$("#"+id+"").empty()}load_old(id,containerid){var instance=this,data,subreportid,Confightml;$("#cmbmainrptCols_1").empty();data=[];subreportid=0;instance._reportManager.getReports().then(function(response){var Data=response,whole_tableData,columnname,columnvalue;data.push({id:0,text:"Select"});data.push({id:0,text:"Select"});for(let i=0;i<Data.length;i++)data.push({id:Data[i].ReportId,text:Data[i].ReportName});$(".select_reports").select2({placeholder:"Select",data:data}).on("select2:select",function(){var reportid=Number($(".select_reports").val());let sub_blk=this.closest(".sub-report-block");sub_blk&&$(sub_blk).data("subreportid",reportid.toString());$("#cmbsbrptCols_1").find("option").not(":first").remove();instance._reportManager.getColumns(reportid).then(function(response){for(let i=0;i<response.result.length;i++){var columnname=response.result[i].DisplayText,columnvalue=response.result[i].ReportColumnId;$("<option>").val(columnvalue).text(columnname).appendTo("#cmbsbrptCols_1")}})});if(instance._reportBuilder.subreporttabledata!=undefined&&instance._reportBuilder.subreporttabledata!=null&&instance._reportBuilder.subreporttabledata!=""){if(instance._reportBuilder.subreporttabledata.length>0){var subarray=[],element=[],currentsubreport=[];instance._reportBuilder.subreportdata=[];instance._reportBuilder.subreport_count=1;for(let m=0;m<instance._reportBuilder.subreporttabledata.length;m++)instance._reportManager.getColumns(instance._reportBuilder.subreporttabledata[m].ChildReportId).then(function(response){var whole_tableData,columnname,columnvalue;if(currentsubreport.push(instance._reportBuilder.subreporttabledata[m]),element.push(response.result[0].ReportId),subarray.push(response.result),element.length==instance._reportBuilder.subreporttabledata.length){let k=1;for(let i=0;i<currentsubreport.length;i++){if(i!=0){instance.subReportId=currentsubreport[i].SubReportId;$("#subrpt_plus").trigger("click");k=i+1;data.length==0;$("#cmdsub_"+k+"").select2({placeholder:"Select",data:data});let lastSubEle=$("#linkreport_modal").find(".sub-report-block").last();lastSubEle.data("subreportid",currentsubreport[i].ChildReportId);lastSubEle.data("subreportcolumnid",currentsubreport[i].SubReportColumnId)}$("#cmdsub_"+k+"").val(currentsubreport[i].ChildReportId).trigger("change");$("<option>").val(0).text("Select Column").appendTo("#cmbmainrptCols_"+k+"");whole_tableData=instance._reportBuilder.selectedColumns;for(let j=0;j<whole_tableData.length;j++)columnname=whole_tableData[j].DisplayText,columnvalue=whole_tableData[j].ColumnId,$("<option>").val(columnvalue).text(columnname).appendTo("#cmbmainrptCols_"+k+"");let subcolumns=subarray[i].filter(function(o){return o.ReportId===currentsubreport[i].ChildReportId});$("#cmbsbrptCols_"+k+"").find("option").not(":first").remove();for(let l=0;l<subcolumns.length;l++)columnname=subcolumns[l].DisplayText,columnvalue=subcolumns[l].ReportColumnId,$("<option>").val(columnvalue).text(columnname).appendTo("#cmbsbrptCols_"+k+"");$("#btnAdd_"+instance._reportBuilder.subreport_count+"").unbind().click(function(){var id=$(this).attr("id").match(/\d+/g).map(Number);instance.addfilter(id[0],0);$("#btnDeleteCouponItem_"+id[0]+"").click(function(){instance.removefilters(Number($("#reporthid_"+id[0]+"").val()),Number($("#mainreportcolumnhid_"+id[0]+"").val()),Number($("#subreportcolumnhid_"+id[0]+"").val()),"ul2list_"+id[0]+"")})});$("#cmbmainrptCols_"+k+" option:contains('"+currentsubreport[i].ParameterValue.replace("@","").trim()+"')").prop("selected",!0);$("#cmbsbrptCols_"+k+" option:contains('"+currentsubreport[i].ParameterName.trim()+"')").prop("selected",!0);k==1?(subreportid=currentsubreport[i].SubReportId,$("#btnConfigAddFilter").click()):(subreportid=currentsubreport[i].SubReportId,$("#btnAdd_"+k+"").click());instance.subReportId=0}}})}}else{$("<option>").val(0).text("Select Column").appendTo("#cmbmainrptCols_1");whole_tableData=instance._reportBuilder.selectedColumns;for(let i=0;i<whole_tableData.length;i++)columnname=whole_tableData[i].ColumnName,columnvalue=whole_tableData[i].ColumnId,$("<option>").val(columnvalue).text(columnname).appendTo("#cmbmainrptCols_1,#detailPrimaryKeyColumns")}});$("#btnLinkReportSave").click(function(){var table,autoNumFormatter,hideIcon,data;instance.isDetail&&instance.subReportType_Deatil();table=instance._reportBuilder.table;autoNumFormatter=function(cell){var row=cell.getRow(),rowIndex=row.getPosition(!1);return rowIndex+1};table.element.children[1].lastChild.firstChild.firstElementChild.firstChild.className!="fa fa-eye"&&(hideIcon=function(){return"<i class='fa fa-eye'><\/i>"},table.addColumn({formatter:autoNumFormatter,title:"",headerSort:!1,minWidth:20},!0),table.addColumn({formatter:hideIcon,title:"",headerSort:!1},!0));$("#"+containerid).modal("hide");$("#"+containerid).remove();data=instance._reportBuilder.subreportdata});Confightml="";$("#btnConfigAddFilter").click(function(){let text=$("#cmbmainrptCols_1 option:selected").text(),text1=$("#cmbsbrptCols_1 option:selected").text();if(text!="Select Column"&&text1!="Sub report column"){let exists=instance._reportBuilder.subreportdata.find(x=>x.ParameterValue==text&&x.ParameterName==text1);if(!exists){let opertaor=$("#slctdoperater_0 option:selected").text(),id=text.replaceAll(" ","_")+text1.replaceAll(" ","_");Confightml=`<li id="li_filter_ul2list_0${id}" class="fltr-row filteritems-addedrow clear" ><div class="form-row mb-10"><div class="col"><input type="text" class="form-control disabled-border" value="`+text+`" disabled></div><div class="col-auto"><input type="text" class="form-control disabled-border text-center" value="`+opertaor+`" disabled></div><div class="col"><input type="text" class="form-control disabled-border" value="`+text1+`" disabled></div><div class="col-auto"><a id="btnDeleteCouponItem" onclick = "Unibase.Platform.Analytics.Reports.SubReport.Instance().removefilters( `+Number($(".select_reports").val())+`,`+Number($("#cmbmainrptCols_1 option:selected").val())+`,`+Number($("#cmbsbrptCols_1 option:selected").val())+`,'li_filter_ul2list_0${id}');" class="btn btn-icon btn-flush-danger flush-soft-hover btn-rounded filter-remove-btn"><span class="btn-icon-wrap"><span class="line-icon"><i class="las la-trash-alt font-26 text-danger"></i></span></span></a></div></div></li>`;$(".ul2list_0").append(Confightml);$(".ul2list_0").children().length==1&&$(".ul2list_0").children().first().find(".filter-remove-btn").addClass("hidden");var subreportdata=new NestedTableModel;instance._reportBuilder.reportid!=0&&(subreportdata.SubReportId=subreportid);subreportdata.ChildReportId=Number($(".select_reports").val());subreportdata.Operator=$("#slctdoperater_0 option:selected").text();subreportdata.ReportColumnId=Number($("#cmbmainrptCols_1 option:selected").val());subreportdata.SubReportColumnId=Number($("#cmbsbrptCols_1 option:selected").val());subreportdata.ReportColumnName=$("#cmbmainrptCols_1 option:selected").text();subreportdata.SubReportColumnName=$("#cmbsbrptCols_1 option:selected").text();subreportdata.ParameterValue=$("#cmbmainrptCols_1 option:selected").text();subreportdata.ParameterName=$("#cmbsbrptCols_1 option:selected").text();subreportdata.SubReportTypeId=$("#reportRadioBtn").is(":checked")?Unibase.Platform.Analytics.Reports.Enums.SubReportType.Report:0;subreportdata.ReportId=instance._reportBuilder.reportid;instance.childReportId=subreportdata.ChildReportId;instance.parentReportId=subreportdata.ReportId;instance._reportBuilder.subreportdata.push(subreportdata);instance._reportBuilder.subreporttabledata=instance._reportBuilder.subreportdata;$("#cmbmainrptCols_1").val("0");$("#cmbsbrptCols_1").val("0")}}});$("#btnLinkReportClose").click(function(){$("#"+containerid).modal("hide");$("#"+containerid).remove()});$("#subrpt_plus").click(function(){var main_reportcolumns,columnname,columnvalue;const subreportCnt=$("[id^=btnAdd]").length+2;var template=instance._reportBuilderTemplate.del_loadSubReports_Section(),templateScript=Handlebars.compile(template),context={subreport_count:subreportCnt},html=templateScript(context);$("#linkreport_modal").append(html);$("#cmdsub_"+subreportCnt+"").select2({placeholder:"Select",data:data});main_reportcolumns=instance._reportBuilder.selectedColumns;$("#cmbmainrptCols_"+subreportCnt+"").empty();$("<option>").val(0).text("Select Column").appendTo("#cmbmainrptCols_"+subreportCnt+"");for(let i=0;i<main_reportcolumns.length;i++)columnname=main_reportcolumns[i].ColumnName,columnvalue=main_reportcolumns[i].ColumnId,$("<option>").val(columnvalue).text(columnname).appendTo("#cmbmainrptCols_"+subreportCnt+"");$("#btnAdd_"+subreportCnt+"").click(function(){var colid=$(this).closest(".sub-report-block").find("#div_subColumn").children().first().val(),id=$(this).attr("id").match(/\d+/g).map(Number);instance.addfilter(id[0],0);let sub_blk=this.closest(".sub-report-block");sub_blk&&colid&&$(sub_blk).data("subreportcolumnid",colid)});$("#cmdsub_"+subreportCnt+"").on("select2:select",function(){var id=$(this).attr("id").match(/\d+/g).map(Number),reportid=Number($("#cmdsub_"+id[0]+"").val());let sub_blk=this.closest(".sub-report-block");sub_blk&&$(sub_blk).data("subreportid",reportid.toString());$("#cmbsbrptCols_"+id[0]+"").find("option").not(":first").remove();instance._reportManager.getColumns(reportid).then(function(response){for(let i=0;i<response.result.length;i++){var columnname=response.result[i].DisplayText,columnvalue=response.result[i].ReportColumnId;$("<option>").val(columnvalue).text(columnname).appendTo("#cmbsbrptCols_"+id[0]+"")}})});$("#cmbsbrpt_"+subreportCnt).empty();$("#cmbsbrpt_"+subreportCnt).append('<option value="0">--Select SubReport--<\/option>')});$("#linkreport_modal").click(this.subReportMdown.bind(this));const installedAppsUrl=_appsettings.server_url()+"/apis/v4/unibase/platform/apps/InstalledAppAutocomplete";AutoCompleteHelper.getHelper().Create("#detailInstalledApps","#hfDetailInstalledApps",installedAppsUrl,null);$(".subreport-radio-btn").change(function(){$(this).val()=="report"?($("#linkreport_modal,#detailScreenBody").toggleClass("d-none"),$(".opentype-radio-btn:checked").val()=="inline"&&$("#subrpt_plus").removeClass("d-none")):($("#linkreport_modal,#detailScreenBody").toggleClass("d-none"),$("#subrpt_plus").addClass("d-none"))});$(".opentype-radio-btn").change(function(){$(this).val()=="inline"?$("#subrpt_plus").removeClass("d-none"):$("#subrpt_plus").addClass("d-none")})}removefilters_old(reportid,mainreportcolumn,subreportcolumn,id){var instance=this,index;$("#"+id+"").empty();index=instance._reportBuilder.subreportdata.findIndex(function(o){return o.ChildReportId===reportid&&o.ReportColumnId===mainreportcolumn&&o.SubReportColumnId===subreportcolumn});index!==-1&&instance._reportBuilder.subreportdata.splice(index,1)}addfilter(id,SubReportId){var instance=this,filterhtml,subreportdata;let text=$("#cmbmainrptCols_"+id+" option:selected").text(),text1=$("#cmbsbrptCols_"+id+" option:selected").text(),opertaor=$("#slctdoperater_"+id+" option:selected").text();filterhtml=`<li id="li_filter_ul2list`+id+`" class="fltr-row filteritems-addedrow clear"><div class="form-row mb-10"><div class="col"> <input type="text" class="form-control lblViewerFilter_MainReportColumnName disabled-border" value="`+text+` " disabled> </div><div class="col-auto my-auto text-center"> <input type="text" class="form-control lblViewerFilter_Operator disabled-border text-center" value="`+opertaor+` " disabled> </div ><div class="col"> <input type="text" class="form-control lblViewerFilter_FilterValue disabled-border" value="`+text1+` " disabled></div> <div class="col-auto" > <a id="btnDeleteCouponItem_`+id+`" class="btn btn-icon btn-flush-danger flush-soft-hover btn-rounded" ><span class="btn-icon-wrap"><span class="line-icon"><i class="las la-trash-alt font-26 text-danger"></i></span></span></a></div><input type="hidden" id="operatorhid_`+id+`" name="zyx" value="`+opertaor+`" /><input type="hidden" id="reporthid_`+id+`" name="zyx" value="`+Number($("#cmdsub_"+id+"").val())+`" /><input type="hidden" id="mainreportcolumnhid_`+id+`" name="zyx" value="`+Number($("#cmbmainrptCols_"+id+" option:selected").val())+`" /><input type="hidden" id="subreportcolumnhid_`+id+`" name="zyx" value="`+Number($("#cmbsbrptCols_"+id+" option:selected").val())+`" /></div></li>`;$(".ul2list_"+id+"").append(filterhtml);subreportdata=new NestedTableModel;subreportdata.SubReportId=instance.subReportId||SubReportId;subreportdata.ChildReportId=Number($("#cmdsub_"+id+"").val());subreportdata.Operator=$("#slctdoperater_"+id+" option:selected").text();subreportdata.ParameterValue=$("#cmbmainrptCols_"+id+" option:selected").text();subreportdata.ParameterName=$("#cmbsbrptCols_"+id+" option:selected").text();subreportdata.ReportColumnId=Number($("#cmbmainrptCols_"+id+" option:selected").val());subreportdata.SubReportColumnId=Number($("#cmbsbrptCols_"+id+" option:selected").val());subreportdata.ReportColumnName=$("#cmbmainrptCols_"+id+" option:selected").text();subreportdata.SubReportColumnName=$("#cmbsbrptCols_"+id+" option:selected").text();instance._reportBuilder.subreportdata.push(subreportdata);$("#cmbmainrptCols_"+id).val("0");$("#cmbsbrptCols_"+id).val("0")}linkreport_old(){var instance=this;instance.navigationHelper.popup(0,"",this,null,Platform.Helpers.Size.Medium)}subReportMdown(e){let subrp=e.target.closest(".sub-report-block"),childReportId=$(subrp).data("subreportid");if(childReportId&&(childReportId=Number(childReportId)),e.target.classList.contains("remove_subrpt")||e.target.closest(".remove_subrpt")){let sRIdx;if(this._reportBuilder.subreportdata.filter(x=>x.ChildReportId==childReportId).length==1)sRIdx=this._reportBuilder.subreportdata.findIndex(x=>x.ChildReportId==childReportId),sRIdx!=-1&&this._reportBuilder.subreportdata.splice(sRIdx,1);else if(this._reportBuilder.subreportdata.filter(x=>x.ChildReportId==childReportId).length>1){let childReportColumnId=Number($(subrp).data("subreportcolumnid"));childReportColumnId&&(sRIdx=this._reportBuilder.subreportdata.findIndex(x=>x.ChildReportId==childReportId&&x.SubReportColumnId==childReportColumnId),sRIdx!=-1&&this._reportBuilder.subreportdata.splice(sRIdx,1))}subrp.remove()}else if(e.target.classList.contains("remove_subrpt_columns")||e.target.closest(".remove_subrpt_columns")){let sRIdx=this._reportBuilder.subreportdata.findIndex(x=>x.ChildReportId==childReportId);sRIdx!=-1&&this._reportBuilder.subreportdata.splice(sRIdx,1);$(e.target).closest(".filteritems-addedrow").remove()}}removeSubreport(){let idx=-1,subReportArray=this.getSubReportContainerArray();this.isDetail?(idx=this.installedAppId?subReportArray.findIndex(x=>x.AliasName==this.subrpt_AliasName&&x.InstalledAppId==this.installedAppId):subReportArray.findIndex(x=>x.ReportId==this.parentReportId&&x.ChildReportId==this.childReportId),idx>-1&&(this.installedAppId=0,subReportArray.splice(idx,1)),$("#detailPrimaryKeyColumns").val("0").trigger("change"),$("#detailInstalledApps").val("0").trigger("change")):(idx=this.subReportId?subReportArray.findIndex(x=>x.SubReportId==this.subReportId):subReportArray.findIndex(x=>x.ReportId==this.parentReportId&&x.ChildReportId==this.childReportId),idx>-1&&(this.linkreport_aliasname="",this.filters=[],this.childReportName="",subReportArray.splice(idx,1)),$("#subreports-filters-list").empty(),$("#cmdsub_1").val("0").empty())}getSubReportContainerArray(){return this.isReportDuplicate?Analytics.Components.DuplicateReport.Instance().subReports:this._reportBuilder.subreportdata}static Instance(){return this.instance===undefined&&(this.instance=new SubReport),this.instance}}Reports.SubReport=SubReport})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))}(Unibase||(Unibase={})),function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){class ColumnFormat{loadFormats(DataType){var formats=[];return DataType==Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime?formats=[{id:0,format:"Default"},{id:1,format:"dd/mm/yyyy"},{id:2,format:"mm/dd/yyyy"},{id:3,format:"yyyy/mm/dd"},{id:4,format:"Mon dd, yyyy"},{id:5,format:"Mon/yyyy"},{id:6,format:"hh"},{id:7,format:"mm"},{id:8,format:"ss"},{id:9,format:"hh:mm:ss"},{id:10,format:"hh:mm:ss AM"},{id:11,format:"dd/mm/yyyy hh:mm:ss"},{id:12,format:"dd/mm/yyyy hh:mm"},{id:13,format:"dd/mm/yyyy hh:mm:ss AM"},{id:14,format:"Mon dd, yyyy hh:mm:ss AM"}]:DataType==Unibase.Platform.Analytics.Reports.Enums.DataType.decimal&&(formats=[{id:0,format:"Default"},{id:1,format:"0.0"},{id:2,format:"0.00"},{id:3,format:"0.000"},{id:3,format:"0.0000"}]),formats}static Instance(){return this.instance===undefined&&(this.instance=new ColumnFormat),this.instance}}Reports.ColumnFormat=ColumnFormat})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))}(Unibase||(Unibase={})),function(Unibase){let Platform;(function(Platform){let Analytics;(function(Analytics){let Reports;(function(Reports){class ReportRoleSettings extends Platform.Core.BaseComponent{constructor(){super();this.isSingleAppSelected=!1;this.reportManager=Analytics.Managers.ReportManager.Instance()}cssFiles(){return[]}jsFiles(){return["platform/analytics/managers/reportmanager.js"]}html(){return`<section id="link-report-section" class="modal-content">
  155. <div class="modal-header pa-10" id="reportrolesetting_header">
  156. <strong class="modal-title biz-highlight-bg-color">Role Settings</strong>
  157. </div>
  158. <div data-simplebar class="simple-scroll-bar">
  159. <div id="divRoleSetting_ErrorMessage"></div>
  160. <div class="modal-body bg-charcoal-light-5 sub-report-block" id="reportrolesetting_modal">
  161. <div class="report-rolesettings-block card" data-select2-id="24">
  162. <div data-select2-id="23">
  163. <header class="report-rolesettings-head">
  164. <h6 class="required">
  165. Role Settings
  166. </h6>
  167. <span>
  168. <i class="las la-braille dragger"></i>
  169. </span>
  170. </button>
  171. </header>
  172. <div id="subrpts_div" data-select2-id="subrpts_div" class="">
  173. <div class="report-body">
  174. <div class="form-group">
  175. <div id="divsubrpt_0" data-select2-id="divsubrpt_">
  176. <div class="form-row">
  177. <div class="col">
  178. <div id="div_installedapps">
  179. <input type="hidden" id="hfrolesettings_installedapps">
  180. <select id="rolesettings_installedapps" class="form-control text-control required">
  181. <option value="0" selected="">Apps</option>
  182. </select>
  183. </div>
  184. </div>
  185. <div class="col">
  186. <div id="div_rolesettings">
  187. <select id="rolesettings_ddl" class="form-control custom-select mb-10 required">
  188. <option value="0" selected="">Role Settings</option>
  189. </select>
  190. </div>
  191. </div>
  192. <div class="col-auto">
  193. <a class="btn btn-icon btn-theme" id="btnConfigAddRoleSetting" onclick="" ;="">
  194. <span class="btn-icon-wrap"><span class="line-icon text-white"><i class="las la-plus"></i></span></span>
  195. </a>
  196. </div>
  197. </div>
  198. <div class="m-t-sm">
  199. <div class="form-row">
  200. <div class="col px-4 py-2">
  201. <strong> App Name </strong>
  202. </div>
  203. <div class="col py-2">
  204. <strong> RoleSetting </strong>
  205. </div>
  206. <div class="col-auto py-2 px-4">
  207. <a class="invisible"><i class="fa fa-close text-danger"></i></a>
  208. </div>
  209. </div>
  210. </div>
  211. <div id="RoleSettingExp"></div>
  212. </div>
  213. </div>
  214. </div>
  215. </div>
  216. </div>
  217. </div>
  218. </div>
  219. </div>
  220. </div></div>
  221. <div class="modal-footer pa-10" id="linkreport_footer">
  222. <button type="button" class="btn btn-sm btn-light mr-auto" id="btnRoleSettingsClose">Cancel</button>
  223. <button type="button" class="btn btn-sm btn-primary" id="btnRoleSettingsSave">Save</button>
  224. </div>
  225. </section>`}load(id,containerid){var instance=this;let isRoleSettingsExists=!1;if(instance._reportbuilder=Reports.ReportBuilder.Instance(),$("#btnRoleSettingsClose").click(function(){$("#"+containerid).modal("hide");$("#"+containerid).remove();instance.isSingleAppSelected&&(instance._reportbuilder.roleSettings=[],instance.isSingleAppSelected=!1)}),$("#rolesettings_installedapps").empty(),instance._reportbuilder.roleSettings&&instance._reportbuilder.roleSettings.length&&(isRoleSettingsExists=!0),instance._reportbuilder.roleSettings!=null)for(let i=0;i<instance._reportbuilder.roleSettings.length;i++){let item=instance._reportbuilder.roleSettings[i];instance.appendRoleSetting(item.AppTitle,item.SettingName)}$("#btnConfigAddRoleSetting").click(function(){var lefNavigationInstalledAppId,rolset;if(instance._reportbuilder.roleSettings&&instance._reportbuilder.roleSettings.length>=1){let idx=instance._reportbuilder.selectedColumns.findIndex(x=>x.AliasName=="installedappid");if(idx==-1)return MessageHelper.Instance().showError("Please add installedappid column in order to select app","divRoleSetting_ErrorMessage"),!1}var appName=$("#rolesettings_installedapps option:selected").text(),installedappid=$("#rolesettings_installedapps option:selected").val(),rolesetting=$("#rolesettings_ddl option:selected").text();if(appName!=""&&rolesetting!=""){if(lefNavigationInstalledAppId=Number($("#InstalledApp_AutoComplete option:selected").val()),installedappid==lefNavigationInstalledAppId)return instance._reportbuilder.roleSettings&&instance._reportbuilder.roleSettings.length==1&&(instance.isSingleAppSelected=!0),MessageHelper.Instance().showError(`Cannot use same app ${appName} in both role settings and installed app field of left navigation in report builder.`,"divRoleSetting_ErrorMessage");rolset=!1;instance._reportbuilder.roleSettings!=null&&(rolset=instance._reportbuilder.roleSettings.find(x=>x.AppTitle==appName&&x.SettingName==rolesetting)?!0:!1);rolset||(instance.appendRoleSetting(appName,rolesetting),instance._reportbuilder.roleSettings.push({InstalledAppId:Number($("#rolesettings_installedapps option:selected").val()),AppPermissionId:Number($("#rolesettings_ddl option:selected").val()),AppTitle:appName,SettingName:rolesetting}));$("#rolesettings_installedapps").html('<option value="0" selected="">Apps<\/option>').val("0");$("#rolesettings_ddl").html('<option value="0" selected="">Role Settings<\/option>').val("0")}});$("#btnRoleSettingsSave").click(function(){if(instance._reportbuilder.roleSettings!=null){if(instance._reportbuilder.roleSettings.length!=0||isRoleSettingsExists){if(instance._reportbuilder.roleSettings.length<2){var inst=$("#InstalledApp_AutoComplete").val();if(instance._reportbuilder.roleSettings.length==1&&(instance.isSingleAppSelected=!0),!inst)return MessageHelper.Instance().showError("Use installed app field in left navigation of report builder, if report have only one role setting","divRoleSetting_ErrorMessage")}else if(instance._reportbuilder.roleSettings.length==2){let installedid=$("#InstalledApp_AutoComplete option:selected").val();if(installedid)return MessageHelper.Instance().showError("Remove installedapp from left navigation of report builder to use multiple report role settings","divRoleSetting_ErrorMessage")}}else return MessageHelper.Instance().showError("Please Select Role Setting","divRoleSetting_ErrorMessage");instance._reportbuilder.roleSettings.length>1&&(instance.isSingleAppSelected=!1)}else return MessageHelper.Instance().showError("Please Select Role Setting","divRoleSetting_ErrorMessage");$("#"+containerid).modal("hide");$("#"+containerid).remove()});instance.loadInstalledApps()}loadInstalledApps(){var url=_appsettings.server_url()+"/apis/v4/unibase/platform/apps/InstalledAppAutocomplete";AutoCompleteHelper.getHelper().Create("#rolesettings_installedapps","#hfrolesettings_installedapps",url,function(){var installedappid=$("#hfrolesettings_installedapps").val();Unibase.Platform.Apps.Managers.AppManager.Instance().getAppPermissions(installedappid).then(function(response){var data;$("#rolesettings_ddl").html("");data=response.result;let viewPermission=data.find(function(x){return x.SettingName.toLowerCase()=="view"});viewPermission&&$("#rolesettings_ddl").append('<option value="'+viewPermission.AppPermissionId+'" columnvalue="" selected>'+viewPermission.SettingName+"<\/option>").val(viewPermission.AppPermissionId).trigger("change")})})}appendRoleSetting(appName,rolesetting){let ulDiv="ulAppName_"+appName.replace(/ /g,"_")+"-"+rolesetting.replace(/ /g,"_");var rshtml='<div class="border border-1 mt-2 ulDatalistFilters_'+appName.replace(" ","_")+rolesetting.replace(" ","_")+'" id = "'+ulDiv+'"><div class="form-row" id="li_AppName_'+appName+rolesetting+'"> <div class="col py-2 px-4 lblappname"> '+appName+' <\/div> <div class="col py-2 px-4 lblrolesetting"> '+rolesetting+' <\/div><div class="col-auto py-2 px-4"><a id = "btnRemove" onclick="Unibase.Platform.Analytics.Reports.ReportRoleSettings.Instance().RemoveRoleSettingExp(\''+appName+"','"+rolesetting+"','"+ulDiv+'\')" class="pull-right" ><i class="fa fa-close text-danger"><\/i><\/a><\/div><\/div><\/div>';$("#RoleSettingExp").append(rshtml)}RemoveRoleSettingExp(appname,rolesetting,ul){var instance=this,index;$("#"+ul+"").remove();index=instance._reportbuilder.roleSettings.findIndex(function(r){return r.AppTitle===appname&&r.SettingName===rolesetting});index!==-1&&instance._reportbuilder.roleSettings.splice(index,1)}static Instance(){return this.instance===undefined&&(this.instance=new ReportRoleSettings),this.instance}}Reports.ReportRoleSettings=ReportRoleSettings})(Reports=Analytics.Reports||(Analytics.Reports={}))})(Analytics=Platform.Analytics||(Platform.Analytics={}))})(Platform=Unibase.Platform||(Unibase.Platform={}))}(Unibase||(Unibase={}));