Built files from Bizgaze WebServer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

importruleprovider.js 5.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. var Unibase;
  2. (function (Unibase) {
  3. let Platform;
  4. (function (Platform) {
  5. let Automation;
  6. (function (Automation) {
  7. let Components;
  8. (function (Components) {
  9. class ImportRuleProvider extends Platform.Core.BaseComponent {
  10. cssFiles() {
  11. var cssfiles = ["libs/nestable/JqueryminMenu.css"];
  12. return cssfiles;
  13. }
  14. jsFiles() {
  15. return ['platform/automation/managers/rulemanager.js',
  16. 'platform/automation/components/rulebuilder/importruleprovider.js',
  17. "platform/forms/components/formviewer/formviewer.js",
  18. 'libs/parsley/parsley.min.js',
  19. 'platform/core/infos/status.js', '/platform/core/helpers/file/filehelper.js'];
  20. }
  21. html(id, containerid) {
  22. var instance = this;
  23. let html = '<form id="form_ImportRuleProvider" data-validate="parsley" data-isdynamic="false"><div id="div_importmessage" class="clear"></div><div class="b-b bg-white header dataApiHeader"><strong>Import RuleProvider</strong></div><div data-simplebar class="simple-scroll-bar scrollable import-export-body"><div class="card" id="importexportsection"><div class="card-header">Select file to import</div><div class="card-body"><div class="" id="div_Import"><input type="file" id="import_File" class="bg-light d-none d-sm-block required"><hr /><a href="javascript:;" id="fileUpload" class="btn btn-warning text-white" onclick=" Unibase.Platform.Automation.Components.ImportRuleProvider.Instance().FileUpload(\'' + containerid + '\');">Upload</a></div></div></div><div class="hidden" id="div_Export"><span id="sp_formName"></span><a href="javascript:;" id="fileExport" class="btn btn-primary text-white">Download</a></div></div><div class="bg-white footer"><button id="btn_CloseImport" class="btn btn-sm mr-auto btn-close">Close</button></div></form>';
  24. return html;
  25. }
  26. showImport() {
  27. this.navigationHelper.popup(0, '', Unibase.Platform.Automation.Components.ImportRuleProvider.Instance(), null, Platform.Helpers.Size.Large);
  28. }
  29. FileUpload(containerid) {
  30. var instance = this;
  31. instance.navigationHelper.showLoading();
  32. var url = _appsettings.server_url() + '/apis/v4/unibase/notificationrule/platform/importruleproviders/np';
  33. Platform.Helpers.FileHelper.Instance().upload(url, Unibase.Platform.Automation.Components.ImportRuleProvider.fileData).then(function (response) {
  34. if (response.status == Unibase.Data.Status.Error) {
  35. instance.navigationHelper.hideLoading();
  36. MessageHelper.Instance().showError(response.message, "div_importmessage");
  37. }
  38. else {
  39. instance.navigationHelper.hideLoading();
  40. MessageHelper.Instance().showSuccess(response.message, "div_importmessage");
  41. $('#' + containerid).modal('hide');
  42. $('#' + containerid).remove();
  43. }
  44. });
  45. }
  46. load(id, containerid, callback) {
  47. var instance = this;
  48. $("#btn_CloseImport").click(function () {
  49. $('#' + containerid).modal('hide');
  50. $('#' + containerid).remove();
  51. });
  52. $("#btn_Import").click(function () {
  53. $("#importexportsection").removeClass("hidden");
  54. $("#div_Import").removeClass("hidden");
  55. });
  56. $('#import_File').change(function (e) {
  57. Unibase.Platform.Automation.Components.ImportRuleProvider.Instance().fileEvent(e);
  58. });
  59. $("#txt_Icon").focus(function () {
  60. $(".div_Icons").fadeIn();
  61. $("#icons").toggleClass("hidden");
  62. $(".div_Icons").removeClass('hidden');
  63. });
  64. $("#txt_Icon").focusout(function () {
  65. $(".div_Icons").fadeOut();
  66. });
  67. }
  68. fileEvent($event) {
  69. const fileSelected = $event.target.files[0];
  70. Unibase.Platform.Automation.Components.ImportRuleProvider.fileData = new FormData();
  71. Unibase.Platform.Automation.Components.ImportRuleProvider.fileData.append(fileSelected.name, fileSelected);
  72. }
  73. static Instance() {
  74. if (this.instance === undefined) {
  75. this.instance = new ImportRuleProvider();
  76. }
  77. return this.instance;
  78. }
  79. }
  80. ImportRuleProvider.fileData = new FormData();
  81. Components.ImportRuleProvider = ImportRuleProvider;
  82. })(Components = Automation.Components || (Automation.Components = {}));
  83. })(Automation = Platform.Automation || (Platform.Automation = {}));
  84. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  85. })(Unibase || (Unibase = {}));