Built files from Bizgaze WebServer
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

reportrolesettings.min.js 8.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. var Unibase;(function(n){let t;(function(t){let i;(function(i){let r;(function(r){class u extends t.Core.BaseComponent{constructor(){super();this.isSingleAppSelected=!1;this.reportManager=i.Managers.ReportManager.Instance()}cssFiles(){return[]}jsFiles(){return["platform/analytics/managers/reportmanager.js"]}html(){return`<section id="link-report-section" class="modal-content">
  2. <div class="modal-header pa-10" id="reportrolesetting_header">
  3. <strong class="modal-title biz-highlight-bg-color">Role Settings</strong>
  4. </div>
  5. <div data-simplebar class="simple-scroll-bar">
  6. <div id="divRoleSetting_ErrorMessage"></div>
  7. <div class="modal-body bg-charcoal-light-5 sub-report-block" id="reportrolesetting_modal">
  8. <div class="report-rolesettings-block card" data-select2-id="24">
  9. <div data-select2-id="23">
  10. <header class="report-rolesettings-head">
  11. <h6 class="required">
  12. Role Settings
  13. </h6>
  14. <span>
  15. <i class="las la-braille dragger"></i>
  16. </span>
  17. </button>
  18. </header>
  19. <div id="subrpts_div" data-select2-id="subrpts_div" class="">
  20. <div class="report-body">
  21. <div class="form-group">
  22. <div id="divsubrpt_0" data-select2-id="divsubrpt_">
  23. <div class="form-row">
  24. <div class="col">
  25. <div id="div_installedapps">
  26. <input type="hidden" id="hfrolesettings_installedapps">
  27. <select id="rolesettings_installedapps" class="form-control text-control required">
  28. <option value="0" selected="">Apps</option>
  29. </select>
  30. </div>
  31. </div>
  32. <div class="col">
  33. <div id="div_rolesettings">
  34. <select id="rolesettings_ddl" class="form-control custom-select mb-10 required">
  35. <option value="0" selected="">Role Settings</option>
  36. </select>
  37. </div>
  38. </div>
  39. <div class="col-auto">
  40. <a class="btn btn-icon btn-theme" id="btnConfigAddRoleSetting" onclick="" ;="">
  41. <span class="btn-icon-wrap"><span class="line-icon text-white"><i class="las la-plus"></i></span></span>
  42. </a>
  43. </div>
  44. </div>
  45. <div class="m-t-sm">
  46. <div class="form-row">
  47. <div class="col px-4 py-2">
  48. <strong> App Name </strong>
  49. </div>
  50. <div class="col py-2">
  51. <strong> RoleSetting </strong>
  52. </div>
  53. <div class="col-auto py-2 px-4">
  54. <a class="invisible"><i class="fa fa-close text-danger"></i></a>
  55. </div>
  56. </div>
  57. </div>
  58. <div id="RoleSettingExp"></div>
  59. </div>
  60. </div>
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. </div>
  66. </div>
  67. </div></div>
  68. <div class="modal-footer pa-10" id="linkreport_footer">
  69. <button type="button" class="btn btn-sm btn-light mr-auto" id="btnRoleSettingsClose">Cancel</button>
  70. <button type="button" class="btn btn-sm btn-primary" id="btnRoleSettingsSave">Save</button>
  71. </div>
  72. </section>`}load(n,t){var i=this;let u=!1;if(i._reportbuilder=r.ReportBuilder.Instance(),$("#btnRoleSettingsClose").click(function(){$("#"+t).modal("hide");$("#"+t).remove();i.isSingleAppSelected&&(i._reportbuilder.roleSettings=[],i.isSingleAppSelected=!1)}),$("#rolesettings_installedapps").empty(),i._reportbuilder.roleSettings&&i._reportbuilder.roleSettings.length&&(u=!0),i._reportbuilder.roleSettings!=null)for(let n=0;n<i._reportbuilder.roleSettings.length;n++){let t=i._reportbuilder.roleSettings[n];i.appendRoleSetting(t.AppTitle,t.SettingName)}$("#btnConfigAddRoleSetting").click(function(){var u,r;let f=i._reportbuilder.selectedColumns.findIndex(n=>n.AliasName=="installedappid");if(f==-1)return MessageHelper.Instance().showError("Please add installedappid column in order to select app","divRoleSetting_ErrorMessage"),!1;var n=$("#rolesettings_installedapps option:selected").text(),e=$("#rolesettings_installedapps option:selected").val(),t=$("#rolesettings_ddl option:selected").text();if(n!=""&&t!=""){if(u=Number($("#InstalledApp_AutoComplete option:selected").val()),e==u)return i._reportbuilder.roleSettings&&i._reportbuilder.roleSettings.length==1&&(i.isSingleAppSelected=!0),MessageHelper.Instance().showError(`Cannot use same app ${n} in both role settings and installed app field of left navigation in report builder.`,"divRoleSetting_ErrorMessage");r=!1;i._reportbuilder.roleSettings!=null&&(r=i._reportbuilder.roleSettings.find(i=>i.AppName==n&&i.RoleSetting==t)?!0:!1);r||(i.appendRoleSetting(n,t),i._reportbuilder.roleSettings.push({InstalledAppId:Number($("#rolesettings_installedapps option:selected").val()),AppPermissionId:Number($("#rolesettings_ddl option:selected").val()),AppTitle:n,SettingName:t}),$("#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(i._reportbuilder.roleSettings!=null){if(i._reportbuilder.roleSettings.length!=0||u){if(i._reportbuilder.roleSettings.length<2)return i._reportbuilder.roleSettings.length==1&&(i.isSingleAppSelected=!0),MessageHelper.Instance().showError("Use installed app field in left navigation of report builder, if report have only one role setting","divRoleSetting_ErrorMessage");if(i._reportbuilder.roleSettings.length==2){let n=$("#InstalledApp_AutoComplete option:selected").val();if(n)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");i._reportbuilder.roleSettings.length>1&&(i.isSingleAppSelected=!1)}else return MessageHelper.Instance().showError("Please Select Role Setting","divRoleSetting_ErrorMessage");$("#"+t).modal("hide");$("#"+t).remove()});i.loadInstalledApps()}loadInstalledApps(){var t=_appsettings.server_url()+"/apis/v4/unibase/platform/apps/InstalledAppAutocomplete";AutoCompleteHelper.getHelper().Create("#rolesettings_installedapps","#hfrolesettings_installedapps",t,function(){var t=$("#hfrolesettings_installedapps").val();n.Platform.Apps.Managers.AppManager.Instance().getAppPermissions(t).then(function(n){var i;$("#rolesettings_ddl").html("");i=n.result;let t=i.find(function(n){return n.SettingName.toLowerCase()=="view"});t&&$("#rolesettings_ddl").append('<option value="'+t.AppPermissionId+'" columnvalue="" selected>'+t.SettingName+"<\/option>").val(t.AppPermissionId).trigger("change")})})}appendRoleSetting(n,t){let i="ulAppName_"+n.replace(/ /g,"_")+"-"+t.replace(/ /g,"_");var r='<div class="border border-1 mt-2 ulDatalistFilters_'+n.replace(" ","_")+t.replace(" ","_")+'" id = "'+i+'"><div class="form-row" id="li_AppName_'+n+t+'"> <div class="col py-2 px-4 lblappname"> '+n+' <\/div> <div class="col py-2 px-4 lblrolesetting"> '+t+' <\/div><div class="col-auto py-2 px-4"><a id = "btnRemove" onclick="Unibase.Platform.Analytics.Reports.ReportRoleSettings.Instance().RemoveRoleSettingExp(\''+n+"','"+t+"','"+i+'\')" class="pull-right" ><i class="fa fa-close text-danger"><\/i><\/a><\/div><\/div><\/div>';$("#RoleSettingExp").append(r)}RemoveRoleSettingExp(n,t,i){var u=this,r;$("#"+i+"").remove();r=u._reportbuilder.roleSettings.findIndex(function(i){return i.AppTitle===n&&i.SettingName===t});r!==-1&&u._reportbuilder.roleSettings.splice(r,1)}static Instance(){return this.instance===undefined&&(this.instance=new u),this.instance}}r.ReportRoleSettings=u})(r=i.Reports||(i.Reports={}))})(i=t.Analytics||(t.Analytics={}))})(t=n.Platform||(n.Platform={}))})(Unibase||(Unibase={}));