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.

datalistbuilder.template.js 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. var Unibase;
  2. (function (Unibase) {
  3. let Platform;
  4. (function (Platform) {
  5. let DataSources;
  6. (function (DataSources) {
  7. let Templates;
  8. (function (Templates) {
  9. class DatalistBuilder {
  10. loadDocTypeTemplate() {
  11. let html = `<li class="dd-item dd3-item" id="liDoctype_{{DocTypeId}}">
  12. <div class="blockelem create-flowy noselect">
  13. <input type="hidden" name="blockelemtypeid" class="blockelemtypeId" value="{{DocTypeId}}">
  14. <input type="hidden" name="blockelemtypename" class="blockelemtypename" value="{{DocTypeName}}">
  15. <input type="hidden" name="blockelemtablename" class="blockelemtablename" value="{{DocTypeTableName}}">
  16. <div class="grabme" style="margin-top:-5px;"><img src="libs/flowy/assets/grabme.svg"></div>
  17. <div class="blockin">
  18. <div class="blocktext" style="margin-left:-5px;">
  19. <p class="blocktitle text-sun">{{DocTypeName}}</p>
  20. </div>
  21. </div>
  22. </div>
  23. </li>`;
  24. return html;
  25. }
  26. loadDataSourceProvidersTemplate() {
  27. let html = `<div class="col-sm-3">
  28. <div class="card text-center"><a href="javascript:;" onclick="Unibase.DataSources.DataLists.DatalistBuilder.Instance().getDataSources({{DataSourceProviderId}},'{{DataSourceProviderName}}')">
  29. <div class="card-body text-center">
  30. <div class="avatar rounder-cornor"><i class="fa fa-cloud-download fa-4x"></i></div>
  31. <div class="mt-2"> {{DataSourceProviderName}}</div>
  32. </div></a>
  33. </div>
  34. </div>`;
  35. return html;
  36. }
  37. loadDataSourceTemplate() {
  38. let html = `<div class="col-sm-3">
  39. <div class="card text-center"><a href="javascript:;" onclick="Unibase.DataSources.DataLists.DatalistBuilder.Instance().editDataSource({{DataSourceId}},{{DataSourceProviderId}})">
  40. <div class="card-body text-center">
  41. <div class="avatar rounder-cornor"><i class="fa fa-database fa-4x"></i></div>
  42. <div class="mt-2">{{DataSourceName}}</div>
  43. </div></a>
  44. </div>
  45. </div>`;
  46. return html;
  47. }
  48. loadAddDataSourceTemplate(dataSourceproviderid) {
  49. let html = `<div class="card"><div class="card-header"><p class="h5" id="addDataSource_title">Add Data Source</p></div>
  50. <div class="card-body row" id="div_addDataSource_${dataSourceproviderid}">
  51. <input type="hidden" id="datasource_DataSourceId">
  52. <div class="form-group col-md-4"><label>User Id</label><input type="text" class="form-control" placeholder="User Id"id="datasource_UserId"></div>
  53. <div class="form-group col-md-4"><label>Password</label><input type="text" class="form-control" placeholder="Password" id="datasource_Password"></div>
  54. <div class="form-group col-md-4"><label>DataSourceName</label><input type="text" class="form-control" placeholder="DataSourceName" id="datasource_DataSourceName"></div>
  55. <div class="form-group col-md-4"><label>UserDeviceId</label><input type="text" class="form-control" placeholder="UserDeviceId" id="datasource_UserDeviceId"></div>
  56. <div class="form-group col-md-4"><label>Data Source Provider</label>
  57. <select class="form-control" id="select_datasourceproviders"></select>
  58. </div>
  59. </div>
  60. <div class="card-footer"><button id="btn-addsource-close" class="btn-addsource-close btn btn-secondary btn-sm mr-auto">Close</button><button id="btn-settings-save" class="btn-datasource-save btn btn-primary btn-sm" onclick="Unibase.DataSources.DataLists.DatalistBuilder.Instance().saveDataSource(${dataSourceproviderid})">Save</button></div>
  61. </div>`;
  62. return html;
  63. }
  64. loadDocPropertyTemplate() {
  65. let html = `<input type="hidden" id="doc_tablename" value="{{PropTableName}}"><li class="list-group-item li_docproperty" id="liDocProperty_{{DocPropertyId}}">
  66. <div id="div_docproperty" class="custom-control custom-checkbox"><input type="checkbox" class="chk_DocPropertyId custom-control-input" id="chk_DocPropertyId_{{DocPropertyId}}" value="{{DocPropertyId}}" onchange="DatalistBuilder.Instance().removeDocProperty({{DocPropertyId}})"> <label id="spn_DocpropertyName" class="custom-control-label" for="chk_DocPropertyId_{{DocPropertyId}}">{{DocPropertyName}}</label></div></li>`;
  67. return html;
  68. }
  69. loadJoinDoctypesTemplate(doctypeid, doctypename, doctablename, len) {
  70. let html = ` <li class="list-group-item" id="li_join_${len}">
  71. <div class="row">
  72. <div class="col-sm-3"><div id="docproperty_${doctypeid}"><p class="font-14"><strong>${doctypename}</strong></p><input type="hidden" id="hf_leftdoctablename_${len}" value="${doctablename}">
  73. <select id="select_docproperties_${doctypeid}_${len}"class="form-control">{{Options}}</select>
  74. </div></div>
  75. <div class="col-sm-2"><div id="jointype"><p class="font-14"><strong>Join Type</strong></p>
  76. <select id="select_joins_${len}"class="form-control">
  77. <option value="1" data-name="Inner" >Inner</option>
  78. <option value="2" data-name="LeftOuter" >LeftOuter</option>
  79. <option value="3" data-name="RightOuter" >RightOuter</option>
  80. <option value="4" data-name="FullOuter" >FullOuter</option>
  81. <option value="5" data-name="Cross" >Cross</option>
  82. <option value="6" data-name="Self" >Self</option>
  83. </select>
  84. </div></div>
  85. <div class="col-sm-3"><div id="doctypes_{{DoctypeId}}_${len}"><p class="font-14"><strong>Select DocType</strong></p><input type="hidden" id="hf_rightDoctype_${len}"><input type="hidden" id="hf_rightDoctypeName_${len}"><input type="hidden" id="hf_rightDocTableName_${len}">
  86. <select id="select_doctypes_${len}"class="form-control" onchange="javascript:Unibase.DataSources.DataLists.DatalistBuilder.Instance().getDocPropertiesByDoctypeId(${len})"></select>
  87. </div></div>
  88. <div class="col-sm-3"><div id="doctypeproperty_${len}" class="hidden"><p class="font-14 font-bold" id="selected_doctype_${len}"></p>
  89. <select id="select_docproperty_${len}"class="form-control"></select>
  90. </div></div>
  91. <button class="btn btn-icon btn-primary mt-10" id="btn_addJoins" onclick="javascript:Unibase.DataSources.DataLists.DatalistBuilder.Instance().addJoin(${doctypeid},'${doctypename}','${doctablename}',${len})"><i class="fa fa-plus"></i></button>
  92. </div></li>`;
  93. return html;
  94. }
  95. addJoinTemplate() {
  96. let html = `<tr class="join-rows"><td width="45%"><input type="hidden" id="leftdoctypeid" value={{LeftDocTypeId}} data-table={{LeftDocTableName}}><span id="td_leftdoctypename">{{LeftDocTypeName}}</span></td>
  97. <td width="50%"><input type="hidden" id="leftdocpropid" value={{LeftDocPropertyId}} ><span id="td_leftdocpropname">{{LeftDocPropertyName}}</span></td>
  98. <td width="45%"><input type="hidden" id="rightdoctypeid" value={{RightDocTypeId}} data-table={{RightDocTableName}} /><span id="td_rightdoctypename">{{RightDocTypeName}}</span></td>
  99. <td width="50%"><input type="hidden" id="rightdocpropid" value={{RightDocPropertyId}} ><span id="td_rightdocpropname">{{RightDocPropertyName}}</span></td>
  100. <td width="50%"><input type="hidden" id="doctype_joinid" value={{JoinId}} ><span id="td_jointype">{{JoinName}}</span></td>
  101. <td width="50%"><a href="javasrcipt:;" class="btn_joindelete"><i class="fa fa-trash text-danger"></i></a></td>
  102. </tr>`;
  103. return html;
  104. }
  105. loadJoinDocPropertiesTemplate() {
  106. let html = `<option value="{{DocPropertyId}}">{{DocPropertyName}}<option>`;
  107. return html;
  108. }
  109. loadDoctypesDropdownTemplate() {
  110. let html = `<option value="{{DocTypeId}}" data-table="{{DocTableName}}">{{DocTypeName}}<option>`;
  111. return html;
  112. }
  113. loadDataSourceProviderDropdownTemplate() {
  114. let html = `<option value="{{DataSourceProviderId}}">{{DataSourceProviderName}}<option>`;
  115. return html;
  116. }
  117. loadDataSourceProviders() {
  118. let html = `<div class="card" style="position: initial;height:-webkit-fill-available;"><div class="card-header"><p class="h5">Data Source Providers</div>
  119. <div class="card-body row" id="div_datasourceproviders">
  120. <div id="div_datasourceproviders" class="accordion"></div>
  121. </div>
  122. <div class="card-footer"><button id="btn-data-source-close" class="btn-datasource-close btn btn-secondary btn-sm mr-auto">Close</button></div>
  123. </div>`;
  124. return html;
  125. }
  126. loadCustomFilterTemplate() {
  127. let html = `<section id="custom-filter-section" class="modal-content">
  128. <div class="modal-header pa-10" id="reportrolesetting_header">
  129. <strong class="modal-title biz-highlight-bg-color">Custom Filter</strong>
  130. </div>
  131. <div data-simplebar class="simple-scroll-bar modal-body bg-charcoal-light-5">
  132. <div id="divCustomFilter_ErrorMessage"></div>
  133. <div class="sub-report-block" id="cutomfilter_modal">
  134. <div class="customfilter-block card" data-select2-id="24">
  135. <div data-select2-id="23">
  136. <header class="custom-filter-head">
  137. <h6 class="required">
  138. Custom Filters
  139. </h6>
  140. <div class="div_CustomFilter pull-right"><a id="btnAddCustomFilter" onclick="Unibase.Platform.DataSources.Components.CustomFilters.Instance().loadCustomFilterSection()"; class="btn btn-primary text-white"><span class="mr-2">Add</span></a></div>
  141. </button>
  142. </header>
  143. <div class="custom-filters pa-10"></div>
  144. </div>
  145. </div>
  146. </div>
  147. </div>
  148. </div>
  149. <div class="modal-footer pa-10" id="customfilter_footer">
  150. <button type="button" class="btn btn-sm btn-light mr-auto" id="btn-customfilter-close">Cancel</button>
  151. <button type="button" class="btn btn-sm btn-primary" id="btn-customfilter-add">Save</button>
  152. </div>
  153. </section>`;
  154. return html;
  155. }
  156. loadCustomFilterCardTemplate(index) {
  157. var html = `<div id="div_CustomFilterSection_` + index + `">
  158. <div class="card custom-filter-` + index + ` py-10">
  159. <input type="hidden" name="index" class="hf_index" value="${index}">
  160. <div class="row mx-0">
  161. <div class="col-sm-6" id="div_filtername">
  162. <div class="floating-label-form-group">
  163. <label for="lbl" id="lbl_filtername" class="lbl_txt">Filter Name<span
  164. class="text-danger">*</span></label>
  165. <input type="text" id="txt_filtername_` + index + `"
  166. class="type-control form-control type-control value-control required floating-label-control txt_name"
  167. placeholder="Filter Name *" data-placeholder="Filter Name" data-label="Filter Name *"
  168. data-regularexp="" data-validatemsg="">
  169. </div>
  170. </div>
  171. <div class="col-auto align-self-end div_iswhere"><div class="form-group d-flex align-items-center mb-0">
  172. <input type="checkbox" class="mr-10" onclick="Unibase.Platform.DataSources.Components.CustomFilters.Instance().isWhere(` + index + `)" id="cf_iswhere_checkbox_${index}"><label for="cf_iswhere_checkbox_${index}" class="mb-0">IsWhere</label>
  173. </div></div>
  174. <div class="col-auto align-self-end div_autodate"><div class="form-group d-flex align-items-center mb-0">
  175. <input type="checkbox" class="mr-10" onclick="" id="cf_autodata_checkbox_${index}" checked="true"><label for="cf_autodata_checkbox_${index}" class="mb-0">Auto Data</label>
  176. </div></div>
  177. <div class="col-auto align-self-end div_isrulevalue"><div class="form-group d-flex align-items-center mb-0">
  178. <input type="checkbox" class="mr-10" onclick="" id="cf_isrulevalue_checkbox_${index}" checked="true"><label for="cf_isrulevalue_checkbox_${index}" class="mb-0">IsRuleValue</label>
  179. </div></div>
  180. <div class="col-sm-12 mt-15" id="div_expression_${index}"><div id="expression_builder_${index}" class="d-block"></div></div>
  181. </div>
  182. <a id="RemoveCustomFilter_` + index + `" class="position-absolute r-0 t-0 px-2 py-1"
  183. onclick="Unibase.Platform.DataSources.Components.CustomFilters.Instance().removeCustomFilter(` + index + `)"
  184. style="cursor:pointer"><i class="fa fa-times"></i></a>
  185. </div>
  186. </div>`;
  187. return html;
  188. }
  189. static Instance() {
  190. if (this._instance === undefined)
  191. this._instance = new Templates.DatalistBuilder();
  192. return this._instance;
  193. }
  194. }
  195. Templates.DatalistBuilder = DatalistBuilder;
  196. })(Templates = DataSources.Templates || (DataSources.Templates = {}));
  197. })(DataSources = Platform.DataSources || (Platform.DataSources = {}));
  198. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  199. })(Unibase || (Unibase = {}));