var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var Unibase; (function (Unibase) { let Forms; (function (Forms) { let Controls; (function (Controls) { class ImagePicker { constructor() { this.fileData = []; } jsFiles() { return ["apps/communications/ai/components/resumeparsingmanager.js"]; } init(formpropertyid, prop, callback) { var instance = this; var errormsg = $(".bizgaze_FormErrorMessages:visible").attr("id"); if ($("#img_" + prop.FormPropertyId).val() == "") { instance.fileData[formpropertyid] = []; } $('#browse_' + prop.FormPropertyId).click(function () { $("#img_" + prop.FormPropertyId).click(); }); instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId); $("#img_" + formpropertyid).change(function (e) { $("#editFileName_" + formpropertyid).addClass("hidden"); if (!$("#editFileName_" + formpropertyid).hasClass("hidden") && instance.fileData[formpropertyid] != []) { var fileReq = { FileId: 1, FilePath: instance.fileData[formpropertyid].FilePath, }; instance.fileData[formpropertyid] = fileReq; } $("#img_" + formpropertyid).removeAttr("style"); var file = $("#img_" + formpropertyid).get(0); var files = file.files; if (!files[0].type.match('image.*')) { $("#img_" + formpropertyid).val(''); MessageHelper.Instance().showError("Please Select Image File.", errormsg); } else { instance.selectImageFile(files[0], prop.DocPropertyName, formpropertyid, null); var item = { Files: files[0] }; instance.getBase64(item).then(function (response) { var filePath = null; if (instance.fileData[formpropertyid].FilePath != null) { filePath = instance.fileData[formpropertyid].FilePath; } instance.fileData[formpropertyid] = response; instance.fileData[formpropertyid].FilePath = filePath; }); } }); if (callback != null) { callback(); } } selectImageFile(file, DocPropertyName, formpropertyid, imgurl) { var instance = this; $("#fileCount").addClass('hidden'); var html = ""; var imgShow = ""; var filename = ""; if (file != null) { var tmppath = URL.createObjectURL(file); imgShow = tmppath; filename = file.name; $("#requiredImgInput_" + formpropertyid).val(filename); instance.fileHtml(filename, formpropertyid, DocPropertyName, imgShow); } else { filename = DocPropertyName; $("#requiredImgInput_" + formpropertyid).val(filename); DocPropertyName = ""; var src = ""; var path = 'apis/v4/Documents/GetFile?path=' + imgurl; Unibase.Platform.Analytics.Managers.ReportManager.Instance().dataHelper().getAsync(path).then(function (response) { src = 'data:image/png;base64,' + response.file; }).then(function () { instance.fileHtml(filename, formpropertyid, DocPropertyName, src); }); } } fileHtml(filename, formpropertyid, DocPropertyName, imgShow) { if (filename.length > 15) { var File_Extension = filename.substr(filename.lastIndexOf(".")); filename = filename.substr(0, 15) + '...' + File_Extension; } var html = '
  • ' + '
  • '; $('.fileuploads_' + formpropertyid).find('.thumb_output_').html(html); $('#list-file_' + formpropertyid).find('.fileuploads').removeClass("hidden"); } removeFile(formpropertyid, filename, docpropertyname) { $('#img_' + formpropertyid).val(null); $("#list-file_" + formpropertyid).remove(); $("#requiredImgInput_" + formpropertyid).val(""); $("#editFileName_" + formpropertyid).addClass("hidden"); } loadControl(containerid, prop) { var isrequired = 'hidden'; var required = ''; if (prop.IsRequired != null) { isrequired = (prop.IsRequired) ? '' : 'hidden'; required = (prop.IsRequired) ? 'required' : ''; } const { helpTooltipHtml, helpTextHtml } = Unibase.Platform.Forms.Components.FormViewer.Instance().getControlHelpHtml(prop); var html = '
    ' + '' + '' + '' + '' + '' + '' + '' + helpTextHtml + '
    ' + '
    ' + '
      ' + '' + '
    '; $("#" + containerid).html(html); } loadControlSettings(controlsettingjson, formpropertyid) { return null; } loadPropertySettings(propertysettings, formpropertyid) { return null; } bindEditFormDetails(formpropertyid, propval, DocPropertyName) { var instance = this; if (propval != "") { var splitArray = propval.split("/"); var fileName = splitArray[splitArray.length - 1]; propval = propval.replaceAll("/", "\\"); var fileReq = { FileId: 0, FilePath: propval, }; instance.fileData[formpropertyid] = fileReq; $("#editFileName_" + formpropertyid).removeClass("hidden"); instance.selectImageFile(null, fileName, formpropertyid, propval); } } fileObj(formpropertyid) { var instance = this; var file = $("#img_" + formpropertyid).get(0); var files = file.files; if (files.length == 0 && $("#editFileName_" + formpropertyid).hasClass("hidden")) { var filepath = instance.fileData[formpropertyid].FilePath; if (instance.fileData[formpropertyid].FilePath != undefined) { filepath = null; } var fileReq = { FileId: 1, FilePath: filepath, }; instance.fileData[formpropertyid] = fileReq; } return instance.fileData[formpropertyid]; } getBase64(item) { return __awaiter(this, void 0, void 0, function* () { var filename = ""; filename = item.Files.DocumentFileName; if (filename == undefined) filename = item.Files.name; let file = item.Files; let fileInfo = item.Files.name.split('.'); return new Promise((resolve, reject) => { let instance; let content = ''; const reader = new FileReader(); reader.readAsDataURL(item.Files); reader.onloadend = function () { return __awaiter(this, void 0, void 0, function* () { var base64String = reader.result.toString().replace(/^data:.+;base64,/, ''); var fileReq = { FileData: base64String, FileName: fileInfo[0], FileType: fileInfo[1], ByteData: null }; resolve(fileReq); }); }; reader.onerror = function (e) { reject(e); }; }); }); } static Instance() { if (this._instance === undefined) this._instance = new ImagePicker(); return this._instance; } } Controls.ImagePicker = ImagePicker; })(Controls = Forms.Controls || (Forms.Controls = {})); })(Forms = Unibase.Forms || (Unibase.Forms = {})); })(Unibase || (Unibase = {}));