1 line
4.8 KiB
JavaScript
1 line
4.8 KiB
JavaScript
jQuery(document).ready((function(e){const t=parseInt(wpdiscuzAjaxObj.isNativeAjaxEnabled,10),a=new WeakMap;function i(e,t){if("undefined"==typeof DataTransfer)return;const a=new DataTransfer;t.forEach((function(e){e&&a.items.add(e)}));const i=e.find(".wmu-add-files")[0];i&&(i.files=a.files)}function n(e,t,a){let i=t.type,n={id:"",icon:"",fullname:t.name,shortname:c(t.name),type:"",index:a};if(i.match(/^image/)){if(n.type="images",window.FileReader){const a=new FileReader;a.readAsDataURL(t),a.onloadend=function(){n.icon=this.result,n.shortname="",o(e,n)}}}else i.match(/^video/)||i.match(/^audio/)?(n.type="videos",n.icon=wpdiscuzAjaxObj.wmuIconVideo,o(e,n)):(n.type="files",n.icon=wpdiscuzAjaxObj.wmuIconFile,o(e,n))}function o(t,a={}){let i=wpdiscuzAjaxObj.previewTemplate;i=i.replace("[PREVIEW_TYPE_CLASS]","wmu-preview-"+a.type),i=i.replace("[PREVIEW_TITLE]",a.fullname),i=i.replace("[PREVIEW_TYPE]",a.type),i=i.replace("[PREVIEW_ID]",a.id),i=i.replace("[PREVIEW_ICON]",a.icon),i=i.replace("[PREVIEW_FILENAME]",a.shortname),i=i.replace("[PREVIEW_INDEX]",void 0!==a.index?a.index:"");const n=e(i),o=t.find(".wmu-add-files").attr("accept");o&&n.find(".wmu-replace-input").attr("accept",o),e(".wmu-action-wrap .wmu-"+a.type+"-tab",t).removeClass("wmu-hide").append(n)}function c(e){let t=e;return void 0!==e&&e.length&&e.length>40&&(t=e.substring(e.length-40),t="..."+t),t}if(e("body").on("click","#wpdcom .wmu-upload-wrap",(function(){e(".wpd-form-foot",e(this).parents(".wpd_comm_form")).slideDown(parseInt(wpdiscuzAjaxObj.enableDropAnimation)?500:0)})),e(document).on("change",".wmu-add-files",(function(){const t=e(this),i=t.closest(".wpd_comm_form"),o=t[0].files?Array.from(t[0].files):[];o.length&&(a.set(i[0],o),e(".wmu-action-wrap .wmu-tabs",i).html(""),e.each(o,(function(e,t){n(i,t,e)})))})),e(document).on("click",".wmu-preview-delete",(function(){const t=e(this).closest(".wmu-preview"),n=t.closest(".wpd_comm_form"),o=parseInt(t.data("wmu-index")),c=t.data("wmu-type"),m=a.get(n[0])||[];m[o]=null,a.set(n[0],m),i(n,m),t.remove();const d=e(".wmu-action-wrap .wmu-"+c+"-tab",n);d.children(".wmu-preview").length||d.addClass("wmu-hide")})),e(document).on("change",".wmu-replace-input",(function(){const t=e(this),o=t.closest(".wmu-preview"),m=o.closest(".wpd_comm_form"),d=parseInt(o.data("wmu-index")),s=this.files[0];if(!s)return;const r=a.get(m[0])||[];r[d]=s,a.set(m[0],r),i(m,r),function(t,a,i){let o,m=i.type;o=m.match(/^image/)?"images":m.match(/^video/)||m.match(/^audio/)?"videos":"files";const d=a.data("wmu-type"),s=parseInt(a.data("wmu-index"));if(d!==o){const o=e(".wmu-action-wrap .wmu-"+d+"-tab",t);a.remove(),o.children().length||o.addClass("wmu-hide"),n(t,i,s)}else if(a.attr("title",i.name),a.data("wmu-type",o),a.find(".wmu-file-name").text(c(i.name)),m.match(/^image/)&&window.FileReader){const e=new FileReader;e.readAsDataURL(i),e.onloadend=function(){a.find(".wmu-preview-img").attr("src",this.result),a.find(".wmu-file-name").text("")}}else m.match(/^video/)||m.match(/^audio/)?a.find(".wmu-preview-img").attr("src",wpdiscuzAjaxObj.wmuIconVideo):a.find(".wmu-preview-img").attr("src",wpdiscuzAjaxObj.wmuIconFile)}(m,o,s),t.val("")})),e("body").on("click",".wmu-attachment-delete",(function(a){if(confirm(wpdiscuzAjaxObj.wmuPhraseConfirmDelete)){const a=e(this),i=a.data("wmu-attachment"),n=new FormData;n.append("action","wmuDeleteAttachment"),n.append("attachmentId",i),wpdiscuzAjaxObj.getAjaxObj(t,!0,n).done((function(t){if(t.success){var i=a.parents(".wmu-comment-attachments");a.parent(".wmu-attachment").remove(),e(".wmu-attached-images *",i).length||e(".wmu-attached-images",i).remove(),e(".wmu-attached-videos *",i).length||e(".wmu-attached-videos",i).remove(),e(".wmu-attached-files *",i).length||e(".wmu-attached-files",i).remove()}else t.data.errorCode?wpdiscuzAjaxObj.setCommentMessage(wpdiscuzAjaxObj.applyFilterOnPhrase(wpdiscuzAjaxObj[t.data.errorCode],t.data.errorCode,i),"error",3e3):t.data.error&&wpdiscuzAjaxObj.setCommentMessage(t.data.error,"error",3e3);e("#wpdiscuz-loading-bar").fadeOut(250)})).fail((function(t,a,i){console.log(i),e("#wpdiscuz-loading-bar").fadeOut(250)}))}else console.log("canceled")})),parseInt(wpdiscuzAjaxObj.wmuIsLightbox)){function m(){wpdiscuzAjaxObj.postAttachmentsAsGallery?e(".wmu-lightbox").colorbox({maxHeight:"95%",maxWidth:"95%",rel:"wmu-lightbox",fixed:!0}):(e(".wmu-attached-images").each((function(){var t="gallery-"+e(this).closest(".comment").attr("id");e(this).find(".wmu-lightbox").each((function(){e(this).attr("rel",t)}))})),e(".wmu-lightbox").colorbox({maxHeight:"95%",maxWidth:"95%",photo:!0,fixed:!0,rel:function(){return e(this).attr("rel")}}))}m(),wpdiscuzAjaxObj.wmuAddLightBox=m}wpdiscuzAjaxObj.wmuHideAll=function(t,a){"object"==typeof t?t.success?(e(".wmu-tabs",a).addClass("wmu-hide"),e(".wmu-preview",a).remove(),e(".wmu-attached-data-info",a).remove()):console.log(t.data):console.log(t)}})); |