Built files from Bizgaze WebServer
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
  2. function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
  3. return new (P || (P = Promise))(function (resolve, reject) {
  4. function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
  5. function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
  6. function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
  7. step((generator = generator.apply(thisArg, _arguments || [])).next());
  8. });
  9. };
  10. var Unibase;
  11. (function (Unibase) {
  12. let Forms;
  13. (function (Forms) {
  14. let Controls;
  15. (function (Controls) {
  16. class ImagePicker {
  17. constructor() {
  18. this.fileData = [];
  19. }
  20. jsFiles() {
  21. return ["apps/communications/ai/components/resumeparsingmanager.js"];
  22. }
  23. init(formpropertyid, prop, callback) {
  24. var instance = this;
  25. var errormsg = $(".bizgaze_FormErrorMessages:visible").attr("id");
  26. if ($("#img_" + prop.FormPropertyId).val() == "") {
  27. instance.fileData[formpropertyid] = [];
  28. }
  29. $('#browse_' + prop.FormPropertyId).click(function () {
  30. $("#img_" + prop.FormPropertyId).click();
  31. });
  32. instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId);
  33. $("#img_" + formpropertyid).change(function (e) {
  34. $("#editFileName_" + formpropertyid).addClass("hidden");
  35. if (!$("#editFileName_" + formpropertyid).hasClass("hidden") && instance.fileData[formpropertyid] != []) {
  36. var fileReq = {
  37. FileId: 1,
  38. FilePath: instance.fileData[formpropertyid].FilePath,
  39. };
  40. instance.fileData[formpropertyid] = fileReq;
  41. }
  42. $("#img_" + formpropertyid).removeAttr("style");
  43. var file = $("#img_" + formpropertyid).get(0);
  44. var files = file.files;
  45. if (!files[0].type.match('image.*')) {
  46. $("#img_" + formpropertyid).val('');
  47. MessageHelper.Instance().showError("Please Select Image File.", errormsg);
  48. }
  49. else {
  50. instance.selectImageFile(files[0], prop.DocPropertyName, formpropertyid, null);
  51. var item = { Files: files[0] };
  52. instance.getBase64(item).then(function (response) {
  53. var filePath = null;
  54. if (instance.fileData[formpropertyid].FilePath != null) {
  55. filePath = instance.fileData[formpropertyid].FilePath;
  56. }
  57. instance.fileData[formpropertyid] = response;
  58. instance.fileData[formpropertyid].FilePath = filePath;
  59. });
  60. }
  61. });
  62. if (callback != null) {
  63. callback();
  64. }
  65. }
  66. selectImageFile(file, DocPropertyName, formpropertyid, imgurl) {
  67. var instance = this;
  68. $("#fileCount").addClass('hidden');
  69. var html = "";
  70. var imgShow = "";
  71. var filename = "";
  72. if (file != null) {
  73. var tmppath = URL.createObjectURL(file);
  74. imgShow = tmppath;
  75. filename = file.name;
  76. $("#requiredImgInput_" + formpropertyid).val(filename);
  77. instance.fileHtml(filename, formpropertyid, DocPropertyName, imgShow);
  78. }
  79. else {
  80. filename = DocPropertyName;
  81. $("#requiredImgInput_" + formpropertyid).val(filename);
  82. DocPropertyName = "";
  83. var src = "";
  84. var path = 'apis/v4/Documents/GetFile?path=' + imgurl;
  85. Unibase.Platform.Analytics.Managers.ReportManager.Instance().dataHelper().getAsync(path).then(function (response) {
  86. src = 'data:image/png;base64,' + response.file;
  87. }).then(function () {
  88. instance.fileHtml(filename, formpropertyid, DocPropertyName, src);
  89. });
  90. }
  91. }
  92. fileHtml(filename, formpropertyid, DocPropertyName, imgShow) {
  93. if (filename.length > 15) {
  94. var File_Extension = filename.substr(filename.lastIndexOf("."));
  95. filename = filename.substr(0, 15) + '...' + File_Extension;
  96. }
  97. var html = '<li class="list-group-item b-a clear p-0 mb-15" id="list-file_' + formpropertyid + '" style="border: none">' +
  98. '<span class="block fileuploads filename hidden">' +
  99. '<span class="pull-left">' +
  100. '<span class="fa fa-trash-o fa-lg text-danger mr-15" style="cursor:pointer" href="javascript:;" onclick="javascript:Unibase.Forms.Controls.ImagePicker.Instance().removeFile(' + formpropertyid + ',\'' + filename + '\'' + ',\'' + DocPropertyName + '\'' + '); " title="Click to Delete"></span>' +
  101. '<img id="img_upload " class="mr-20" style="height:35px;width:35px;vertical-align:middle;" alt="" src="' + imgShow + '">' +
  102. '<span class="h6 fileName" title="' + filename + '">' + filename + '</span>' +
  103. '</span></span></li>';
  104. $('.fileuploads_' + formpropertyid).find('.thumb_output_').html(html);
  105. $('#list-file_' + formpropertyid).find('.fileuploads').removeClass("hidden");
  106. }
  107. removeFile(formpropertyid, filename, docpropertyname) {
  108. $('#img_' + formpropertyid).val(null);
  109. $("#list-file_" + formpropertyid).remove();
  110. $("#requiredImgInput_" + formpropertyid).val("");
  111. $("#editFileName_" + formpropertyid).addClass("hidden");
  112. }
  113. loadControl(containerid, prop) {
  114. var isrequired = 'hidden';
  115. var required = '';
  116. if (prop.IsRequired != null) {
  117. isrequired = (prop.IsRequired) ? '' : 'hidden';
  118. required = (prop.IsRequired) ? 'required' : '';
  119. }
  120. const { helpTooltipHtml, helpTextHtml } = Unibase.Platform.Forms.Components.FormViewer.Instance().getControlHelpHtml(prop);
  121. var html = '<div id="ImageUpload" class="form-group floating-label focus m-0 pt-10 pb-10">' +
  122. '<label for="lbl" id="lbl_' + prop.UniqueId + '" >' + helpTooltipHtml + '<span class="label-name">' + prop.LabelName + '</span><span class="text-danger ' + isrequired + '" id="spnIsRequired_' + prop.UniqueId + '"> *</span></label >' +
  123. '<input id="requiredImgInput_' + prop.UniqueId + '" class="hidden d-none value-control form-control requiredImgInput ' + required + '" type="text" val="">' +
  124. '<input id="img_' + prop.UniqueId + '" type="file" class="hidden fileUpload_ d-none" data-propertyname="' + prop.DocPropertyName + '" data-isdefault="' + prop.IsDefault + '" data-propdoctypename="' + prop.DocTypeName + '" data-required="' + prop.IsRequired + '" onclick="this.value=null;" />' +
  125. '<input type="button" value="Choose Image" style="color:black;margin-left:20px;height: 30px;width: 130px;" id="browse_' + prop.UniqueId + '" /><label class="hidden" id="editFileName_' + prop.UniqueId + '"></label>' +
  126. '<label for="file_' + prop.DocPropertyName + '"><span id="fileCount"></span></label><input type="hidden" id="hfId" value="">' +
  127. '<label for="Validation" id="lblValidation_' + prop.DocPropertyName + '"></label>' +
  128. '<input type="hidden" id="hfFormPropertyId" value="" />' + helpTextHtml + '</div>' +
  129. '<div class="row ml-15 fileuploads_' + prop.FormPropertyId + ' filename"><div class="row col-md-12 pl-2"><div class="row">' +
  130. '<ul class="list-group mb-n mt-n-15 no-border thumb_output_">' +
  131. '<li class="hidden no-border"></li>' +
  132. '</ul></div></div></div>';
  133. $("#" + containerid).html(html);
  134. }
  135. loadControlSettings(controlsettingjson, formpropertyid) {
  136. return null;
  137. }
  138. loadPropertySettings(propertysettings, formpropertyid) {
  139. return null;
  140. }
  141. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  142. var instance = this;
  143. if (propval != "") {
  144. var splitArray = propval.split("/");
  145. var fileName = splitArray[splitArray.length - 1];
  146. propval = propval.replaceAll("/", "\\");
  147. var fileReq = {
  148. FileId: 0,
  149. FilePath: propval,
  150. };
  151. instance.fileData[formpropertyid] = fileReq;
  152. $("#editFileName_" + formpropertyid).removeClass("hidden");
  153. instance.selectImageFile(null, fileName, formpropertyid, propval);
  154. }
  155. }
  156. fileObj(formpropertyid) {
  157. var instance = this;
  158. var file = $("#img_" + formpropertyid).get(0);
  159. var files = file.files;
  160. if (files.length == 0 && $("#editFileName_" + formpropertyid).hasClass("hidden")) {
  161. var filepath = instance.fileData[formpropertyid].FilePath;
  162. if (instance.fileData[formpropertyid].FilePath != undefined) {
  163. filepath = null;
  164. }
  165. var fileReq = {
  166. FileId: 1,
  167. FilePath: filepath,
  168. };
  169. instance.fileData[formpropertyid] = fileReq;
  170. }
  171. return instance.fileData[formpropertyid];
  172. }
  173. getBase64(item) {
  174. return __awaiter(this, void 0, void 0, function* () {
  175. var filename = "";
  176. filename = item.Files.DocumentFileName;
  177. if (filename == undefined)
  178. filename = item.Files.name;
  179. let file = item.Files;
  180. let fileInfo = item.Files.name.split('.');
  181. return new Promise((resolve, reject) => {
  182. let instance;
  183. let content = '';
  184. const reader = new FileReader();
  185. reader.readAsDataURL(item.Files);
  186. reader.onloadend = function () {
  187. return __awaiter(this, void 0, void 0, function* () {
  188. var base64String = reader.result.toString().replace(/^data:.+;base64,/, '');
  189. var fileReq = {
  190. FileData: base64String,
  191. FileName: fileInfo[0],
  192. FileType: fileInfo[1],
  193. ByteData: null
  194. };
  195. resolve(fileReq);
  196. });
  197. };
  198. reader.onerror = function (e) {
  199. reject(e);
  200. };
  201. });
  202. });
  203. }
  204. static Instance() {
  205. if (this._instance === undefined)
  206. this._instance = new ImagePicker();
  207. return this._instance;
  208. }
  209. }
  210. Controls.ImagePicker = ImagePicker;
  211. })(Controls = Forms.Controls || (Forms.Controls = {}));
  212. })(Forms = Unibase.Forms || (Unibase.Forms = {}));
  213. })(Unibase || (Unibase = {}));