var supportCenter=supportCenter||{};supportCenter.attachmentExtender=function(n){function u(u,f,e,o,s,h){function v(){var t=$(f);u.validateParse()&&(n.parseDataAnnotationToRules(t),t.valid());s()}function l(n,t){var i=n.value();n.value(y(i,t))}function y(n,t){var i=p(n,t);return w(i,t)}function p(n,t){for(var e=/\[?!\[([^\]]*)\]\(([^\s\]]+)\)(\]\([^\s]+\))?/g,r=n,i,u,f;i=e.exec(n);)u=i[1],f=i[2],u===ko.unwrap(t.fileName)&&f.indexOf(ko.unwrap(t.itemOid))!==-1&&(r=r.replace(i[0],"").trim());return r}function w(n,t){for(var e=/\[?!\[([^\]\[]+).*?(\[\d+\])(\]\[\d+\])?/g,i=n,r,u,f;r=e.exec(n);)u=r[1],f=r[2],u===ko.unwrap(t.fileName)&&(i=i.replace(r[0],""),i=b(n,i,f,t));return i}function b(n,t,i,r){for(var o=/(\[\d+\])\:\s*(.*)/g,u,f,e;u=o.exec(n);)f=u[1],e=u[2],f===i&&e.indexOf(ko.unwrap(r.itemOid))!==-1&&(t=t.replace("\n"+u[0],"").trim());return t}function k(t){var h=t===undefined,i,r,o;u.attachments().forEach(function(n,t){u.validateErrors.remove(function(n){return n.element==="Attachments["+t+"]"})});i=$(f);r=simplemdeEditors[i.find("textarea")[0].id];h?(u.attachments().forEach(function(n){n.cancelRequest&&n.cancelRequest();l(r,n)}),u.attachments.remove(function(n){return n.visible()})):(t.cancelRequest&&t.cancelRequest(),u.attachments.remove(t),l(r,t));i=$(f);n.parseDataAnnotationToRules(i);$(e).valid();h||(o=i.find(".attachment:visible .form-attachment"),o.length&&o.valid());s()}function d(n){supportCenter.analytics&&supportCenter.analytics.sendAddAttachmentEvent&&supportCenter.analytics.sendAddAttachmentEvent(n)}var c,a;return u.getAttachmentsError=function(){return o("AttachmentsCount")},u.isDragOver=ko.observable(!1),u.dragOver=function(n,t){t.preventDefault();u.isDragOver(!0)},u.dragLeave=function(n,t){return t.preventDefault(),u.isDragOver(!1),!1},u.dragenter=function(n,t){return t.preventDefault(),!1},c=u.attachments().filter(function(n){return n.visible()}).length+1,u.existedAttachments&&u.existedAttachments()&&(c+=u.existedAttachments().length),a=function(){return"Clipboard-File-"+c+++".png"},u.pasteFiles=function(n,t){t.preventDefault();u.uploadFiles([t.originalEvent.detail.file],t.originalEvent.detail.insertCode,a())},u.selectFiles=function(n,t){t.preventDefault();u.uploadFiles(t.target.files);$(f).find("input[type=file]").val("")},u.dropFiles=function(n,t){t.preventDefault();u.uploadFiles(t.originalEvent.detail.files)},u.drop=function(n,t){t.preventDefault();u.isDragOver(!1);u.uploadFiles(t.originalEvent.dataTransfer.files)},u.addAttachmentClick=function(){$(f).find("input[type=file]").click()},u.getAttachmentsToInsert=ko.computed(function(){var n=[];return u.existedAttachments&&u.existedAttachments()&&(n=u.existedAttachments().filter(function(n){var i=n.fileName.replace(/.*?\./,"");return t.indexOf(i)!==-1})),n.concat(u.attachments().filter(function(n){var r=n.fileName().replace(/.*?\./,"");return n.upload()===i&&n.visible()&&t.indexOf(r)!==-1}))}),u.uploadAndInsertImage=function(n,i){var r=$(document.createElement("input"));return r.attr("type","file"),r.attr("accept","image/"+t.join(",image/")),r.change(function(n){n.preventDefault();u.uploadFiles(n.target.files,i.originalEvent.detail.insertCode)}),r.trigger("click"),!1},u.uploadFiles=function(t,o,c){function l(n){var t=setInterval(function(){n.opacity(n.opacity()-.1);n.opacity()<=0&&(clearInterval(t),n.opacity(0))},50)}function w(n,t){var h=$(f),c=h.find('.attachment:visible .form-attachment[value="'+n.itemOid()+'"]'),r,e,s;return c.length?(r=$.Deferred(),c.valid()?(e=new FormData,e.append("file",t,n.fileName()),e.append("__RequestVerificationToken",h.find("input[name=__RequestVerificationToken]").val()),s=$.ajax({xhr:function(){var t=$.ajaxSettings.xhr();return t.upload&&t.upload.addEventListener("progress",function(t){n.upload(t.loaded/t.total)},!1),t},url:supportCenter.urlConfiguration.addAttachment,type:"POST",contentType:!1,processData:!1,cache:!1,data:e,success:function(t){setTimeout(function(){if(n.itemOid(t),n.uploadFinish(!0),o!==undefined){var r=supportCenter.urlConfiguration.getAttachment+"/"+t;o("!["+n.fileName()+"]("+r+")")}n.upload(i);l(n)},0);r.resolve()},error:function(t){if(t&&t.statusText!=="abort"){if(t&&t.responseText){var i=JSON.parse(t.responseText);n.error(i.Errors[0].ErrorMessage)}else n.error(supportCenter.resources.errorOccurredText);u.postErrors.push({message:n.error()});u.attachments.valueHasMutated();v()}l(n);r.resolve()}}),n.cancelRequest=function(){s&&(s.abort(),r.resolve())}):(l(n),r.resolve()),r.promise()):null}function b(){p.forEach(function(n){r=r.then(function(){return w(n.attachment,n.file,o)})})}var a,y,p;$(f).find("textarea").parent().find(".drop-area-info").hide();a=u.attachments().length-1+t.length;u.existedAttachments&&u.existedAttachments()&&(a+=u.existedAttachments().length);y=$(e);y.val(a);p=[];y.valid()&&$.each(t,function(t,i){var a=!1,r=$.Deferred(),o;!i.type&&i.size%4096==0&&i.size<=102400?(o=new FileReader,o.onerror=function(){a=!0;r.resolve()},o.onload=function(){r.resolve()},o.readAsArrayBuffer(i)):r.resolve();$.when(r).done(function(){var r=c||i.name,t={displayedFileName:ko.observable(r),fileName:ko.observable(r),itemOid:ko.observable(supportCenter.common.helpers.generateGuid()),size:ko.observable(i.size),upload:ko.observable(0),opacity:ko.observable(1),error:ko.observable(null),visible:ko.observable(!0),uploadFinish:ko.observable(!1)},o;d(t.size());h!==undefined&&h(t);u.attachments.push(t);s();$(e).valid();a?(t.error(supportCenter.resources.folderTypeNotSupporting),l(t)):(n.parseDataAnnotationToRules($(f)),o=$(f).find('.attachment:visible .form-attachment[value="'+t.itemOid()+'"]'),o.valid()?(p.push({attachment:t,file:i}),b()):l(t))})})},u.removeExistedAttachmentClick=function(t){u.existedAttachments.remove(t);var i=$(f),r=simplemdeEditors[i.find("textarea")[0].id];l(r,t);n.parseDataAnnotationToRules(i);$(e).valid();s()},u.removeNewAttachmentClick=function(n){k(n)},u}$(window).resize();var i=1.1,t=["jpg","jpeg","png","gif","bmp","webp"],r=$.Deferred().resolve();return{extendModel:u}}(supportCenter.validator)