Built files from Bizgaze WebServer
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

deletetemplate.js 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. var Unibase;
  2. (function (Unibase) {
  3. let Platform;
  4. (function (Platform) {
  5. let Templates;
  6. (function (Templates) {
  7. let Components;
  8. (function (Components) {
  9. class DeleteTemplate extends Unibase.Platform.Core.BaseComponent {
  10. constructor() {
  11. super(...arguments);
  12. this.storingContainer = [];
  13. }
  14. cssFiles() {
  15. return [];
  16. }
  17. jsFiles() {
  18. return [];
  19. }
  20. html(id, containerid) {
  21. var html = ``;
  22. return html;
  23. }
  24. load(id, containerid, callback) {
  25. }
  26. colorpicker() {
  27. $('.section_CodeView').find('.note-editor').attr({ 'data-elementid': Math.floor(Math.random() * Date.now()) });
  28. $(".section_CodeView ").find('.panel-heading').append(`<div class="btn-group"> <button type="button" class="btn dropdown-toggle color-picker-dropdown" data-toggle="dropdown" aria-expanded="false" style="background-color:#f4f5f6"> Color picker </button> <div class="dropdown-menu"> <a class="dropdown-item" href="#"> <div class="d-flex color-picker justify-content-between align-items-center"> <div> <label for="favcolor">Header</label></div><div> <input type="color" data-Headcolor='' class="Header-color-input"></div></div></a> <a class="dropdown-item" href="#"> <div class="d-flex color-picker justify-content-between align-items-center"> <div> <label for="favcolor">Table Body</label></div><div> <input type="color" class="TBody-color-input" data-Bodycolor=''></div></div></a> <a class="dropdown-item" href="#"> <div class="d-flex color-picker justify-content-between align-items-center"> <div> <label for="favcolor">Footer</label></div><div> <input type="color" class="Footer-color-input" data-Footercolor=''></div></div></a> <a class="dropdown-item" href="#"> <div class="d-flex color-picker justify-content-between align-items-center"> <div> <label for="favcolor">Text</label></div><div> <input type="color" class="text-color-input" data-textColor=''></div></div></a> <a class="dropdown-item" href="#"> <div class="d-flex color-picker justify-content-between align-items-center"> <div class="mr-4"> <label for="favcolor">Highlight Color</label></div><div> <input type="color" class="Highlight-color-input" data-HighlightColor=''></div></div></a> </div></div>`);
  29. $('.color-picker-dropdown').on('click', function () {
  30. function rgb2hex(rgb) {
  31. var hexDigits = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
  32. rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
  33. function hex(x) {
  34. return isNaN(x) ? "00" : hexDigits[(x - x % 16) / 16] + hexDigits[x % 16];
  35. }
  36. return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
  37. }
  38. let headColor = $('.header-color-div').css("background-color");
  39. let TablebodyColor = $('.tableBody-color-div').css("background-color");
  40. let FooterColor = $('.footer-color-div').css("background-color");
  41. let TextColor = $('.text-color-div').css("color");
  42. let HighlightColor = $('.highlight-color-div').css("background-color");
  43. $('.Header-color-input').val(rgb2hex(headColor));
  44. $('.TBody-color-input').val(rgb2hex(TablebodyColor));
  45. $('.Footer-color-input').val(rgb2hex(FooterColor));
  46. $('.text-color-input').val(rgb2hex(TextColor));
  47. $('.Highlight-color-input').val(rgb2hex(HighlightColor));
  48. console.log(rgb2hex(headColor));
  49. console.log(rgb2hex(TablebodyColor));
  50. console.log(rgb2hex(FooterColor));
  51. console.log(rgb2hex(TextColor));
  52. console.log(rgb2hex(HighlightColor));
  53. });
  54. $('.Header-color-input').on('change', function () {
  55. $(this).attr('data-Headcolor', `${$(this).val()}`);
  56. $('.header-color-div').css('background', `${$(this).val()}`);
  57. Unibase.Platform.Templates.Components.DeleteTemplate.Instance().colorArrayVal();
  58. });
  59. $('.TBody-color-input').on('change', function () {
  60. $(this).attr('data-Bodycolor', `${$(this).val()}`);
  61. $('.tableBody-color-div').css('background', `${$(this).val()}`);
  62. Unibase.Platform.Templates.Components.DeleteTemplate.Instance().colorArrayVal();
  63. });
  64. $('.Footer-color-input').on('change', function () {
  65. $(this).attr('data-Footercolor', `${$(this).val()}`);
  66. $('.footer-color-div').css('background', `${$(this).val()}`);
  67. Unibase.Platform.Templates.Components.DeleteTemplate.Instance().colorArrayVal();
  68. });
  69. $('.text-color-input').on('change', function () {
  70. $(this).attr('data-textColor', `${$(this).val()}`);
  71. $('.text-color-div').css('color', `${$(this).val()}`);
  72. Unibase.Platform.Templates.Components.DeleteTemplate.Instance().colorArrayVal();
  73. });
  74. $('.Highlight-color-input').on('change', function () {
  75. $(this).attr('data-HighlightColor', `${$(this).val()}`);
  76. $('.highlight-color-div').css('background', `${$(this).val()}`);
  77. Unibase.Platform.Templates.Components.DeleteTemplate.Instance().colorArrayVal();
  78. });
  79. }
  80. colorArrayVal() {
  81. let conId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  82. let arrayData = Unibase.Platform.Templates.Components.DeleteTemplate.Instance().storingContainer;
  83. let elementId = Number($('#' + conId).find('.section_CodeView .note-editor').attr('data-elementid')), index;
  84. index = arrayData.findIndex((obj => obj.elementId == elementId));
  85. if (index != -1) {
  86. arrayData.splice(index, 1);
  87. }
  88. let data = {
  89. "elementId": Number($('#' + conId).find('.section_CodeView .note-editor').attr('data-elementid')),
  90. "Properties": [{
  91. "Headcolor": [$('#' + conId).find('.Header-color-input').val()],
  92. "Bodycolor": [$('#' + conId).find('.Body-color-input').val()],
  93. "Footercolor": [$('#' + conId).find('.Footer-color-input').val()],
  94. "TextColor": [$('#' + conId).find('.text-color-input').val()],
  95. "HighlightColor": [$('#' + conId).find('.Highlight-color-input').val()]
  96. }]
  97. };
  98. arrayData.push(data);
  99. }
  100. deleteTemplate() {
  101. let templateid = Unibase.Themes.Providers.DetailHelper.recordId;
  102. var instance = this;
  103. bootbox.confirm("Are You Sure You Want to Delete this Template?", function (result) {
  104. if (result == true) {
  105. instance.fileCacheHelper.loadJsFile("platform/templates/managers/templatemanager.js", function () {
  106. Unibase.Platform.Templates.Managers.TemplateManager.Instance().deleteTemplate(Number(templateid)).then(function (response) {
  107. MessageHelper.Instance().showSuccess(response.message, "bizgaze_ErrorMessages");
  108. var installedappid = Unibase.Themes.Providers.DetailHelper.installedAppId;
  109. instance.navigationHelper.loadList(installedappid, null);
  110. });
  111. });
  112. }
  113. });
  114. }
  115. deleteTemplateProvider() {
  116. let templateproviderid = Unibase.Themes.Providers.DetailHelper.recordId;
  117. var instance = this;
  118. bootbox.confirm("Are You Sure You Want to Delete this Template Provider?", function (result) {
  119. if (result == true) {
  120. instance.fileCacheHelper.loadJsFile("platform/templates/managers/templatemanager.js", function () {
  121. Unibase.Platform.Templates.Managers.TemplateManager.Instance().deleteTemplateProvider(Number(templateproviderid)).then(function (response) {
  122. MessageHelper.Instance().showSuccess(response.message, "bizgaze_ErrorMessages");
  123. var installedappid = Unibase.Themes.Providers.DetailHelper.installedAppId;
  124. instance.navigationHelper.loadList(installedappid, null);
  125. });
  126. });
  127. }
  128. });
  129. }
  130. GeneratePdf() {
  131. function base64ToArrayBuffer(data) {
  132. var bString = window.atob(data);
  133. var bLength = bString.length;
  134. var bytes = new Uint8Array(bLength);
  135. for (var i = 0; i < bLength; i++) {
  136. var ascii = bString.charCodeAt(i);
  137. bytes[i] = ascii;
  138. }
  139. return bytes;
  140. }
  141. ;
  142. function base64toPDF(data1) {
  143. var bufferArray = base64ToArrayBuffer(data1);
  144. var blobStore = new Blob([bufferArray], { type: "application/pdf" });
  145. if (window.navigator && window.navigator.msSaveOrOpenBlob) {
  146. window.navigator.msSaveOrOpenBlob(blobStore);
  147. return;
  148. }
  149. var fileURL = URL.createObjectURL(blobStore);
  150. window.open(fileURL);
  151. }
  152. var instance = this;
  153. let templateid = Unibase.Themes.Providers.DetailHelper.recordId;
  154. instance.fileCacheHelper.loadJsFile("platform/templates/managers/templatemanager.js", function () {
  155. Unibase.Platform.Templates.Managers.TemplateManager.Instance().getTemplatePdf(Number(templateid), 0).then(function (response) {
  156. base64toPDF(response.result);
  157. });
  158. });
  159. }
  160. static Instance() {
  161. if (this.instance === undefined) {
  162. this.instance = new DeleteTemplate();
  163. }
  164. return this.instance;
  165. }
  166. }
  167. Components.DeleteTemplate = DeleteTemplate;
  168. })(Components = Templates.Components || (Templates.Components = {}));
  169. })(Templates = Platform.Templates || (Platform.Templates = {}));
  170. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  171. })(Unibase || (Unibase = {}));