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.

source.js 7.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. var Unibase;
  2. (function (Unibase) {
  3. let Platform;
  4. (function (Platform) {
  5. let Sources;
  6. (function (Sources) {
  7. let Components;
  8. (function (Components) {
  9. class CreateSource extends Platform.Core.BaseComponent {
  10. jsFiles() {
  11. return ["platform/sources/components/source.js", "platform/sources/managers/sourcemanager.js", "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', "libs/summernote/summernote.min.js"];
  12. }
  13. cssFiles() {
  14. return ["libs/summernote/summernote.css"];
  15. }
  16. html(id, containerid) {
  17. let html = '<form id="frmUnibase_Source" default="" data-validate="parsley" data-isdynamic="false"><div class="b-b bg-white header"><input id="hf_SourceId" type="hidden" value="0"/><strong id="formName" class="text-dark">Create Source</strong></div><div data-simplebar class="simple-scroll-bar scrollable modal-body"><div id="Unibase_ValidationSummary" class="clear mt-10"></div><div class="card"><div class="card-body"><div class="row"><div class="col-sm-6"><div class="floating-label-form-group"><label>Source Name<span class="text-danger " id="spnSourceName"> *</span></label><input class="form-control value-control required floating-label-control" id="txtSourceName" placeholder="Source Name *" data-placeholder="Enter Source Name" data-label="Source Name *" value="" type="text"></div></div></div></div></div><div class="source-description"><div class="card"><div class="card-header"><strong class="text-dark">Description</strong></div><div class="card-body"><div class="type-control summernote" style="display: block;" id="summernote" data-propdoctypename="" placeholder = "Enter Description" data-placeholder="Enter Descrpition" data-label="Descrpition"></div></div></div></div></div><div id="div_sourceFooter" class="bg-white footer"><a class="btn btn-light btn-sm btn-center mr-auto btn-close" id="btnClose">Close</a><a class="btn btn-primary btn-center btn-sm text-white" id="btnSave">Save</a></div></form>';
  18. return html;
  19. }
  20. load(id, containerid, callback) {
  21. let instance = this;
  22. instance.fileCacheHelper.loadJsFiles(["platform/integrations/managers/integrationmanager.js", "libs/summernote/summernote.min.js"], null);
  23. instance.fileCacheHelper.loadCssFile("libs/summernote/summernote.css", null);
  24. instance.loadSummernote();
  25. instance.sourceManager = Sources.Managers.SourceManager.Instance();
  26. $("#btnSave").click(function () {
  27. let appcontrolid = "frmUnibase_Source";
  28. let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid);
  29. if (result == false) {
  30. MessageHelper.Instance().showError("Mandatory fields are missing", "Unibase_ValidationSummary");
  31. return false;
  32. }
  33. else {
  34. instance.save(id, containerid);
  35. }
  36. });
  37. }
  38. loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
  39. let instance = this;
  40. this.navigationHelper.popup(0, '', instance, function (containerid) {
  41. }, Platform.Helpers.Size.Auto);
  42. if (Pk_Value != 0) {
  43. $("#formName").text("Edit Source");
  44. CreateSource.Instance().edit(Pk_Value);
  45. }
  46. }
  47. loadSourceForm(iscreate) {
  48. var Pk_Value = 0;
  49. var instance = this;
  50. if (!iscreate) {
  51. Pk_Value = Unibase.Themes.Providers.DetailHelper.recordId;
  52. }
  53. this.navigationHelper.popup(0, '', Unibase.Platform.Sources.Components.CreateSource.Instance(), null, Platform.Helpers.Size.Large);
  54. if (Pk_Value != 0) {
  55. $("#formName").text("Edit Source");
  56. CreateSource.Instance().edit(Pk_Value);
  57. }
  58. }
  59. edit(recordId) {
  60. let instance = this;
  61. instance.sourceManager.getSource(recordId).then(function (response) {
  62. $("#hf_SourceId").val(response.result.SourceId);
  63. $("#txtSourceName").val(response.result.SourceName);
  64. $("#txt_Description").val(response.result.Description);
  65. $('#summernote').summernote('code', response.result.Description);
  66. });
  67. }
  68. save(pk_value, containerid) {
  69. let instance = this;
  70. var contents = $('#summernote').summernote('code');
  71. var plainText = $("<p>" + contents + "</p>").text();
  72. var postData = {
  73. SourceId: Number($("#hf_SourceId").val()),
  74. UniqueId: ("Unibase_Platform_Sources_" + $("#txtSourceName").val().toString()).replace(/\s/g, ''),
  75. SourceName: $("#txtSourceName").val().toString(),
  76. StageId: Number(0),
  77. Description: plainText
  78. };
  79. instance.sourceManager.saveSource(postData).then(function (response) {
  80. if (response.errors == null) {
  81. $('#' + containerid).modal('hide');
  82. $('#' + containerid).remove();
  83. MessageHelper.Instance().showSuccess(response.message, "");
  84. }
  85. else {
  86. MessageHelper.Instance().showError(response.message, "Unibase_ValidationSummary");
  87. return false;
  88. }
  89. });
  90. }
  91. loadSummernote() {
  92. $("#summernote").summernote({
  93. height: 100,
  94. minHeight: null,
  95. maxHeight: null,
  96. placeholder: "Enter Description",
  97. toolbar: [
  98. ['font', ['bold', 'italic', 'underline']],
  99. ['color', ['color']]
  100. ]
  101. });
  102. }
  103. static Instance() {
  104. if (this.instance === undefined) {
  105. this.instance = new CreateSource();
  106. }
  107. return this.instance;
  108. }
  109. }
  110. Components.CreateSource = CreateSource;
  111. })(Components = Sources.Components || (Sources.Components = {}));
  112. })(Sources = Platform.Sources || (Platform.Sources = {}));
  113. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  114. })(Unibase || (Unibase = {}));