1234567891011121314 |
- /*!
- * bootstrap-fileinput v5.2.4
- * http://plugins.krajee.com/file-input
- *
- * Author: Kartik Visweswaran
- * Copyright: 2014 - 2021, Kartik Visweswaran, Krajee.com
- *
- * Licensed under the BSD-3-Clause
- * https://github.com/kartik-v/bootstrap-fileinput/blob/master/LICENSE.md
- */!function(e){"use strict";"function"==typeof define&&define.amd?define(["jquery","window","document"],e):"object"==typeof module&&"object"==typeof module.exports?e(require("jquery"),window,document):e(window.jQuery,window,document)}(function(e,t,i,a){"use strict";e.fn.fileinputLocales={},e.fn.fileinputThemes={},e.fn.fileinputBsVersion||(e.fn.fileinputBsVersion=t.Alert&&t.Alert.VERSION||t.bootstrap&&t.bootstrap.Alert&&bootstrap.Alert.VERSION||"3.x.x"),String.prototype.setTokens=function(e){var t,i,a=this.toString();for(t in e)e.hasOwnProperty(t)&&(i=new RegExp("{"+t+"}","g"),a=a.replace(i,e[t]));return a},Array.prototype.flatMap||(Array.prototype.flatMap=function(e){return[].concat(this.map(e))});var r,n,o=function(){var e=i.currentScript.src,t=e.substring(0,e.lastIndexOf("/"));return t.substring(0,t.lastIndexOf("/")+1)+"img/loading.gif"};r={FRAMES:".kv-preview-thumb",SORT_CSS:"file-sortable",INIT_FLAG:"init-",ZOOM_VAR:o()+"?kvTemp__2873389129__=",OBJECT_PARAMS:'<param name="controller" value="true" />\n<param name="allowFullScreen" value="true" />\n<param name="allowScriptAccess" value="always" />\n<param name="autoPlay" value="false" />\n<param name="autoStart" value="false" />\n<param name="quality" value="high" />\n',DEFAULT_PREVIEW:'<div class="file-preview-other">\n<span class="{previewFileIconClass}">{previewFileIcon}</span>\n</div>',MODAL_ID:"kvFileinputModal",MODAL_EVENTS:["show","shown","hide","hidden","loaded"],logMessages:{ajaxError:"{status}: {error}. Error Details: {text}.",badDroppedFiles:"Error scanning dropped files!",badExifParser:"Error loading the piexif.js library. {details}",badInputType:'The input "type" must be set to "file" for initializing the "bootstrap-fileinput" plugin.',exifWarning:'To avoid this warning, either set "autoOrientImage" to "false" OR ensure you have loaded the "piexif.js" library correctly on your page before the "fileinput.js" script.',invalidChunkSize:'Invalid upload chunk size: "{chunkSize}". Resumable uploads are disabled.',invalidThumb:'Invalid thumb frame with id: "{id}".',noResumableSupport:"The browser does not support resumable or chunk uploads.",noUploadUrl:'The "uploadUrl" is not set. Ajax uploads and resumable uploads have been disabled.',retryStatus:"Retrying upload for chunk # {chunk} for {filename}... retry # {retry}.",chunkQueueError:"Could not push task to ajax pool for chunk index # {index}.",resumableMaxRetriesReached:"Maximum resumable ajax retries ({n}) reached.",resumableRetryError:"Could not retry the resumable request (try # {n})... aborting.",resumableAborting:"Aborting / cancelling the resumable request.",resumableRequestError:"Error processing resumable request. {msg}"},objUrl:t.URL||t.webkitURL,isBs:function(t){var i=e.trim((e.fn.fileinputBsVersion||"")+"");return t=parseInt(t,10),i?t===parseInt(i.charAt(0),10):4===t},defaultButtonCss:function(e){return"btn-default btn-"+(e?"":"outline-")+"secondary"},now:function(){return(new Date).getTime()},round:function(e){return e=parseFloat(e),isNaN(e)?0:Math.floor(Math.round(e))},getArray:function(e){var t,i=[],a=e&&e.length||0;for(t=0;a>t;t++)i.push(e[t]);return i},getFileRelativePath:function(e){return String(e.newPath||e.relativePath||e.webkitRelativePath||r.getFileName(e)||null)},getFileId:function(e,t){var i=r.getFileRelativePath(e);return"function"==typeof t?t(e):e&&i?e.size+"_"+encodeURIComponent(i).replace(/%/g,"_"):null},getFrameSelector:function(e,t){return t=t||"",'[id="'+e+'"]'+t},getZoomSelector:function(e,t){return r.getFrameSelector("zoom-"+e,t)},getFrameElement:function(e,t,i){return e.find(r.getFrameSelector(t,i))},getZoomElement:function(e,t,i){return e.find(r.getZoomSelector(t,i))},getElapsed:function(t){var i=t,a="",n={},o={year:31536e3,month:2592e3,week:604800,day:86400,hour:3600,minute:60,second:1};return r.getObjectKeys(o).forEach(function(e){n[e]=Math.floor(i/o[e]),i-=n[e]*o[e]}),e.each(n,function(e,t){t>0&&(a+=(a?" ":"")+t+e.substring(0,1))}),a},debounce:function(e,t){var i;return function(){var a=arguments,r=this;clearTimeout(i),i=setTimeout(function(){e.apply(r,a)},t)}},stopEvent:function(e){e.stopPropagation(),e.preventDefault()},getFileName:function(e){return e?e.fileName||e.name||"":""},createObjectURL:function(e){return r.objUrl&&r.objUrl.createObjectURL&&e?r.objUrl.createObjectURL(e):""},revokeObjectURL:function(e){r.objUrl&&r.objUrl.revokeObjectURL&&e&&r.objUrl.revokeObjectURL(e)},compare:function(e,t,i){return e!==a&&(i?e===t:e.match(t))},isIE:function(e){var t,a;return"Microsoft Internet Explorer"!==navigator.appName?!1:10===e?new RegExp("msie\\s"+e,"i").test(navigator.userAgent):(t=i.createElement("div"),t.innerHTML="<!--[if IE "+e+"]> <i></i> <![endif]-->",a=t.getElementsByTagName("i").length,i.body.appendChild(t),t.parentNode.removeChild(t),a)},canOrientImage:function(t){var a=e(i.createElement("img")).css({width:"1px",height:"1px"}).insertAfter(t),r=a.css("image-orientation");return a.remove(),!!r},canAssignFilesToInput:function(){var e=i.createElement("input");try{return e.type="file",e.files=null,!0}catch(t){return!1}},getDragDropFolders:function(e){var t,i,a=e?e.length:0,r=0;if(a>0&&e[0].webkitGetAsEntry())for(t=0;a>t;t++)i=e[t].webkitGetAsEntry(),i&&i.isDirectory&&r++;return r},initModal:function(t){var i=e("body");i.length&&t.appendTo(i)},isFunction:function(e){return"function"==typeof e},isEmpty:function(t,i){return t===a||null===t||""===t?!0:r.isString(t)&&i?""===e.trim(t):r.isArray(t)?0===t.length:!(!e.isPlainObject(t)||!e.isEmptyObject(t))},isArray:function(e){return Array.isArray(e)||"[object Array]"===Object.prototype.toString.call(e)},isString:function(e){return"[object String]"===Object.prototype.toString.call(e)},ifSet:function(e,t,i){return i=i||"",t&&"object"==typeof t&&e in t?t[e]:i},cleanArray:function(e){return e instanceof Array||(e=[]),e.filter(function(e){return e!==a&&null!==e})},spliceArray:function(t,i,a){var r,n,o=0,s=[];if(!(t instanceof Array))return[];for(n=e.extend(!0,[],t),a&&n.reverse(),r=0;r<n.length;r++)r!==i&&(s[o]=n[r],o++);return a&&s.reverse(),s},getNum:function(e,t){return t=t||0,"number"==typeof e?e:("string"==typeof e&&(e=parseFloat(e)),isNaN(e)?t:e)},hasFileAPISupport:function(){return!(!t.File||!t.FileReader)},hasDragDropSupport:function(){var e=i.createElement("div");return!r.isIE(9)&&(e.draggable!==a||e.ondragstart!==a&&e.ondrop!==a)},hasFileUploadSupport:function(){return r.hasFileAPISupport()&&t.FormData},hasBlobSupport:function(){try{return!!t.Blob&&Boolean(new Blob)}catch(e){return!1}},hasArrayBufferViewSupport:function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(e){return!1}},hasResumableUploadSupport:function(){return r.hasFileUploadSupport()&&r.hasBlobSupport()&&r.hasArrayBufferViewSupport()&&(!!Blob.prototype.webkitSlice||!!Blob.prototype.mozSlice||!!Blob.prototype.slice||!1)},dataURI2Blob:function(e){var i,a,n,o,s,l,d=t.BlobBuilder||t.WebKitBlobBuilder||t.MozBlobBuilder||t.MSBlobBuilder,c=r.hasBlobSupport(),u=(c||d)&&t.atob&&t.ArrayBuffer&&t.Uint8Array;if(!u)return null;for(i=e.split(",")[0].indexOf("base64")>=0?atob(e.split(",")[1]):decodeURIComponent(e.split(",")[1]),a=new ArrayBuffer(i.length),n=new Uint8Array(a),o=0;o<i.length;o+=1)n[o]=i.charCodeAt(o);return s=e.split(",")[0].split(":")[1].split(";")[0],c?new Blob([r.hasArrayBufferViewSupport()?n:a],{type:s}):(l=new d,l.append(a),l.getBlob(s))},arrayBuffer2String:function(e){if(t.TextDecoder)return new TextDecoder("utf-8").decode(e);var i,a,r,n,o=Array.prototype.slice.apply(new Uint8Array(e)),s="",l=0;for(i=o.length;i>l;)switch(a=o[l++],a>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:s+=String.fromCharCode(a);break;case 12:case 13:r=o[l++],s+=String.fromCharCode((31&a)<<6|63&r);break;case 14:r=o[l++],n=o[l++],s+=String.fromCharCode((15&a)<<12|(63&r)<<6|(63&n)<<0)}return s},isHtml:function(e){var t=i.createElement("div");t.innerHTML=e;for(var a=t.childNodes,r=a.length;r--;)if(1===a[r].nodeType)return!0;return!1},isSvg:function(e){return e.match(/^\s*<\?xml/i)&&(e.match(/<!DOCTYPE svg/i)||e.match(/<svg/i))},getMimeType:function(e,t,i){switch(e){case"ffd8ffe0":case"ffd8ffe1":case"ffd8ffe2":return"image/jpeg";case"89504e47":return"image/png";case"47494638":return"image/gif";case"49492a00":return"image/tiff";case"52494646":return"image/webp";case"66747970":return"video/3gp";case"4f676753":return"video/ogg";case"1a45dfa3":return"video/mkv";case"000001ba":case"000001b3":return"video/mpeg";case"3026b275":return"video/wmv";case"25504446":return"application/pdf";case"25215053":return"application/ps";case"504b0304":case"504b0506":case"504b0508":return"application/zip";case"377abcaf":return"application/7z";case"75737461":return"application/tar";case"7801730d":return"application/dmg";default:switch(e.substring(0,6)){case"435753":return"application/x-shockwave-flash";case"494433":return"audio/mp3";case"425a68":return"application/bzip";default:switch(e.substring(0,4)){case"424d":return"image/bmp";case"fffb":return"audio/mp3";case"4d5a":return"application/exe";case"1f9d":case"1fa0":return"application/zip";case"1f8b":return"application/gzip";default:return t&&!t.match(/[^\u0000-\u007f]/)?"application/text-plain":i}}}},addCss:function(e,t){e.removeClass(t).addClass(t)},getElement:function(t,i,a){return r.isEmpty(t)||r.isEmpty(t[i])?a:e(t[i])},createElement:function(t,i){return i=i||"div",e(e.parseHTML("<"+i+">"+t+"</"+i+">"))},uniqId:function(){return((new Date).getTime()+Math.floor(Math.random()*Math.pow(10,15))).toString(36)},cspBuffer:{CSP_ATTRIB:"data-csp-01928735",domElementsStyles:{},stash:function(t){var i=this,a=e.parseHTML("<div>"+t+"</div>"),n=e(a);n.find("[style]").each(function(t,a){var n=e(a),o=n[0].style,s=r.uniqId(),l={};o&&o.length&&(e(o).each(function(){l[this]=o[this]}),i.domElementsStyles[s]=l,n.removeAttr("style").attr(i.CSP_ATTRIB,s))}),n.filter("*").removeAttr("style");var o=Object.values?Object.values(a):Object.keys(a).map(function(e){return a[e]});return o.flatMap(function(e){return e.innerHTML}).join("")},apply:function(t){var i=this,a=e(t);a.find("["+i.CSP_ATTRIB+"]").each(function(t,a){var r=e(a),n=r.attr(i.CSP_ATTRIB),o=i.domElementsStyles[n];o&&r.css(o),r.removeAttr(i.CSP_ATTRIB)}),i.domElementsStyles={}}},setHtml:function(e,t){var i=r.cspBuffer;return e.html(i.stash(t)),i.apply(e),e},htmlEncode:function(e,t){return e===a?t||null:e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},replaceTags:function(t,i){var a=t;return i?(e.each(i,function(e,t){"function"==typeof t&&(t=t()),a=a.split(e).join(t)}),a):a},cleanMemory:function(e){var t=e.is("img")?e.attr("src"):e.find("source").attr("src");r.revokeObjectURL(t)},findFileName:function(e){var t=e.lastIndexOf("/");return-1===t&&(t=e.lastIndexOf("\\")),e.split(e.substring(t,t+1)).pop()},checkFullScreen:function(){return i.fullscreenElement||i.mozFullScreenElement||i.webkitFullscreenElement||i.msFullscreenElement},toggleFullScreen:function(e){var t=i,a=t.documentElement,n=r.checkFullScreen();a&&e&&!n?a.requestFullscreen?a.requestFullscreen():a.msRequestFullscreen?a.msRequestFullscreen():a.mozRequestFullScreen?a.mozRequestFullScreen():a.webkitRequestFullscreen&&a.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):n&&(t.exitFullscreen?t.exitFullscreen():t.msExitFullscreen?t.msExitFullscreen():t.mozCancelFullScreen?t.mozCancelFullScreen():t.webkitExitFullscreen&&t.webkitExitFullscreen())},moveArray:function(t,i,r,n){var o=e.extend(!0,[],t);if(n&&o.reverse(),r>=o.length)for(var s=r-o.length;s--+1;)o.push(a);return o.splice(r,0,o.splice(i,1)[0]),n&&o.reverse(),o},closeButton:function(e){return e=(r.isBs(5)?"btn-close":"close")+(e?" "+e:""),'<button type="button" class="'+e+'" aria-label="Close">\n'+(r.isBs(5)?"":' <span aria-hidden="true">×</span>\n')+"</button>"},getRotation:function(e){switch(e){case 2:return"rotateY(180deg)";case 3:return"rotate(180deg)";case 4:return"rotate(180deg) rotateY(180deg)";case 5:return"rotate(270deg) rotateY(180deg)";case 6:return"rotate(90deg)";case 7:return"rotate(90deg) rotateY(180deg)";case 8:return"rotate(270deg)";default:return""}},setTransform:function(e,t){e&&(e.style.transform=t,e.style.webkitTransform=t,e.style["-moz-transform"]=t,e.style["-ms-transform"]=t,e.style["-o-transform"]=t)},getObjectKeys:function(t){var i=[];return t&&e.each(t,function(e){i.push(e)}),i},getObjectSize:function(e){return r.getObjectKeys(e).length},whenAll:function(t){var i,a,n,o,s,l,d=[].slice,c=1===arguments.length&&r.isArray(t)?t:d.call(arguments),u=e.Deferred(),p=0,f=c.length,g=f;for(n=o=s=Array(f),l=function(e,t,i){return function(){i!==c&&p++,u.notifyWith(t[e]=this,i[e]=d.call(arguments)),--g||u[(p?"reject":"resolve")+"With"](t,i)}},i=0;f>i;i++)(a=c[i])&&e.isFunction(a.promise)?a.promise().done(l(i,s,c)).fail(l(i,n,o)):(u.notifyWith(this,a),--g);return g||u.resolveWith(s,c),u.promise()}},n=function(t,i){var a=this;a.$element=e(t),a.$parent=a.$element.parent(),a._validate()&&(a.isPreviewable=r.hasFileAPISupport(),a.isIE9=r.isIE(9),a.isIE10=r.isIE(10),(a.isPreviewable||a.isIE9)&&(a._init(i),a._listen()),a.$element.removeClass("file-loading"))},n.prototype={constructor:n,_cleanup:function(){var e=this;e.reader=null,e.clearFileStack(),e.fileBatchCompleted=!0,e.isError=!1,e.isDuplicateError=!1,e.isPersistentError=!1,e.cancelling=!1,e.paused=!1,e.lastProgress=0,e._initAjax()},_isAborted:function(){var e=this;return e.cancelling||e.paused},_initAjax:function(){var t=this,i=t.taskManager={pool:{},addPool:function(e){return i.pool[e]=new i.TasksPool(e)},getPool:function(e){return i.pool[e]},addTask:function(e,t){return new i.Task(e,t)},TasksPool:function(t){var a=this;a.id=t,a.cancelled=!1,a.cancelledDeferrer=e.Deferred(),a.tasks={},a.addTask=function(e,t){return a.tasks[e]=new i.Task(e,t)},a.size=function(){return r.getObjectSize(a.tasks)},a.run=function(t){var i,n,o,s=0,l=!1,d=r.getObjectKeys(a.tasks).map(function(e){return a.tasks[e]}),c=[],u=e.Deferred();if(a.cancelled)return a.cancelledDeferrer.resolve(),u.reject();if(!t){var p=r.getObjectKeys(a.tasks).map(function(e){return a.tasks[e].deferred});return r.whenAll(p).done(function(){var e=r.getArray(arguments);a.cancelled?(u.reject.apply(null,e),a.cancelledDeferrer.resolve()):(u.resolve.apply(null,e),a.cancelledDeferrer.reject())}).fail(function(){var e=r.getArray(arguments);u.reject.apply(null,e),a.cancelled?a.cancelledDeferrer.resolve():a.cancelledDeferrer.reject()}),e.each(a.tasks,function(e){i=a.tasks[e],i.run()}),u}for(n=function(t){e.when(t.deferred).fail(function(){l=!0,o.apply(null,arguments)}).always(o)},o=function(){var e=r.getArray(arguments);return u.notify(e),c.push(e),a.cancelled?(u.reject.apply(null,c),void a.cancelledDeferrer.resolve()):(c.length===a.size()&&(l?u.reject.apply(null,c):u.resolve.apply(null,c)),void(d.length&&(i=d.shift(),n(i),i.run())))};d.length&&s++<t;)i=d.shift(),n(i),i.run();return u},a.cancel=function(){return a.cancelled=!0,a.cancelledDeferrer}},Task:function(t,i){var a=this;a.id=t,a.deferred=e.Deferred(),a.logic=i,a.context=null,a.run=function(){var e=r.getArray(arguments);return e.unshift(a.deferred),i.apply(a.context,e),a.deferred},a.runWithContext=function(e){return a.context=e,a.run()}}};t.ajaxQueue=[],t.ajaxRequests=[],t.ajaxAborted=!1},_init:function(t,n){var o,s,l,d,c=this,u=c.$element;c.options=t,c.canOrientImage=r.canOrientImage(u),e.each(t,function(e,t){switch(e){case"minFileCount":case"maxFileCount":case"maxTotalFileCount":case"minFileSize":case"maxFileSize":case"maxFilePreviewSize":case"resizeQuality":case"resizeIfSizeMoreThan":case"progressUploadThreshold":case"initialPreviewCount":case"zoomModalHeight":case"minImageHeight":case"maxImageHeight":case"minImageWidth":case"maxImageWidth":case"bytesToKB":c[e]=r.getNum(t);break;default:c[e]=t}}),(!c.bytesToKB||c.bytesToKB<=0)&&(c.bytesToKB=1024),c.errorCloseButton===a&&(c.errorCloseButton=r.closeButton("kv-error-close"+(r.isBs(5)?" float-end":""))),c.maxTotalFileCount>0&&c.maxTotalFileCount<c.maxFileCount&&(c.maxTotalFileCount=c.maxFileCount),c.rtl&&(d=c.previewZoomButtonIcons.prev,c.previewZoomButtonIcons.prev=c.previewZoomButtonIcons.next,c.previewZoomButtonIcons.next=d),!isNaN(c.maxAjaxThreads)&&c.maxAjaxThreads<c.resumableUploadOptions.maxThreads&&(c.resumableUploadOptions.maxThreads=c.maxAjaxThreads),c._initFileManager(),"function"==typeof c.autoOrientImage&&(c.autoOrientImage=c.autoOrientImage()),"function"==typeof c.autoOrientImageInitial&&(c.autoOrientImageInitial=c.autoOrientImageInitial()),n||c._cleanup(),c.duplicateErrors=[],c.$form=u.closest("form"),c._initTemplateDefaults(),c.uploadFileAttr=r.isEmpty(u.attr("name"))?"file_data":u.attr("name"),l=c._getLayoutTemplate("progress"),c.progressTemplate=l.replace("{class}",c.progressClass),c.progressInfoTemplate=l.replace("{class}",c.progressInfoClass),c.progressPauseTemplate=l.replace("{class}",c.progressPauseClass),c.progressCompleteTemplate=l.replace("{class}",c.progressCompleteClass),c.progressErrorTemplate=l.replace("{class}",c.progressErrorClass),c.isDisabled=u.attr("disabled")||u.attr("readonly"),c.isDisabled&&u.attr("disabled",!0),c.isClickable=c.browseOnZoneClick&&c.showPreview&&(c.dropZoneEnabled||!r.isEmpty(c.defaultPreviewContent)),c.isAjaxUpload=r.hasFileUploadSupport()&&!r.isEmpty(c.uploadUrl),c.dropZoneEnabled=r.hasDragDropSupport()&&c.dropZoneEnabled,c.isAjaxUpload||(c.dropZoneEnabled=c.dropZoneEnabled&&r.canAssignFilesToInput()),c.slug="function"==typeof t.slugCallback?t.slugCallback:c._slugDefault,c.mainTemplate=c.showCaption?c._getLayoutTemplate("main1"):c._getLayoutTemplate("main2"),c.captionTemplate=c._getLayoutTemplate("caption"),c.previewGenericTemplate=c._getPreviewTemplate("generic"),!c.imageCanvas&&c.resizeImage&&(c.maxImageWidth||c.maxImageHeight)&&(c.imageCanvas=i.createElement("canvas"),c.imageCanvasContext=c.imageCanvas.getContext("2d")),r.isEmpty(u.attr("id"))&&u.attr("id",r.uniqId()),c.namespace=".fileinput_"+u.attr("id").replace(/-/g,"_"),c.$container===a?c.$container=c._createContainer():c._refreshContainer(),s=c.$container,c.$dropZone=s.find(".file-drop-zone"),c.$progress=s.find(".kv-upload-progress"),c.$btnUpload=s.find(".fileinput-upload"),c.$captionContainer=r.getElement(t,"elCaptionContainer",s.find(".file-caption")),c.$caption=r.getElement(t,"elCaptionText",s.find(".file-caption-name")),r.isEmpty(c.msgPlaceholder)||(o=u.attr("multiple")?c.filePlural:c.fileSingle,c.$caption.attr("placeholder",c.msgPlaceholder.replace("{files}",o))),c.$captionIcon=c.$captionContainer.find(".file-caption-icon"),c.$previewContainer=r.getElement(t,"elPreviewContainer",s.find(".file-preview")),c.$preview=r.getElement(t,"elPreviewImage",s.find(".file-preview-thumbnails")),c.$previewStatus=r.getElement(t,"elPreviewStatus",s.find(".file-preview-status")),c.$errorContainer=r.getElement(t,"elErrorContainer",c.$previewContainer.find(".kv-fileinput-error")),c._validateDisabled(),r.isEmpty(c.msgErrorClass)||r.addCss(c.$errorContainer,c.msgErrorClass),n?c._errorsExist()||c.$errorContainer.hide():(c._resetErrors(),c.$errorContainer.hide(),c.previewInitId="thumb-"+u.attr("id"),c._initPreviewCache(),c._initPreview(!0),c._initPreviewActions(),c.$parent.hasClass("file-loading")&&(c.$container.insertBefore(c.$parent),c.$parent.remove())),c._setFileDropZoneTitle(),u.attr("disabled")&&c.disable(),c._initZoom(),c.hideThumbnailContent&&r.addCss(c.$preview,"hide-content")},_initFileManager:function(){var t=this;t.uploadStartTime=r.now(),t.fileManager={stack:{},filesProcessed:[],errors:[],loadedImages:{},totalImages:0,totalFiles:null,totalSize:null,uploadedSize:0,stats:{},bpsLog:[],bps:0,initStats:function(e){var i={started:r.now()};e?t.fileManager.stats[e]=i:t.fileManager.stats=i},getUploadStats:function(e,i,a){var n,o=t.fileManager,s=e?o.stats[e]&&o.stats[e].started||r.now():t.uploadStartTime,l=(r.now()-s)/1e3,d=Math.ceil(l?i/l:0),c=a-i,u=o.bpsLog.length?t.bitrateUpdateDelay:0;return setTimeout(function(){var e,t,i,a=0,r=0;for(o.bpsLog.push(d),o.bpsLog.sort(function(e,t){return e-t}),t=o.bpsLog.length,i=t>10?t-10:Math.ceil(t/2),e=t;e>i;e--)r=parseFloat(o.bpsLog[e]),a++;o.bps=64*(a>0?r/a:0)},u),n={fileId:e,started:s,elapsed:l,loaded:i,total:a,bps:o.bps,bitrate:t._getSize(o.bps,t.bitRateUnits),pendingBytes:c},e?o.stats[e]=n:o.stats=n,n},exists:function(i){return-1!==e.inArray(i,t.fileManager.getIdList())},count:function(){return t.fileManager.getIdList().length},total:function(){var e=t.fileManager;return e.totalFiles||(e.totalFiles=e.count()),e.totalFiles},getTotalSize:function(){var i=t.fileManager;return i.totalSize?i.totalSize:(i.totalSize=0,e.each(t.getFileStack(),function(e,t){var a=parseFloat(t.size);i.totalSize+=isNaN(a)?0:a}),i.totalSize)},add:function(e,i){i||(i=t.fileManager.getId(e)),i&&(t.fileManager.stack[i]={file:e,name:r.getFileName(e),relativePath:r.getFileRelativePath(e),size:e.size,nameFmt:t._getFileName(e,""),sizeFmt:t._getSize(e.size)})},remove:function(e){var i=t._getThumbFileId(e);t.fileManager.removeFile(i)},removeFile:function(e){var i=t.fileManager;e&&(delete i.stack[e],delete i.loadedImages[e])},move:function(i,a){var r={},n=t.fileManager.stack;(i||a)&&i!==a&&(e.each(n,function(e,t){e!==i&&(r[e]=t),e===a&&(r[i]=n[i])}),t.fileManager.stack=r)},list:function(){var i=[];return e.each(t.getFileStack(),function(e,t){t&&t.file&&i.push(t.file)}),i},isPending:function(i){return-1===e.inArray(i,t.fileManager.filesProcessed)&&t.fileManager.exists(i)},isProcessed:function(){var i=!0,a=t.fileManager;return e.each(t.getFileStack(),function(e){a.isPending(e)&&(i=!1)}),i},clear:function(){var e=t.fileManager;t.isDuplicateError=!1,t.isPersistentError=!1,e.totalFiles=null,e.totalSize=null,e.uploadedSize=0,e.stack={},e.errors=[],e.filesProcessed=[],e.stats={},e.bpsLog=[],e.bps=0,e.clearImages()},clearImages:function(){t.fileManager.loadedImages={},t.fileManager.totalImages=0},addImage:function(e,i){t.fileManager.loadedImages[e]=i},removeImage:function(e){delete t.fileManager.loadedImages[e]},getImageIdList:function(){return r.getObjectKeys(t.fileManager.loadedImages)},getImageCount:function(){return t.fileManager.getImageIdList().length},getId:function(e){return t._getFileId(e)},getIndex:function(e){return t.fileManager.getIdList().indexOf(e)},getThumb:function(i){var a=null;return t._getThumbs().each(function(){var r=e(this);t._getThumbFileId(r)===i&&(a=r)}),a},getThumbIndex:function(e){var i=t._getThumbFileId(e);return t.fileManager.getIndex(i)},getIdList:function(){return r.getObjectKeys(t.fileManager.stack)},getFile:function(e){return t.fileManager.stack[e]||null},getFileName:function(e,i){var a=t.fileManager.getFile(e);return a?i?a.nameFmt||"":a.name||"":""},getFirstFile:function(){var e=t.fileManager.getIdList(),i=e&&e.length?e[0]:null;return t.fileManager.getFile(i)},setFile:function(e,i){t.fileManager.getFile(e)?t.fileManager.stack[e].file=i:t.fileManager.add(i,e)},setProcessed:function(e){t.fileManager.filesProcessed.push(e)},getProgress:function(){var e=t.fileManager.total(),i=t.fileManager.filesProcessed.length;return e?Math.ceil(i/e*100):0},setProgress:function(e,i){var a=t.fileManager.getFile(e);!isNaN(i)&&a&&(a.progress=i)}}},_setUploadData:function(t,i){var a=this;e.each(i,function(e,i){var n=a.uploadParamNames[e]||e;r.isArray(i)?t.append(n,i[0],i[1]):t.append(n,i)})},_initResumableUpload:function(){var t,i=this,a=i.resumableUploadOptions,n=r.logMessages,o=i.fileManager;if(i.enableResumableUpload){if(a.fallback!==!1&&"function"!=typeof a.fallback&&(a.fallback=function(e){e._log(n.noResumableSupport),e.enableResumableUpload=!1}),!r.hasResumableUploadSupport()&&a.fallback!==!1)return void a.fallback(i);if(!i.uploadUrl&&i.enableResumableUpload)return i._log(n.noUploadUrl),void(i.enableResumableUpload=!1);if(a.chunkSize=parseFloat(a.chunkSize),a.chunkSize<=0||isNaN(a.chunkSize))return i._log(n.invalidChunkSize,{chunkSize:a.chunkSize}),void(i.enableResumableUpload=!1);t=i.resumableManager={init:function(e,r,n){t.logs=[],t.stack=[],t.error="",t.id=e,t.file=r.file,t.fileName=r.name,t.fileIndex=n,t.completed=!1,t.lastProgress=0,i.showPreview&&(t.$thumb=o.getThumb(e)||null,t.$progress=t.$btnDelete=null,t.$thumb&&t.$thumb.length&&(t.$progress=t.$thumb.find(".file-thumb-progress"),t.$btnDelete=t.$thumb.find(".kv-file-remove"))),t.chunkSize=a.chunkSize*i.bytesToKB,t.chunkCount=t.getTotalChunks()},setAjaxError:function(e,r,o,s){e.responseJSON&&e.responseJSON.error&&(o=e.responseJSON.error.toString()),s||(t.error=o),a.showErrorLog&&i._log(n.ajaxError,{status:e.status,error:o,text:e.responseText||""})},reset:function(){t.stack=[],t.chunksProcessed={}},setProcessed:function(r){var n,s,l=t.id,d=t.$thumb,c=t.$progress,u=d&&d.length,p={id:u?d.attr("id"):"",index:o.getIndex(l),fileId:l},f=i.resumableUploadOptions.skipErrorsAndProceed;t.completed=!0,t.lastProgress=0,u&&d.removeClass("file-uploading"),"success"===r?(o.uploadedSize+=t.file.size,i.showPreview&&(i._setProgress(101,c),i._setThumbStatus(d,"Success"),i._initUploadSuccess(t.chunksProcessed[l].data,d)),o.removeFile(l),delete t.chunksProcessed[l],i._raise("fileuploaded",[p.id,p.index,p.fileId]),o.isProcessed()&&i._setProgress(101)):"cancel"!==r&&(i.showPreview&&(i._setThumbStatus(d,"Error"),i._setPreviewError(d,!0),i._setProgress(101,c,i.msgProgressError),i._setProgress(101,i.$progress,i.msgProgressError),i.cancelling=!f),i.$errorContainer.find('li[data-file-id="'+p.fileId+'"]').length||(s={file:t.fileName,max:a.maxRetries,error:t.error},n=i.msgResumableUploadRetriesExceeded.setTokens(s),e.extend(p,s),i._showFileError(n,p,"filemaxretries"),f&&(o.removeFile(l),delete t.chunksProcessed[l],o.isProcessed()&&i._setProgress(101)))),o.isProcessed()&&t.reset()},check:function(){var i=!0;e.each(t.logs,function(e,t){return t?void 0:(i=!1,!1)})},processedResumables:function(){var e,i=t.logs,a=0;if(!i||!i.length)return 0;for(e=0;e<i.length;e++)i[e]===!0&&a++;return a},getUploadedSize:function(){var e=t.processedResumables()*t.chunkSize;return e>t.file.size?t.file.size:e},getTotalChunks:function(){var e=parseFloat(t.chunkSize);return!isNaN(e)&&e>0?Math.ceil(t.file.size/e):0},getProgress:function(){var e=t.processedResumables(),i=t.chunkCount;return 0===i?0:Math.ceil(e/i*100)},checkAborted:function(e){i._isAborted()&&(clearInterval(e),i.unlock())},upload:function(){var e,a=o.getIdList(),n="new";e=setInterval(function(){var s;if(t.checkAborted(e),"new"===n&&(i.lock(),n="processing",s=a.shift(),o.initStats(s),o.stack[s]&&(t.init(s,o.stack[s],o.getIndex(s)),t.processUpload())),!o.isPending(s)&&t.completed&&(n="new"),o.isProcessed()){var l=i.$preview.find(".file-preview-initial");l.length&&(r.addCss(l,r.SORT_CSS),i._initSortable()),clearInterval(e),i._clearFileInput(),i.unlock(),setTimeout(function(){var e=i.previewCache.data;e&&(i.initialPreview=e.content,i.initialPreviewConfig=e.config,i.initialPreviewThumbTags=e.tags),i._raise("filebatchuploadcomplete",[i.initialPreview,i.initialPreviewConfig,i.initialPreviewThumbTags,i._getExtraData()])},i.processDelay)}},i.processDelay)},uploadResumable:function(){var e,r,n=i.taskManager,o=t.chunkCount;for(r=n.addPool(t.id),e=0;o>e;e++)t.logs[e]=!(!t.chunksProcessed[t.id]||!t.chunksProcessed[t.id][e]),t.logs[e]||t.pushAjax(e,0);r.run(a.maxThreads).done(function(){t.setProcessed("success")}).fail(function(){t.setProcessed(r.cancelled?"cancel":"error")})},processUpload:function(){var n,s,l,d,c,u,p,f=t.id;return a.testUrl?(n=new FormData,s=o.stack[f],i._setUploadData(n,{fileId:f,fileName:s.fileName,fileSize:s.size,fileRelativePath:s.relativePath,chunkSize:t.chunkSize,chunkCount:t.chunkCount}),l=function(e){p=i._getOutData(n,e),i._raise("filetestbeforesend",[f,o,t,p])},d=function(a,s,l){p=i._getOutData(n,l,a);var d=i.uploadParamNames,c=d.chunksUploaded||"chunksUploaded",u=[f,o,t,p];a[c]&&r.isArray(a[c])?(t.chunksProcessed[f]||(t.chunksProcessed[f]={}),e.each(a[c],function(e,i){t.logs[i]=!0,t.chunksProcessed[f][i]=!0}),t.chunksProcessed[f].data=a,i._raise("filetestsuccess",u)):i._raise("filetesterror",u),t.uploadResumable()},c=function(e,a,r){p=i._getOutData(n,e),i._raise("filetestajaxerror",[f,o,t,p]),t.setAjaxError(e,a,r,!0),t.uploadResumable()},u=function(){i._raise("filetestcomplete",[f,o,t,i._getOutData(n)])},void i._ajaxSubmit(l,d,u,c,n,f,t.fileIndex,a.testUrl)):void t.uploadResumable()},pushAjax:function(e,a){var r=i.taskManager,o=r.getPool(t.id);o.addTask(o.size()+1,function(e){var a,r=t.stack.shift();a=r[0],t.chunksProcessed[t.id]&&t.chunksProcessed[t.id][a]?i._log(n.chunkQueueError,{index:a}):t.sendAjax(a,r[1],e)}),t.stack.push([e,a])},sendAjax:function(e,s,l){var d,c=t.chunkSize,u=t.id,p=t.file,f=t.$thumb,g=r.logMessages,m=t.$btnDelete,h=function(e,t){t&&(e=e.setTokens(t)),e=g.resumableRequestError.setTokens({msg:e}),i._log(e),l.reject(e)};if(!t.chunksProcessed[u]||!t.chunksProcessed[u][e]){if(s>a.maxRetries)return h(g.resumableMaxRetriesReached,{n:a.maxRetries}),void t.setProcessed("error");var v,b,w,_,C,x,y=p.slice?"slice":p.mozSlice?"mozSlice":p.webkitSlice?"webkitSlice":"slice",T=p[y](c*e,c*(e+1));v=new FormData,d=o.stack[u],i._setUploadData(v,{chunkCount:t.chunkCount,chunkIndex:e,chunkSize:c,chunkSizeStart:c*e,fileBlob:[T,t.fileName],fileId:u,fileName:t.fileName,fileRelativePath:d.relativePath,fileSize:p.size,retryCount:s}),t.$progress&&t.$progress.length&&t.$progress.show(),w=function(a){b=i._getOutData(v,a),i.showPreview&&(f.hasClass("file-preview-success")||(i._setThumbStatus(f,"Loading"),r.addCss(f,"file-uploading")),m.attr("disabled",!0)),i._raise("filechunkbeforesend",[u,e,s,o,t,b])},_=function(r,d,c){if(i._isAborted())return void h(g.resumableAborting);b=i._getOutData(v,c,r);var p=i.uploadParamNames,f=p.chunkIndex||"chunkIndex",m=[u,e,s,o,t,b];r.error?(a.showErrorLog&&i._log(n.retryStatus,{retry:s+1,filename:t.fileName,chunk:e}),i._raise("filechunkerror",m),t.pushAjax(e,s+1),t.error=r.error,h(r.error)):(t.logs[r[f]]=!0,t.chunksProcessed[u]||(t.chunksProcessed[u]={}),t.chunksProcessed[u][r[f]]=!0,t.chunksProcessed[u].data=r,l.resolve.call(null,r),i._raise("filechunksuccess",m),t.check())},C=function(a,r,n){return i._isAborted()?void h(g.resumableAborting):(b=i._getOutData(v,a),t.setAjaxError(a,r,n),i._raise("filechunkajaxerror",[u,e,s,o,t,b]),t.pushAjax(e,s+1),void h(g.resumableRetryError,{n:s-1}))},x=function(){i._isAborted()||i._raise("filechunkcomplete",[u,e,s,o,t,i._getOutData(v)])},i._ajaxSubmit(w,_,x,C,v,u,t.fileIndex)}}},t.reset()}},_initTemplateDefaults:function(){var t,i,n,o,s,l,d,c,u,p,f,g,m,h,v,b,w,_,C,x,y,T,P,k,F,S,E,I,A,D,z,j,$,U,M,R,B,O,L,N,Z,H,W,V=this,q=function(e,t){return'<object class="kv-preview-data file-preview-'+e+'" title="{caption}" data="{data}" type="'+t+'"'+O+">\n"+r.DEFAULT_PREVIEW+"\n</object>\n"},K="btn btn-sm btn-kv "+r.defaultButtonCss();t='{preview}\n<div class="kv-upload-progress kv-hidden"></div><div class="clearfix"></div>\n<div class="file-caption {class}">\n <div class="input-group {inputGroupClass}">\n {caption}\n<span class="file-caption-icon"></span>\n'+(r.isBs(5)?"":'<div class="input-group-btn input-group-append">\n')+" {remove}\n {cancel}\n {pause}\n {upload}\n {browse}\n"+(r.isBs(5)?"":" </div>\n")+" </div>",i='{preview}\n<div class="kv-upload-progress kv-hidden"></div>\n<div class="clearfix"></div>\n<span class="{class}">{remove}\n{cancel}\n{upload}\n{browse}\n</span>',n='<div class="file-preview {class}">\n {close} <div class="{dropClass} clearfix">\n <div class="file-preview-thumbnails clearfix">\n </div>\n <div class="file-preview-status text-center text-success"></div>\n <div class="kv-fileinput-error"></div>\n </div>\n</div>',s=r.closeButton("fileinput-remove"),o='<i class="bi-file-earmark-arrow-up"></i>',l='<input readonly class="file-caption-name form-control {class}">\n',d='<button type="{type}" title="{title}" class="{css}" {status} {tabIndexConfig}>{icon} {label}</button>',c='<a href="{href}" title="{title}" class="{css}" {status} {tabIndexConfig}>{icon} {label}</a>',u='<div class="{css}" {status} {tabIndexConfig}>{icon} {label}</div>',H=r.MODAL_ID+"Label",p='<div id="'+r.MODAL_ID+'" class="file-zoom-dialog modal fade" aria-labelledby="'+H+'" {tabIndexConfig}></div>',
- f='<div class="modal-dialog modal-lg{rtl}" role="document">\n <div class="modal-content">\n <div class="modal-header kv-zoom-header">\n <h6 class="modal-title kv-zoom-title" id="'+H+'"><span class="kv-zoom-caption"></span> <span class="kv-zoom-size"></span></h6>\n <div class="kv-zoom-actions">{toggleheader}{fullscreen}{borderless}{close}</div>\n </div>\n <div class="floating-buttons"></div>\n <div class="kv-zoom-body file-zoom-content {zoomFrameClass}"></div>\n{prev} {next}\n <div class="kv-zoom-description"></div>\n </div>\n</div>\n',W='<button type="button" class="kv-desc-hide" aria-label="Close">{closeIcon}</button>',g='<div class="progress">\n <div class="{class}" role="progressbar" aria-valuenow="{percent}" aria-valuemin="0" aria-valuemax="100" style="width:{percent}%;">\n {status}\n </div>\n</div>{stats}',Z='<div class="text-primary file-upload-stats"><span class="pending-time">{pendingTime}</span> <span class="upload-speed">{uploadSpeed}</span></div>',m=" <samp>({sizeText})</samp>",h='<div class="file-thumbnail-footer">\n <div class="file-footer-caption" title="{caption}">\n <div class="file-caption-info">{caption}</div>\n <div class="file-size-info">{size}</div>\n </div>\n {progress}\n{indicator}\n{actions}\n</div>',v='<div class="file-actions">\n <div class="file-footer-buttons">\n {download} {upload} {delete} {zoom} {other} </div>\n</div>\n{drag}\n<div class="clearfix"></div>',b='<button type="button" class="kv-file-remove {removeClass}" title="{removeTitle}" {dataUrl}{dataKey}>{removeIcon}</button>\n',w='<button type="button" class="kv-file-upload {uploadClass}" title="{uploadTitle}">{uploadIcon}</button>',_='<a class="kv-file-download {downloadClass}" title="{downloadTitle}" href="{downloadUrl}" download="{caption}" target="_blank">{downloadIcon}</a>',C='<button type="button" class="kv-file-zoom {zoomClass}" title="{zoomTitle}">{zoomIcon}</button>',x='<span class="file-drag-handle {dragClass}" title="{dragTitle}">{dragIcon}</span>',y='<div class="file-upload-indicator" title="{indicatorTitle}">{indicator}</div>',T='<div class="file-preview-frame {frameClass}" id="{previewId}" data-fileindex="{fileindex}" data-fileid="{fileid}" data-template="{template}" data-zoom="{zoomData}"',P=T+'><div class="kv-file-content">\n',k=T+' title="{caption}"><div class="kv-file-content">\n',F="</div>{footer}\n{zoomCache}</div>\n",S="{content}\n",O=" {style}",E=q("html","text/html"),A=q("text","text/plain;charset=UTF-8"),R=q("pdf","application/pdf"),I='<img src="{data}" class="file-preview-image kv-preview-data" title="{title}" alt="{alt}"'+O+">\n",D='<iframe class="kv-preview-data file-preview-office" src="https://view.officeapps.live.com/op/embed.aspx?src={data}"'+O+"></iframe>",z='<iframe class="kv-preview-data file-preview-gdocs" src="https://docs.google.com/gview?url={data}&embedded=true"'+O+"></iframe>",j='<video class="kv-preview-data file-preview-video" controls'+O+'>\n<source src="{data}" type="{type}">\n'+r.DEFAULT_PREVIEW+"\n</video>\n",$='<!--suppress ALL --><audio class="kv-preview-data file-preview-audio" controls'+O+'>\n<source src="{data}" type="{type}">\n'+r.DEFAULT_PREVIEW+"\n</audio>\n",U='<embed class="kv-preview-data file-preview-flash" src="{data}" type="application/x-shockwave-flash"'+O+">\n",M='<object class="kv-preview-data file-preview-object file-object {typeCss}" data="{data}" type="{type}"'+O+'>\n<param name="movie" value="{caption}" />\n'+r.OBJECT_PARAMS+" "+r.DEFAULT_PREVIEW+"\n</object>\n",B='<div class="kv-preview-data file-preview-other-frame"'+O+">\n"+r.DEFAULT_PREVIEW+"\n</div>\n",L='<div class="kv-zoom-cache">{zoomContent}</div>',N={width:"100%",height:"100%","min-height":"480px"},V._isPdfRendered()&&(R=V.pdfRendererTemplate.replace("{renderer}",V._encodeURI(V.pdfRendererUrl))),V.defaults={layoutTemplates:{main1:t,main2:i,preview:n,close:s,fileIcon:o,caption:l,modalMain:p,modal:f,descriptionClose:W,progress:g,stats:Z,size:m,footer:h,indicator:y,actions:v,actionDelete:b,actionUpload:w,actionDownload:_,actionZoom:C,actionDrag:x,btnDefault:d,btnLink:c,btnBrowse:u,zoomCache:L},previewMarkupTags:{tagBefore1:P,tagBefore2:k,tagAfter:F},previewContentTemplates:{generic:S,html:E,image:I,text:A,office:D,gdocs:z,video:j,audio:$,flash:U,object:M,pdf:R,other:B},allowedPreviewTypes:["image","html","text","video","audio","flash","pdf","object"],previewTemplates:{},previewSettings:{image:{width:"auto",height:"auto","max-width":"100%","max-height":"100%"},html:{width:"213px",height:"160px"},text:{width:"213px",height:"160px"},office:{width:"213px",height:"160px"},gdocs:{width:"213px",height:"160px"},video:{width:"213px",height:"160px"},audio:{width:"100%",height:"30px"},flash:{width:"213px",height:"160px"},object:{width:"213px",height:"160px"},pdf:{width:"100%",height:"160px",position:"relative"},other:{width:"213px",height:"160px"}},previewSettingsSmall:{image:{width:"auto",height:"auto","max-width":"100%","max-height":"100%"},html:{width:"100%",height:"160px"},text:{width:"100%",height:"160px"},office:{width:"100%",height:"160px"},gdocs:{width:"100%",height:"160px"},video:{width:"100%",height:"auto"},audio:{width:"100%",height:"30px"},flash:{width:"100%",height:"auto"},object:{width:"100%",height:"auto"},pdf:{width:"100%",height:"160px"},other:{width:"100%",height:"160px"}},previewZoomSettings:{image:{width:"auto",height:"auto","max-width":"100%","max-height":"100%"},html:N,text:N,office:{width:"100%",height:"100%","max-width":"100%","min-height":"480px"},gdocs:{width:"100%",height:"100%","max-width":"100%","min-height":"480px"},video:{width:"auto",height:"100%","max-width":"100%"},audio:{width:"100%",height:"30px"},flash:{width:"auto",height:"480px"},object:{width:"auto",height:"100%","max-width":"100%","min-height":"480px"},pdf:N,other:{width:"auto",height:"100%","min-height":"480px"}},mimeTypeAliases:{"video/quicktime":"video/mp4"},fileTypeSettings:{image:function(e,t){return r.compare(e,"image.*")&&!r.compare(e,/(tiff?|wmf)$/i)||r.compare(t,/\.(gif|png|jpe?g)$/i)},html:function(e,t){return r.compare(e,"text/html")||r.compare(t,/\.(htm|html)$/i)},office:function(e,t){return r.compare(e,/(word|excel|powerpoint|office)$/i)||r.compare(t,/\.(docx?|xlsx?|pptx?|pps|potx?)$/i)},gdocs:function(e,t){return r.compare(e,/(word|excel|powerpoint|office|iwork-pages|tiff?)$/i)||r.compare(t,/\.(docx?|xlsx?|pptx?|pps|potx?|rtf|ods|odt|pages|ai|dxf|ttf|tiff?|wmf|e?ps)$/i)},text:function(e,t){return r.compare(e,"text.*")||r.compare(t,/\.(xml|javascript)$/i)||r.compare(t,/\.(txt|md|nfo|ini|json|php|js|css)$/i)},video:function(e,t){return r.compare(e,"video.*")&&(r.compare(e,/(ogg|mp4|mp?g|mov|webm|3gp)$/i)||r.compare(t,/\.(og?|mp4|webm|mp?g|mov|3gp)$/i))},audio:function(e,t){return r.compare(e,"audio.*")&&(r.compare(t,/(ogg|mp3|mp?g|wav)$/i)||r.compare(t,/\.(og?|mp3|mp?g|wav)$/i))},flash:function(e,t){return r.compare(e,"application/x-shockwave-flash",!0)||r.compare(t,/\.(swf)$/i)},pdf:function(e,t){return r.compare(e,"application/pdf",!0)||r.compare(t,/\.(pdf)$/i)},object:function(){return!0},other:function(){return!0}},fileActionSettings:{showRemove:!0,showUpload:!0,showDownload:!0,showZoom:!0,showDrag:!0,removeIcon:'<i class="bi-trash"></i>',removeClass:K,removeErrorClass:"btn btn-sm btn-kv btn-danger",removeTitle:"Remove file",uploadIcon:'<i class="bi-upload"></i>',uploadClass:K,uploadTitle:"Upload file",uploadRetryIcon:'<i class="bi-arrow-clockwise"></i>',uploadRetryTitle:"Retry upload",downloadIcon:'<i class="bi-download"></i>',downloadClass:K,downloadTitle:"Download file",zoomIcon:'<i class="bi-zoom-in"></i>',zoomClass:K,zoomTitle:"View Details",dragIcon:'<i class="bi-arrows-move"></i>',dragClass:"text-primary",dragTitle:"Move / Rearrange",dragSettings:{},indicatorNew:'<i class="bi-plus-lg text-warning"></i>',indicatorSuccess:'<i class="bi-check-lg text-success"></i>',indicatorError:'<i class="bi-exclamation-lg text-danger"></i>',indicatorLoading:'<i class="bi-hourglass-bottom text-muted"></i>',indicatorPaused:'<i class="bi-pause-fill text-primary"></i>',indicatorNewTitle:"Not uploaded yet",indicatorSuccessTitle:"Uploaded",indicatorErrorTitle:"Upload Error",indicatorLoadingTitle:"Uploading …",indicatorPausedTitle:"Upload Paused"}},e.each(V.defaults,function(t,i){return"allowedPreviewTypes"===t?void(V.allowedPreviewTypes===a&&(V.allowedPreviewTypes=i)):void(V[t]=e.extend(!0,{},i,V[t]))}),V._initPreviewTemplates()},_initPreviewTemplates:function(){var t,i=this,a=i.previewMarkupTags,n=a.tagAfter;e.each(i.previewContentTemplates,function(e,o){r.isEmpty(i.previewTemplates[e])&&(t=a.tagBefore2,"generic"!==e&&"image"!==e||(t=a.tagBefore1),i._isPdfRendered()&&"pdf"===e&&(t=t.replace("kv-file-content","kv-file-content kv-pdf-rendered")),i.previewTemplates[e]=t+o+n)})},_initPreviewCache:function(){var t=this;t.previewCache={data:{},init:function(){var e=t.initialPreview;e.length>0&&!r.isArray(e)&&(e=e.split(t.initialPreviewDelimiter)),t.previewCache.data={content:e,config:t.initialPreviewConfig,tags:t.initialPreviewThumbTags}},count:function(e){if(!t.previewCache.data||!t.previewCache.data.content)return 0;if(e){var i=t.previewCache.data.content.filter(function(e){return null!==e});return i.length}return t.previewCache.data.content.length},get:function(e,i){var n,o,s,l,d,c,u,p=r.INIT_FLAG+e,f=t.previewCache.data,g=f.config[e],m=f.content[e],h=r.ifSet("previewAsData",g,t.initialPreviewAsData),v=g?{title:g.title||null,alt:g.alt||null}:{title:null,alt:null},b=function(e,i,a,n,o,s,l,d){var c=" file-preview-initial "+r.SORT_CSS+(l?" "+l:""),u=t.previewInitId+"-"+s,p=g&&g.fileId||u;return t._generatePreviewTemplate(e,i,a,n,u,p,!1,null,c,o,s,d,v,g&&g.zoomData||i)};return m&&m.length?(i=i===a?!0:i,s=r.ifSet("type",g,t.initialPreviewFileType||"generic"),d=r.ifSet("filename",g,r.ifSet("caption",g)),c=r.ifSet("filetype",g,s),l=t.previewCache.footer(e,i,g&&g.size||null),u=r.ifSet("frameClass",g),n=h?b(s,m,d,c,l,p,u):b("generic",m,d,c,l,p,u,s).setTokens({content:f.content[e]}),f.tags.length&&f.tags[e]&&(n=r.replaceTags(n,f.tags[e])),r.isEmpty(g)||r.isEmpty(g.frameAttr)||(o=r.createElement(n),o.find(".file-preview-initial").attr(g.frameAttr),n=o.html(),o.remove()),n):""},clean:function(e){e.content=r.cleanArray(e.content),e.config=r.cleanArray(e.config),e.tags=r.cleanArray(e.tags),t.previewCache.data=e},add:function(e,i,a,n){var o,s=t.previewCache.data;return e&&e.length?(o=e.length-1,r.isArray(e)||(e=e.split(t.initialPreviewDelimiter)),n&&s.content?(o=s.content.push(e[0])-1,s.config[o]=i,s.tags[o]=a):(s.content=e,s.config=i,s.tags=a),t.previewCache.clean(s),o):0},set:function(e,i,n,o){var s,l,d=t.previewCache.data;if(e&&e.length&&(r.isArray(e)||(e=e.split(t.initialPreviewDelimiter)),l=e.filter(function(e){return null!==e}),l.length)){if(d.content===a&&(d.content=[]),d.config===a&&(d.config=[]),d.tags===a&&(d.tags=[]),o){for(s=0;s<e.length;s++)e[s]&&d.content.push(e[s]);for(s=0;s<i.length;s++)i[s]&&d.config.push(i[s]);for(s=0;s<n.length;s++)n[s]&&d.tags.push(n[s])}else d.content=e,d.config=i,d.tags=n;t.previewCache.clean(d)}},unset:function(i){var a=t.previewCache.count(),n=t.reversePreviewOrder;if(a){if(1===a)return t.previewCache.data.content=[],t.previewCache.data.config=[],t.previewCache.data.tags=[],t.initialPreview=[],t.initialPreviewConfig=[],void(t.initialPreviewThumbTags=[]);t.previewCache.data.content=r.spliceArray(t.previewCache.data.content,i,n),t.previewCache.data.config=r.spliceArray(t.previewCache.data.config,i,n),t.previewCache.data.tags=r.spliceArray(t.previewCache.data.tags,i,n);var o=e.extend(!0,{},t.previewCache.data);t.previewCache.clean(o)}},out:function(){var e,i,a,r="",n=t.previewCache.count();if(0===n)return{content:"",caption:""};for(i=0;n>i;i++)a=t.previewCache.get(i),r=t.reversePreviewOrder?a+r:r+a;return e=t._getMsgSelected(n),{content:r,caption:e}},footer:function(e,i,n){var o=t.previewCache.data||{};if(r.isEmpty(o.content))return"";(r.isEmpty(o.config)||r.isEmpty(o.config[e]))&&(o.config[e]={}),i=i===a?!0:i;var s,l=o.config[e],d=r.ifSet("caption",l),c=r.ifSet("width",l,"auto"),u=r.ifSet("url",l,!1),p=r.ifSet("key",l,null),f=r.ifSet("fileId",l,null),g=t.fileActionSettings,m=t.initialPreviewShowDelete||!1,h=t.initialPreviewDownloadUrl?t.initialPreviewDownloadUrl+"?key="+p+(f?"&fileId="+f:""):"",v=l.downloadUrl||h,b=l.filename||l.caption||"",w=!!v,_=r.ifSet("showRemove",l,m),C=r.ifSet("showDownload",l,r.ifSet("showDownload",g,w)),x=r.ifSet("showZoom",l,r.ifSet("showZoom",g,!0)),y=r.ifSet("showDrag",l,r.ifSet("showDrag",g,!0)),T=u===!1&&i;return C=C&&l.downloadUrl!==!1&&!!v,s=t._renderFileActions(l,!1,C,_,x,y,T,u,p,!0,v,b),t._getLayoutTemplate("footer").setTokens({progress:t._renderThumbProgress(),actions:s,caption:d,size:t._getSize(n),width:c,indicator:""})}},t.previewCache.init()},_isPdfRendered:function(){var e=this,t=e.usePdfRenderer,i="function"==typeof t?t():!!t;return i&&e.pdfRendererUrl},_handler:function(e,t,i){var a=this,r=a.namespace,n=t.split(" ").join(r+" ")+r;e&&e.length&&e.off(n).on(n,i)},_encodeURI:function(e){var t=this;return t.encodeUrl?encodeURI(e):e},_log:function(e,i){var a=this,r=a.$element.attr("id");a.showConsoleLogs&&(r&&(e='"'+r+'": '+e),e="bootstrap-fileinput: "+e,"object"==typeof i&&(e=e.setTokens(i)),t.console&&"undefined"!=typeof t.console.log?t.console.log(e):t.alert(e))},_validate:function(){var e=this,t="file"===e.$element.attr("type");return t||e._log(r.logMessages.badInputType),t},_errorsExist:function(){var t,i=this,a=i.$errorContainer.find("li");return a.length?!0:(t=r.createElement(i.$errorContainer.html()),t.find(".kv-error-close").remove(),t.find("ul").remove(),!!e.trim(t.text()).length)},_errorHandler:function(e,t){var i=this,a=e.target.error,r=function(e){i._showError(e.replace("{name}",t))};r(a.code===a.NOT_FOUND_ERR?i.msgFileNotFound:a.code===a.SECURITY_ERR?i.msgFileSecured:a.code===a.NOT_READABLE_ERR?i.msgFileNotReadable:a.code===a.ABORT_ERR?i.msgFilePreviewAborted:i.msgFilePreviewError)},_addError:function(e){var t=this,i=t.$errorContainer;e&&i.length&&(r.setHtml(i,t.errorCloseButton+e),t._handler(i.find(".kv-error-close"),"click",function(){setTimeout(function(){t.showPreview&&!t.getFrames().length&&t.clear(),i.fadeOut("slow")},t.processDelay)}))},_setValidationError:function(e){var t=this;e=(e?e+" ":"")+"has-error",t.$container.removeClass(e).addClass("has-error"),r.addCss(t.$caption,"is-invalid")},_resetErrors:function(e){var t=this,i=t.$errorContainer,a=t.resumableUploadOptions.retainErrorHistory;t.isPersistentError||t.enableResumableUpload&&a||(t.isError=!1,t.$container.removeClass("has-error"),t.$caption.removeClass("is-invalid is-valid file-processing"),i.html(""),e?i.fadeOut("slow"):i.hide())},_showFolderError:function(e){var t,i=this,a=i.$errorContainer;e&&(i.isAjaxUpload||i._clearFileInput(),t=i.msgFoldersNotAllowed.replace("{n}",e),i._addError(t),i._setValidationError(),a.fadeIn(i.fadeDelay),i._raise("filefoldererror",[e,t]))},_showFileError:function(e,t,i){var a=this,r=a.$errorContainer,n=i||"fileuploaderror",o=t&&t.fileId||"",s=t&&t.id?'<li data-thumb-id="'+t.id+'" data-file-id="'+o+'">'+e+"</li>":"<li>"+e+"</li>";return 0===r.find("ul").length?a._addError("<ul>"+s+"</ul>"):r.find("ul").append(s),r.fadeIn(a.fadeDelay),a._raise(n,[t,e]),a._setValidationError("file-input-new"),!0},_showError:function(e,t,i){var a=this,r=a.$errorContainer,n=i||"fileerror";return t=t||{},t.reader=a.reader,a._addError(e),r.fadeIn(a.fadeDelay),a._raise(n,[t,e]),a.isAjaxUpload||a._clearFileInput(),a._setValidationError("file-input-new"),a.$btnUpload.attr("disabled",!0),!0},_noFilesError:function(e){var t=this,i=t.minFileCount>1?t.filePlural:t.fileSingle,a=t.msgFilesTooLess.replace("{n}",t.minFileCount).replace("{files}",i),r=t.$errorContainer;a="<li>"+a+"</li>",0===r.find("ul").length?t._addError("<ul>"+a+"</ul>"):r.find("ul").append(a),t.isError=!0,t._updateFileDetails(0),r.fadeIn(t.fadeDelay),t._raise("fileerror",[e,a]),t._clearFileInput(),t._setValidationError()},_parseError:function(t,i,a,r){var n,o,s,l=this,d=e.trim(a+"");return o=i.responseJSON&&i.responseJSON.error?i.responseJSON.error.toString():"",s=o?o:i.responseText,l.cancelling&&l.msgUploadAborted&&(d=l.msgUploadAborted),l.showAjaxErrorDetails&&s&&(o?d=e.trim(o+""):(s=e.trim(s.replace(/\n\s*\n/g,"\n")),n=s.length?"<pre>"+s+"</pre>":"",d+=d?n:s)),d||(d=l.msgAjaxError.replace("{operation}",t)),l.cancelling=!1,r?"<b>"+r+": </b>"+d:d},_parseFileType:function(e,t){var i,a,n,o,s=this,l=s.allowedPreviewTypes||[];if("application/text-plain"===e)return"text";for(o=0;o<l.length;o++)if(n=l[o],i=s.fileTypeSettings[n],a=i(e,t)?n:"",!r.isEmpty(a))return a;return"other"},_getPreviewIcon:function(t){var i,a=this,r=null;return t&&t.indexOf(".")>-1&&(i=t.split(".").pop(),a.previewFileIconSettings&&(r=a.previewFileIconSettings[i]||a.previewFileIconSettings[i.toLowerCase()]||null),a.previewFileExtSettings&&e.each(a.previewFileExtSettings,function(e,t){return a.previewFileIconSettings[e]&&t(i)?void(r=a.previewFileIconSettings[e]):void 0})),r||a.previewFileIcon},_parseFilePreviewIcon:function(e,t){var i=this,a=i._getPreviewIcon(t),r=e;return r.indexOf("{previewFileIcon}")>-1&&(r=r.setTokens({previewFileIconClass:i.previewFileIconClass,previewFileIcon:a})),r},_raise:function(t,i){var r=this,n=e.Event(t);i!==a?r.$element.trigger(n,i):r.$element.trigger(n);var o=n.result,s=o===!1;if(n.isDefaultPrevented()||s)return!1;if("filebatchpreupload"===n.type&&(o||s))return r.ajaxAborted=o,!1;switch(t){case"filebatchuploadcomplete":case"filebatchuploadsuccess":case"fileuploaded":case"fileclear":case"filecleared":case"filereset":case"fileerror":case"filefoldererror":case"fileuploaderror":case"filebatchuploaderror":case"filedeleteerror":case"filecustomerror":case"filesuccessremove":break;default:r.ajaxAborted||(r.ajaxAborted=o)}return!0},_listenFullScreen:function(e){var t,i,a=this,r=a.$modal;r&&r.length&&(t=r&&r.find(".btn-kv-fullscreen"),i=r&&r.find(".btn-kv-borderless"),t.length&&i.length&&(t.removeClass("active").attr("aria-pressed","false"),i.removeClass("active").attr("aria-pressed","false"),e?t.addClass("active").attr("aria-pressed","true"):i.addClass("active").attr("aria-pressed","true"),r.hasClass("file-zoom-fullscreen")?a._maximizeZoomDialog():e?a._maximizeZoomDialog():i.removeClass("active").attr("aria-pressed","false")))},_listen:function(){var a,n=this,o=n.$element,s=n.$form,l=n.$container;n._handler(o,"click",function(e){n._initFileSelected(),o.hasClass("file-no-browse")&&(o.data("zoneClicked")?o.data("zoneClicked",!1):e.preventDefault())}),n._handler(o,"change",e.proxy(n._change,n)),n._handler(n.$caption,"paste",e.proxy(n.paste,n)),n.showBrowse&&(n._handler(n.$btnFile,"click",e.proxy(n._browse,n)),n._handler(n.$btnFile,"keypress",function(e){var t=e.keyCode||e.which;13===t&&(o.trigger("click"),n._browse(e))})),n._handler(l.find(".fileinput-remove:not([disabled])"),"click",e.proxy(n.clear,n)),n._handler(l.find(".fileinput-cancel"),"click",e.proxy(n.cancel,n)),n._handler(l.find(".fileinput-pause"),"click",e.proxy(n.pause,n)),n._initDragDrop(),n._handler(s,"reset",e.proxy(n.clear,n)),n.isAjaxUpload||n._handler(s,"submit",e.proxy(n._submitForm,n)),n._handler(n.$container.find(".fileinput-upload"),"click",e.proxy(n._uploadClick,n)),n._handler(e(t),"resize",function(){n._listenFullScreen(screen.width===t.innerWidth&&screen.height===t.innerHeight)}),a="webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange",n._handler(e(i),a,function(){n._listenFullScreen(r.checkFullScreen())}),n.$caption.on("focus",function(){n.$captionContainer.focus()}),n._autoFitContent(),n._initClickable(),n._refreshPreview()},_autoFitContent:function(){var a,r=t.innerWidth||i.documentElement.clientWidth||i.body.clientWidth,n=this,o=400>r?n.previewSettingsSmall||n.defaults.previewSettingsSmall:n.previewSettings||n.defaults.previewSettings;e.each(o,function(e,t){a=".file-preview-frame .file-preview-"+e,n.$preview.find(a+".kv-preview-data,"+a+" .kv-preview-data").css(t)})},_scanDroppedItems:function(e,t,i){i=i||"";var a,n,o,s=this,l=function(e){s._log(r.logMessages.badDroppedFiles),s._log(e)};e.isFile?e.file(function(e){i&&(e.newPath=i+e.name),t.push(e)},l):e.isDirectory&&(n=e.createReader(),(o=function(){n.readEntries(function(r){if(r&&r.length>0){for(a=0;a<r.length;a++)s._scanDroppedItems(r[a],t,i+e.name+"/");o()}return null},l)})())},_initDragDrop:function(){var t=this,a=t.$dropZone;t.dropZoneEnabled&&t.showPreview&&(t._handler(a,"dragenter dragover",e.proxy(t._zoneDragEnter,t)),t._handler(a,"dragleave",e.proxy(t._zoneDragLeave,t)),t._handler(a,"drop",e.proxy(t._zoneDrop,t)),t._handler(e(i),"dragenter dragover drop",t._zoneDragDropInit))},_zoneDragDropInit:function(e){e.stopPropagation(),e.preventDefault()},_zoneDragEnter:function(t){var i=this,a=t.originalEvent.dataTransfer,n=e.inArray("Files",a.types)>-1;return i._zoneDragDropInit(t),i.isDisabled||!n?(a.effectAllowed="none",void(a.dropEffect="none")):(a.dropEffect="copy",void(i._raise("fileDragEnter",{sourceEvent:t,files:a.types.Files})&&r.addCss(i.$dropZone,"file-highlighted")))},_zoneDragLeave:function(e){var t=this;t._zoneDragDropInit(e),t.isDisabled||t._raise("fileDragLeave",{sourceEvent:e})&&t.$dropZone.removeClass("file-highlighted")},_dropFiles:function(e,t){var i=this,a=i.$element;i.isAjaxUpload?i._change(e,t):(i.changeTriggered=!0,a.get(0).files=t,setTimeout(function(){i.changeTriggered=!1,a.trigger("change"+i.namespace)},i.processDelay)),i.$dropZone.removeClass("file-highlighted")},_zoneDrop:function(e){var t,i=this,a=(i.$element,e.originalEvent.dataTransfer),n=a.files,o=a.items,s=r.getDragDropFolders(o);if(e.preventDefault(),!i.isDisabled&&!r.isEmpty(n)&&i._raise("fileDragDrop",{sourceEvent:e,files:n}))if(s>0){if(!i.isAjaxUpload)return void i._showFolderError(s);for(n=[],t=0;t<o.length;t++){var l=o[t].webkitGetAsEntry();l&&i._scanDroppedItems(l,n)}setTimeout(function(){i._dropFiles(e,n)},500)}else i._dropFiles(e,n)},_uploadClick:function(e){var t,i=this,a=i.$container.find(".fileinput-upload"),n=!a.hasClass("disabled")&&r.isEmpty(a.attr("disabled"));if(!e||!e.isDefaultPrevented()){if(!i.isAjaxUpload)return void(n&&"submit"!==a.attr("type")&&(t=a.closest("form"),t.length&&t.trigger("submit"),e.preventDefault()));e.preventDefault(),n&&i.upload()}},_submitForm:function(){var e=this;return e._isFileSelectionValid()&&!e._abort({})},_clearPreview:function(){var t=this,i=t.showUploadedThumbs?t.getFrames(":not(.file-preview-success)"):t.getFrames();i.each(function(){var t=e(this);t.remove()}),t.getFrames().length&&t.showPreview||t._resetUpload(),t._validateDefaultPreview()},_initSortable:function(){var i,a,n,o,s=this,l=s.$preview,d="."+r.SORT_CSS,c=e("body"),u=e("html"),p=s.reversePreviewOrder,f=t.Sortable;f&&0!==l.find(d).length&&(a=c.length?c:u.length?u:s.$container,n=function(){a.addClass("file-grabbing")},o=function(){a.removeClass("file-grabbing")},i={handle:".drag-handle-init",dataIdAttr:"data-fileid",animation:600,draggable:d,scroll:!1,forceFallback:!0,onChoose:n,onStart:n,onUnchoose:o,onEnd:o,onSort:function(t){var i,a=t.oldIndex,n=t.newIndex,o=0,l=s.initialPreviewConfig.length,d=l>0&&n>=l,c=e(t.item);d&&(n=l-1),s.initialPreview=r.moveArray(s.initialPreview,a,n,p),s.initialPreviewConfig=r.moveArray(s.initialPreviewConfig,a,n,p),s.previewCache.init(),s.getFrames(".file-preview-initial").each(function(){e(this).attr("data-fileindex",r.INIT_FLAG+o),o++}),d&&(i=s.getFrames(":not(.file-preview-initial):first"),i.length&&c.slideUp(function(){c.insertBefore(i).slideDown()})),s._raise("filesorted",{previewId:c.attr("id"),oldIndex:a,newIndex:n,stack:s.initialPreviewConfig})}},e.extend(!0,i,s.fileActionSettings.dragSettings),s.sortable&&s.sortable.destroy(),s.sortable=f.create(l[0],i))},_setPreviewContent:function(e){var t=this;r.setHtml(t.$preview,e),t._autoFitContent()},_initPreviewImageOrientations:function(){var t=this,i=0,a=t.canOrientImage;(t.autoOrientImageInitial||a)&&t.getFrames(".file-preview-initial").each(function(){var r,n,o,s=e(this),l=t.initialPreviewConfig[i];l&&l.exif&&l.exif.Orientation&&(o=s.attr("id"),r=s.find(">.kv-file-content img"),n=t._getZoom(o," >.kv-file-content img"),a?r.css("image-orientation",t.autoOrientImageInitial?"from-image":"none"):t.setImageOrientation(r,n,l.exif.Orientation,s)),i++})},_initPreview:function(e){var t,i=this,a=i.initialCaption||"";return i.previewCache.count(!0)?(t=i.previewCache.out(),a=e&&i.initialCaption?i.initialCaption:t.caption,i._setPreviewContent(t.content),i._setInitThumbAttr(),i._setCaption(a),i._initSortable(),r.isEmpty(t.content)||i.$container.removeClass("file-input-new"),void i._initPreviewImageOrientations()):(i._clearPreview(),void(e?i._setCaption(a):i._initCaption()))},_getZoomButton:function(e){var t=this,i=t.previewZoomButtonIcons[e],a=t.previewZoomButtonClasses[e],n=' title="'+(t.previewZoomButtonTitles[e]||"")+'" ',o=r.isBs(5)?"bs-":"",s=n+("close"===e?" data-"+o+'dismiss="modal" aria-hidden="true"':"");return"fullscreen"!==e&&"borderless"!==e&&"toggleheader"!==e||(s+=' data-toggle="button" aria-pressed="false" autocomplete="off"'),'<button type="button" class="'+a+" btn-kv-"+e+'"'+s+">"+i+"</button>"},_getModalContent:function(){var e=this;return e._getLayoutTemplate("modal").setTokens({rtl:e.rtl?" kv-rtl":"",zoomFrameClass:e.frameClass,prev:e._getZoomButton("prev"),next:e._getZoomButton("next"),toggleheader:e._getZoomButton("toggleheader"),fullscreen:e._getZoomButton("fullscreen"),borderless:e._getZoomButton("borderless"),close:e._getZoomButton("close")})},_listenModalEvent:function(e){var t=this,i=t.$modal,a=function(e){return{sourceEvent:e,previewId:i.data("previewId"),modal:i}};i.on(e+".bs.modal",function(n){if("bs.modal"===n.namespace){var o=i.find(".btn-fullscreen"),s=i.find(".btn-borderless");i.data("fileinputPluginId")===t.$element.attr("id")&&t._raise("filezoom"+e,a(n)),"shown"===e&&(s.removeClass("active").attr("aria-pressed","false"),o.removeClass("active").attr("aria-pressed","false"),i.hasClass("file-zoom-fullscreen")&&(t._maximizeZoomDialog(),r.checkFullScreen()?o.addClass("active").attr("aria-pressed","true"):s.addClass("active").attr("aria-pressed","true")))}})},_initZoom:function(){var t,i=this,a=i._getLayoutTemplate("modalMain"),n="#"+r.MODAL_ID;a=i._setTabIndex("modal",a),i.showPreview&&(i.$modal=e(n),i.$modal&&i.$modal.length||(t=r.createElement(r.cspBuffer.stash(a)).insertAfter(i.$container),i.$modal=e(n).insertBefore(t),r.cspBuffer.apply(i.$modal),t.remove()),r.initModal(i.$modal),i.$modal.html(r.cspBuffer.stash(i._getModalContent())),r.cspBuffer.apply(i.$modal),e.each(r.MODAL_EVENTS,function(e,t){i._listenModalEvent(t)}))},_initZoomButtons:function(){var t,i,a=this,r=a.$modal.data("previewId")||"",n=a.getFrames().toArray(),o=n.length,s=a.$modal.find(".btn-kv-prev"),l=a.$modal.find(".btn-kv-next");return n.length<2?(s.hide(),void l.hide()):(s.show(),l.show(),void(o&&(t=e(n[0]),i=e(n[o-1]),s.removeAttr("disabled"),l.removeAttr("disabled"),a.reversePreviewOrder&&([s,l]=[l,s]),t.length&&t.attr("id")===r&&s.attr("disabled",!0),i.length&&i.attr("id")===r&&l.attr("disabled",!0))))},_maximizeZoomDialog:function(){var i=this,a=i.$modal,r=a.find(".modal-header:visible"),n=a.find(".modal-footer:visible"),o=a.find(".kv-zoom-body"),s=e(t).height(),l=0;a.addClass("file-zoom-fullscreen"),r&&r.length&&(s-=r.outerHeight(!0)),n&&n.length&&(s-=n.outerHeight(!0)),o&&o.length&&(l=o.outerHeight(!0)-o.height(),s-=l),a.find(".kv-zoom-body").height(s)},_resizeZoomDialog:function(e){var t=this,i=t.$modal,a=i.find(".btn-kv-fullscreen"),n=i.find(".btn-kv-borderless");if(i.hasClass("file-zoom-fullscreen"))r.toggleFullScreen(!1),e?a.hasClass("active")||(i.removeClass("file-zoom-fullscreen"),t._resizeZoomDialog(!0),n.hasClass("active")&&n.removeClass("active").attr("aria-pressed","false")):a.hasClass("active")?a.removeClass("active").attr("aria-pressed","false"):(i.removeClass("file-zoom-fullscreen"),t.$modal.find(".kv-zoom-body").css("height",t.zoomModalHeight));else{if(!e)return void t._maximizeZoomDialog();r.toggleFullScreen(!0)}i.focus()},_setZoomContent:function(t,i){var a,n,o,s,l,d,c,u,p,f,g,m,h=this,v=t.attr("id"),b=h._getZoom(v),w=h.$modal,_=w.find(".btn-kv-fullscreen"),C=w.find(".btn-kv-borderless"),x=w.find(".btn-kv-toggleheader"),y=t.data("zoom");y&&(y=decodeURIComponent(y),m=b.html().replace(r.ZOOM_VAR,"").setTokens({zoomData:y}),b.html(m),t.data("zoom",""),b.attr("data-zoom",y)),n=b.attr("data-template")||"generic",a=b.find(".kv-file-content"),o=a.length?'<span class="kv-spacer"></span>\n'+a.html():"",f=t.data("caption")||h.msgZoomModalHeading,g=t.data("size")||"",u=t.data("description")||"",w.find(".kv-zoom-caption").attr("title",f).html(f),w.find(".kv-zoom-size").html(g),p=w.find(".kv-zoom-description").hide(),u&&(h.showDescriptionClose&&(u=h._getLayoutTemplate("descriptionClose").setTokens({closeIcon:h.previewZoomButtonIcons.close})+"</button>"+u),p.show().html(u),h.showDescriptionClose&&h._handler(w.find(".kv-desc-hide"),"click",function(){e(this).parent().fadeOut("fast",function(){w.focus()})})),s=w.find(".kv-zoom-body"),w.removeClass("kv-single-content"),i?(c=s.addClass("file-thumb-loading").clone().insertAfter(s),r.setHtml(s,o).hide(),c.fadeOut("fast",function(){s.fadeIn("fast",function(){s.removeClass("file-thumb-loading")}),c.remove()})):r.setHtml(s,o),d=h.previewZoomSettings[n],d&&(l=s.find(".kv-preview-data"),r.addCss(l,"file-zoom-detail"),e.each(d,function(e,t){l.css(e,t),(l.attr("width")&&"width"===e||l.attr("height")&&"height"===e)&&l.removeAttr(e)})),w.data("previewId",v),h._handler(w.find(".btn-kv-prev"),"click",function(){h._zoomSlideShow("prev",v)}),h._handler(w.find(".btn-kv-next"),"click",function(){h._zoomSlideShow("next",v)}),h._handler(_,"click",function(){h._resizeZoomDialog(!0)}),h._handler(C,"click",function(){h._resizeZoomDialog(!1)}),h._handler(x,"click",function(){var e,t=w.find(".modal-header"),i=w.find(".floating-buttons"),a=t.find(".kv-zoom-actions"),r=function(e){var i=h.$modal.find(".kv-zoom-body"),a=h.zoomModalHeight;w.hasClass("file-zoom-fullscreen")&&(a=i.outerHeight(!0),e||(a-=t.outerHeight(!0))),i.css("height",e?a+e:a)};t.is(":visible")?(e=t.outerHeight(!0),t.slideUp("slow",function(){a.find(".btn").appendTo(i),r(e)})):(i.find(".btn").appendTo(a),t.slideDown("slow",function(){r()})),w.focus()}),h._handler(w,"keydown",function(t){var i,a,r=t.which||t.keyCode,n=h.processDelay+1,o=e(this).find(".btn-kv-prev"),s=e(this).find(".btn-kv-next"),l=e(this).data("previewId");[i,a]=h.rtl?[39,37]:[37,39],e.each({prev:[o,i],next:[s,a]},function(e,t){var i=t[0],a=t[1];r===a&&i.length&&(w.focus(),i.attr("disabled")||(i.focus(),h._zoomSlideShow(e,l),setTimeout(function(){i.attr("disabled")&&w.focus()},n)))})})},_showModal:function(e){var t=this,i=t.$modal;e&&e.length&&(r.initModal(i),r.setHtml(i,t._getModalContent()),t._setZoomContent(e),i.data({backdrop:!1}),i.modal("show"),t._initZoomButtons())},_zoomPreview:function(e){var t,i=this;if(!e.length)throw"Cannot zoom to detailed preview!";t=e.closest(r.FRAMES),i._showModal(t)},_zoomSlideShow:function(t,i){var a,r,n,o,s=this,l=s.$modal.find(".kv-zoom-actions .btn-kv-"+t),d=s.getFrames().toArray(),c=[],u=d.length;if(s.reversePreviewOrder&&(t="prev"===t?"next":"prev"),!l.attr("disabled")){for(r=0;u>r;r++)n=e(d[r]),n&&n.length&&n.find(".kv-file-zoom:visible").length&&c.push(d[r]);for(u=c.length,r=0;u>r;r++)if(e(c[r]).attr("id")===i){o="prev"===t?r-1:r+1;break}0>o||o>=u||!c[o]||(a=e(c[o]),a.length&&s._setZoomContent(a,t),s._initZoomButtons(),s._raise("filezoom"+t,{previewId:i,modal:s.$modal}))}},_initZoomButton:function(){var t=this;t.$preview.find(".kv-file-zoom").each(function(){var i=e(this);t._handler(i,"click",function(){t._zoomPreview(i)})})},_inputFileCount:function(){return this.$element[0].files.length},_refreshPreview:function(){var t,i=this;(i._inputFileCount()||i.isAjaxUpload)&&i.showPreview&&i.isPreviewable&&(i.isAjaxUpload&&i.fileManager.count()>0?(t=e.extend(!0,{},i.getFileList()),i.fileManager.clear(),i._clearFileInput()):t=i.$element[0].files,
- t&&t.length&&(i.readFiles(t),i._setFileDropZoneTitle()))},_clearObjects:function(t){t.find("video audio").each(function(){this.pause(),e(this).remove()}),t.find("img object div").each(function(){e(this).remove()})},_clearFileInput:function(){var t,a,r,n=this,o=n.$element;n._inputFileCount()&&(t=o.closest("form"),a=e(i.createElement("form")),r=e(i.createElement("div")),o.before(r),t.length?t.after(a):r.after(a),a.append(o).trigger("reset"),r.before(o).remove(),a.remove())},_resetUpload:function(){var e=this;e.uploadStartTime=r.now(),e.uploadCache=[],e.$btnUpload.removeAttr("disabled"),e._setProgress(0),e._hideProgress(),e._resetErrors(!1),e._initAjax(),e.fileManager.clearImages(),e._resetCanvas(),e.overwriteInitial&&(e.initialPreview=[],e.initialPreviewConfig=[],e.initialPreviewThumbTags=[],e.previewCache.data={content:[],config:[],tags:[]})},_resetCanvas:function(){var e=this;e.imageCanvas&&e.imageCanvasContext&&e.imageCanvasContext.clearRect(0,0,e.imageCanvas.width,e.imageCanvas.height)},_hasInitialPreview:function(){var e=this;return!e.overwriteInitial&&e.previewCache.count(!0)},_resetPreview:function(){var t,i,a,n=this,o=n.showUploadedThumbs,s=!n.removeFromPreviewOnError,l=(o||s)&&n.isDuplicateError;n.previewCache.count(!0)?(t=n.previewCache.out(),l&&(a=r.createElement("").insertAfter(n.$container),n.getFrames().each(function(){var t=e(this);(o&&t.hasClass("file-preview-success")||s&&t.hasClass("file-preview-error"))&&a.append(t)})),n._setPreviewContent(t.content),n._setInitThumbAttr(),i=n.initialCaption?n.initialCaption:t.caption,n._setCaption(i),l&&(a.contents().appendTo(n.$preview),a.remove())):(n._clearPreview(),n._initCaption()),n.showPreview&&(n._initZoom(),n._initSortable()),n.isDuplicateError=!1},_clearDefaultPreview:function(){var e=this;e.$preview.find(".file-default-preview").remove()},_validateDefaultPreview:function(){var e=this;e.showPreview&&!r.isEmpty(e.defaultPreviewContent)&&(e._setPreviewContent('<div class="file-default-preview">'+e.defaultPreviewContent+"</div>"),e.$container.removeClass("file-input-new"),e._initClickable())},_resetPreviewThumbs:function(e){var t,i=this;return e?(i._clearPreview(),void i.clearFileStack()):void(i._hasInitialPreview()?(t=i.previewCache.out(),i._setPreviewContent(t.content),i._setInitThumbAttr(),i._setCaption(t.caption),i._initPreviewActions()):i._clearPreview())},_getLayoutTemplate:function(e){var t=this,i=t.layoutTemplates[e];return r.isEmpty(t.customLayoutTags)?i:r.replaceTags(i,t.customLayoutTags)},_getPreviewTemplate:function(e){var t=this,i=t.previewTemplates,a=i[e]||i.other;return r.isEmpty(t.customPreviewTags)?a:r.replaceTags(a,t.customPreviewTags)},_getOutData:function(e,t,i,a){var r=this;return t=t||{},i=i||{},a=a||r.fileManager.list(),{formdata:e,files:a,filenames:r.filenames,filescount:r.getFilesCount(),extra:r._getExtraData(),response:i,reader:r.reader,jqXHR:t}},_getMsgSelected:function(e,t){var i=this,a=1===e?i.fileSingle:i.filePlural;return e>0?i.msgSelected.replace("{n}",e).replace("{files}",a):t?i.msgProcessing:i.msgNoFilesSelected},_getFrame:function(e,t){var i=this,a=r.getFrameElement(i.$preview,e);return!i.showPreview||t||a.length||i._log(r.logMessages.invalidThumb,{id:e}),a},_getZoom:function(e,t){var i=this,a=r.getZoomElement(i.$preview,e,t);return i.showPreview&&!a.length&&i._log(r.logMessages.invalidThumb,{id:e}),a},_getThumbs:function(e){return e=e||"",this.getFrames(":not(.file-preview-initial)"+e)},_getThumbId:function(e){var t=this;return t.previewInitId+"-"+e},_getExtraData:function(e,t){var i=this,a=i.uploadExtraData;return"function"==typeof i.uploadExtraData&&(a=i.uploadExtraData(e,t)),a},_initXhr:function(e,t){var i=this,a=i.fileManager,n=function(e){var n=0,o=e.total,s=e.loaded||e.position,l=a.getUploadStats(t,s,o);e.lengthComputable&&!i.enableResumableUpload&&(n=r.round(s/o*100)),t?i._setFileUploadStats(t,n,l):i._setProgress(n,null,null,i._getStats(l)),i._raise("fileajaxprogress",[l])};return e.upload&&(i.progressDelay&&(n=r.debounce(n,i.progressDelay)),e.upload.addEventListener("progress",n,!1)),e},_initAjaxSettings:function(){var t=this;t._ajaxSettings=e.extend(!0,{},t.ajaxSettings),t._ajaxDeleteSettings=e.extend(!0,{},t.ajaxDeleteSettings)},_mergeAjaxCallback:function(e,t,i){var a,r=this,n=r._ajaxSettings,o=r.mergeAjaxCallbacks;"delete"===i&&(n=r._ajaxDeleteSettings,o=r.mergeAjaxDeleteCallbacks),a=n[e],o&&"function"==typeof a?"before"===o?n[e]=function(){a.apply(this,arguments),t.apply(this,arguments)}:n[e]=function(){t.apply(this,arguments),a.apply(this,arguments)}:n[e]=t},_ajaxSubmit:function(t,i,a,r,n,o,s,l){var d,c,u,p,f=this;f._raise("filepreajax",[n,o,s])&&(n.append("initialPreview",JSON.stringify(f.initialPreview)),n.append("initialPreviewConfig",JSON.stringify(f.initialPreviewConfig)),n.append("initialPreviewThumbTags",JSON.stringify(f.initialPreviewThumbTags)),f._initAjaxSettings(),f._mergeAjaxCallback("beforeSend",t),f._mergeAjaxCallback("success",i),f._mergeAjaxCallback("complete",a),f._mergeAjaxCallback("error",r),l=l||f.uploadUrlThumb||f.uploadUrl,"function"==typeof l&&(l=l()),u=f._getExtraData(o,s)||{},"object"==typeof u&&e.each(u,function(e,t){n.append(e,t)}),c={xhr:function(){var t=e.ajaxSettings.xhr();return f._initXhr(t,o)},url:f._encodeURI(l),type:"POST",dataType:"json",data:n,cache:!1,processData:!1,contentType:!1},d=e.extend(!0,{},c,f._ajaxSettings),p=f.taskManager.addTask(o+"-"+s,function(){var t,i,a=this.self;t=a.ajaxQueue.shift(),i=e.ajax(t),a.ajaxRequests.push(i)}),f.ajaxQueue.push(d),p.runWithContext({self:f}))},_mergeArray:function(e,t){var i=this,a=r.cleanArray(i[e]),n=r.cleanArray(t);i[e]=a.concat(n)},_initUploadSuccess:function(t,i,n){var o,s,l,d,c,u,p,f,g,m=this;return!m.showPreview||"object"!=typeof t||e.isEmptyObject(t)?void m._resetCaption():(t.initialPreview!==a&&t.initialPreview.length>0&&(m.hasInitData=!0,c=t.initialPreview||[],u=t.initialPreviewConfig||[],p=t.initialPreviewThumbTags||[],o=t.append===a||t.append,c.length>0&&!r.isArray(c)&&(c=c.split(m.initialPreviewDelimiter)),c.length&&(m._mergeArray("initialPreview",c),m._mergeArray("initialPreviewConfig",u),m._mergeArray("initialPreviewThumbTags",p)),i!==a?n?(f=i.attr("id"),g=m._getUploadCacheIndex(f),null!==g&&(m.uploadCache[g]={id:f,content:c[0],config:u[0]||[],tags:p[0]||[],append:o})):(l=m.previewCache.add(c[0],u[0],p[0],o),s=m.previewCache.get(l,!1),d=r.createElement(s).hide().appendTo(i),i.fadeOut("slow",function(){var e=d.find("> .file-preview-frame");e&&e.length&&e.insertBefore(i).fadeIn("slow").css("display:inline-block"),m._initPreviewActions(),m._clearFileInput(),i.remove(),d.remove(),m._initSortable()})):(m.previewCache.set(c,u,p,o),m._initPreview(),m._initPreviewActions())),void m._resetCaption())},_getUploadCacheIndex:function(e){var t,i,a=this,r=a.uploadCache.length;for(t=0;r>t;t++)if(i=a.uploadCache[t],i.id===e)return t;return null},_initSuccessThumbs:function(){var t=this;t.showPreview&&setTimeout(function(){t._getThumbs(r.FRAMES+".file-preview-success").each(function(){var i=e(this),a=i.find(".kv-file-remove");a.removeAttr("disabled"),t._handler(a,"click",function(){var e=i.attr("id"),a=t._raise("filesuccessremove",[e,i.attr("data-fileindex")]);r.cleanMemory(i),a!==!1&&(t.$caption.attr("title",""),i.fadeOut("slow",function(){t.fileManager;i.remove(),t.getFrames().length||t.reset()}))})})},t.processDelay)},_updateInitialPreview:function(){var t=this,i=t.uploadCache;t.showPreview&&(e.each(i,function(e,i){t.previewCache.add(i.content,i.config,i.tags,i.append)}),t.hasInitData&&(t._initPreview(),t._initPreviewActions()))},_getThumbFileId:function(e){var t=this;return t.showPreview&&e!==a?e.attr("data-fileid"):null},_getThumbFile:function(e){var t=this,i=t._getThumbFileId(e);return i?t.fileManager.getFile(i):null},_uploadSingle:function(t,i,a){var n,o,s,l,d,c,u,p,f,g,m,h,v,b=this,w=b.fileManager,_=w.count(),C=new FormData,x=b._getThumbId(i),y=_>0||!e.isEmptyObject(b.uploadExtraData),T=b.ajaxOperations.uploadThumb,P=w.getFile(i),k={id:x,index:t,fileId:i},F=b.fileManager.getFileName(i,!0);b.enableResumableUpload||(b.showPreview&&(o=w.getThumb(i),u=o.find(".file-thumb-progress"),l=o.find(".kv-file-upload"),d=o.find(".kv-file-remove"),u.show()),0===_||!y||b.showPreview&&l&&l.hasClass("disabled")||b._abort(k)||(v=function(){c?w.errors.push(i):w.removeFile(i),w.setProcessed(i),w.isProcessed()&&(b.fileBatchCompleted=!0,s())},s=function(){var e;b.fileBatchCompleted&&setTimeout(function(){var t=0===w.count(),i=w.errors.length;b._updateInitialPreview(),b.unlock(t),t&&b._clearFileInput(),e=b.$preview.find(".file-preview-initial"),b.uploadAsync&&e.length&&(r.addCss(e,r.SORT_CSS),b._initSortable()),b._raise("filebatchuploadcomplete",[w.stack,b._getExtraData()]),b.retryErrorUploads&&0!==i||w.clear(),b._setProgress(101),b.ajaxAborted=!1},b.processDelay)},p=function(s){n=b._getOutData(C,s),w.initStats(i),b.fileBatchCompleted=!1,a||(b.ajaxAborted=!1),b.showPreview&&(o.hasClass("file-preview-success")||(b._setThumbStatus(o,"Loading"),r.addCss(o,"file-uploading")),l.attr("disabled",!0),d.attr("disabled",!0)),a||b.lock(),-1!==w.errors.indexOf(i)&&delete w.errors[i],b._raise("filepreupload",[n,x,t,b._getThumbFileId(o)]),e.extend(!0,k,n),b._abort(k)&&(s.abort(),a||(b._setThumbStatus(o,"New"),o.removeClass("file-uploading"),l.removeAttr("disabled"),d.removeAttr("disabled")),b._setProgressCancelled())},g=function(s,d,p){var g=b.showPreview&&o.attr("id")?o.attr("id"):x;n=b._getOutData(C,p,s),e.extend(!0,k,n),setTimeout(function(){r.isEmpty(s)||r.isEmpty(s.error)?(b.showPreview&&(b._setThumbStatus(o,"Success"),l.hide(),b._initUploadSuccess(s,o,a),b._setProgress(101,u)),b._raise("fileuploaded",[n,g,t,b._getThumbFileId(o)]),a?v():b.fileManager.remove(o)):(c=!0,f=b._parseError(T,p,b.msgUploadError,b.fileManager.getFileName(i)),b._showFileError(f,k),b._setPreviewError(o,!0),b.retryErrorUploads||l.hide(),a&&v(),b._setProgress(101,b._getFrame(g).find(".file-thumb-progress"),b.msgUploadError))},b.processDelay)},m=function(){b.showPreview&&(l.removeAttr("disabled"),d.removeAttr("disabled"),o.removeClass("file-uploading")),a?s():(b.unlock(!1),b._clearFileInput()),b._initSuccessThumbs()},h=function(t,r,n){f=b._parseError(T,t,n,b.fileManager.getFileName(i)),c=!0,setTimeout(function(){var r;a&&v(),b.fileManager.setProgress(i,100),b._setPreviewError(o,!0),b.retryErrorUploads||l.hide(),e.extend(!0,k,b._getOutData(C,t)),b._setProgress(101,b.$progress,b.msgAjaxProgressError.replace("{operation}",T)),r=b.showPreview&&o?o.find(".file-thumb-progress"):"",b._setProgress(101,r,b.msgUploadError),b._showFileError(f,k)},b.processDelay)},b._setFileData(C,P.file,F,i),b._setUploadData(C,{fileId:i}),b._ajaxSubmit(p,g,m,h,C,i,t)))},_setFileData:function(e,t,i,a){var r=this,n=r.preProcessUpload;n&&"function"==typeof n?e.append(r.uploadFileAttr,n(a,t)):e.append(r.uploadFileAttr,t,i)},_checkBatchPreupload:function(t,i){var a=this,r=a._raise("filebatchpreupload",[t]);return r?!0:(a._abort(t),i&&i.abort(),a._getThumbs().each(function(){var t=e(this),i=t.find(".kv-file-upload"),r=t.find(".kv-file-remove");t.hasClass("file-preview-loading")&&(a._setThumbStatus(t,"New"),t.removeClass("file-uploading")),i.removeAttr("disabled"),r.removeAttr("disabled")}),a._setProgressCancelled(),!1)},_uploadBatch:function(){var t,i,a,n,o,s,l=this,d=l.fileManager,c=d.total(),u={},p=c>0||!e.isEmptyObject(l.uploadExtraData),f=new FormData,g=l.ajaxOperations.uploadBatch;if(0!==c&&p&&!l._abort(u)){s=function(){l.fileManager.clear(),l._clearFileInput()},t=function(t){l.lock(),d.initStats();var i=l._getOutData(f,t);l.ajaxAborted=!1,l.showPreview&&l._getThumbs().each(function(){var t=e(this),i=t.find(".kv-file-upload"),a=t.find(".kv-file-remove");t.hasClass("file-preview-success")||(l._setThumbStatus(t,"Loading"),r.addCss(t,"file-uploading")),i.attr("disabled",!0),a.attr("disabled",!0)}),l._checkBatchPreupload(i,t)},i=function(t,i,a){var n=l._getOutData(f,a,t),d=0,c=l._getThumbs(":not(.file-preview-success)"),u=r.isEmpty(t)||r.isEmpty(t.errorkeys)?[]:t.errorkeys;r.isEmpty(t)||r.isEmpty(t.error)?(l._raise("filebatchuploadsuccess",[n]),s(),l.showPreview?(c.each(function(){var t=e(this);l._setThumbStatus(t,"Success"),t.removeClass("file-uploading"),t.find(".kv-file-upload").hide().removeAttr("disabled")}),l._initUploadSuccess(t)):l.reset(),l._setProgress(101)):(l.showPreview&&(c.each(function(){var t=e(this);t.removeClass("file-uploading"),t.find(".kv-file-upload").removeAttr("disabled"),t.find(".kv-file-remove").removeAttr("disabled"),0===u.length||-1!==e.inArray(d,u)?(l._setPreviewError(t,!0),l.retryErrorUploads||(t.find(".kv-file-upload").hide(),l.fileManager.remove(t))):(t.find(".kv-file-upload").hide(),l._setThumbStatus(t,"Success"),l.fileManager.remove(t)),t.hasClass("file-preview-error")&&!l.retryErrorUploads||d++}),l._initUploadSuccess(t)),o=l._parseError(g,a,l.msgUploadError),l._showFileError(o,n,"filebatchuploaderror"),l._setProgress(101,l.$progress,l.msgUploadError))},n=function(){l.unlock(),l._initSuccessThumbs(),l._clearFileInput(),l._raise("filebatchuploadcomplete",[l.fileManager.stack,l._getExtraData()])},a=function(t,i,a){var r=l._getOutData(f,t);o=l._parseError(g,t,a),l._showFileError(o,r,"filebatchuploaderror"),l.uploadFileCount=c-1,l.showPreview&&(l._getThumbs().each(function(){var t=e(this);t.removeClass("file-uploading"),l._getThumbFile(t)&&l._setPreviewError(t)}),l._getThumbs().removeClass("file-uploading"),l._getThumbs(" .kv-file-upload").removeAttr("disabled"),l._getThumbs(" .kv-file-delete").removeAttr("disabled"),l._setProgress(101,l.$progress,l.msgAjaxProgressError.replace("{operation}",g)))};var m=0;e.each(l.fileManager.stack,function(e,t){r.isEmpty(t.file)||l._setFileData(f,t.file,t.nameFmt||"untitled_"+m,e),m++}),l._ajaxSubmit(t,i,n,a,f)}},_uploadExtraOnly:function(){var e,t,i,a,n,o=this,s={},l=new FormData,d=o.ajaxOperations.uploadExtra;e=function(e){o.lock();var t=o._getOutData(l,e);o._setProgress(50),s.data=t,s.xhr=e,o._checkBatchPreupload(t,e)},t=function(e,t,i){var a=o._getOutData(l,i,e);r.isEmpty(e)||r.isEmpty(e.error)?(o._raise("filebatchuploadsuccess",[a]),o._clearFileInput(),o._initUploadSuccess(e),o._setProgress(101)):(n=o._parseError(d,i,o.msgUploadError),o._showFileError(n,a,"filebatchuploaderror"))},i=function(){o.unlock(),o._clearFileInput(),o._raise("filebatchuploadcomplete",[o.fileManager.stack,o._getExtraData()])},a=function(e,t,i){var a=o._getOutData(l,e);n=o._parseError(d,e,i),s.data=a,o._showFileError(n,a,"filebatchuploaderror"),o._setProgress(101,o.$progress,o.msgAjaxProgressError.replace("{operation}",d))},o._ajaxSubmit(e,t,i,a,l)},_deleteFileIndex:function(t){var i=this,a=t.attr("data-fileindex"),n=i.reversePreviewOrder;a.substring(0,5)===r.INIT_FLAG&&(a=parseInt(a.replace(r.INIT_FLAG,"")),i.initialPreview=r.spliceArray(i.initialPreview,a,n),i.initialPreviewConfig=r.spliceArray(i.initialPreviewConfig,a,n),i.initialPreviewThumbTags=r.spliceArray(i.initialPreviewThumbTags,a,n),i.getFrames().each(function(){var t=e(this),i=t.attr("data-fileindex");i.substring(0,5)===r.INIT_FLAG&&(i=parseInt(i.replace(r.INIT_FLAG,"")),i>a&&(i--,t.attr("data-fileindex",r.INIT_FLAG+i)))}))},_resetCaption:function(){var e=this;setTimeout(function(){var t,i,a,r="",n=e.previewCache.count(!0),o=e.fileManager.count(),s=":not(.file-preview-success):not(.file-preview-error)",l=e.showPreview&&e.getFrames(s).length;0!==o||0!==n||l?(t=n+o,t>1?r=e._getMsgSelected(t):0===o?(a=e.initialPreviewConfig[0],r="",a&&(r=a.caption||a.filename||""),r||(r=e._getMsgSelected(t))):(i=e.fileManager.getFirstFile(),r=i?i.nameFmt:"_"),e._setCaption(r)):e.reset()},e.processDelay)},_initFileActions:function(){var t=this;t.showPreview&&(t._initZoomButton(),t.getFrames(" .kv-file-remove").each(function(){var i,a,n=e(this),o=n.closest(r.FRAMES),s=o.attr("id"),l=o.attr("data-fileindex");t.fileManager;t._handler(n,"click",function(){return a=t._raise("filepreremove",[s,l]),a!==!1&&t._validateMinCount()?(i=o.hasClass("file-preview-error"),r.cleanMemory(o),void o.fadeOut("slow",function(){t.fileManager.remove(o),t._clearObjects(o),o.remove(),s&&i&&t.$errorContainer.find('li[data-thumb-id="'+s+'"]').fadeOut("fast",function(){e(this).remove(),t._errorsExist()||t._resetErrors()}),t._clearFileInput(),t._resetCaption(),t._raise("fileremoved",[s,l])})):!1})}),t.getFrames(" .kv-file-upload").each(function(){var i=e(this);t._handler(i,"click",function(){var e=i.closest(r.FRAMES),a=t._getThumbFileId(e);t._hideProgress(),e.hasClass("file-preview-error")&&!t.retryErrorUploads||t._uploadSingle(t.fileManager.getIndex(a),a,!1)})}))},_initPreviewActions:function(){var t=this,i=t.$preview,n=t.deleteExtraData||{},o=r.FRAMES+" .kv-file-remove",s=t.fileActionSettings,l=s.removeClass,d=s.removeErrorClass,c=function(){var e=t.isAjaxUpload?t.previewCache.count(!0):t._inputFileCount();t.getFrames().length||e?t._resetCaption():(t._setCaption(""),t.reset(),t.initialCaption="")};t._initZoomButton(),i.find(o).each(function(){var i,o,s,u,p=e(this),f=p.data("url")||t.deleteUrl,g=p.data("key"),m=t.ajaxOperations.deleteThumb;if(!r.isEmpty(f)&&g!==a){"function"==typeof f&&(f=f());var h,v,b,w,_,C=p.closest(r.FRAMES),x=t.previewCache.data,y=C.attr("data-fileindex");y=parseInt(y.replace(r.INIT_FLAG,"")),b=r.isEmpty(x.config)&&r.isEmpty(x.config[y])?null:x.config[y],_=r.isEmpty(b)||r.isEmpty(b.extra)?n:b.extra,w=b&&(b.filename||b.caption)||"","function"==typeof _&&(_=_()),v={id:p.attr("id"),key:g,extra:_},o=function(e){t.ajaxAborted=!1,t._raise("filepredelete",[g,e,_]),t._abort()?e.abort():(p.removeClass(d),r.addCss(C,"file-uploading"),r.addCss(p,"disabled "+l))},s=function(e,a,n){var o,s;return r.isEmpty(e)||r.isEmpty(e.error)?(C.removeClass("file-uploading").addClass("file-deleted"),void C.fadeOut("slow",function(){y=parseInt(C.attr("data-fileindex").replace(r.INIT_FLAG,"")),t.previewCache.unset(y),t._deleteFileIndex(C),o=t.previewCache.count(!0),s=o>0?t._getMsgSelected(o):"",t._setCaption(s),t._raise("filedeleted",[g,n,_]),t._clearObjects(C),C.remove(),c()})):(v.jqXHR=n,v.response=e,i=t._parseError(m,n,t.msgDeleteError,w),t._showFileError(i,v,"filedeleteerror"),C.removeClass("file-uploading"),p.removeClass("disabled "+l).addClass(d),void c())},u=function(e,i,a){var r=t._parseError(m,e,a,w);v.jqXHR=e,v.response={},t._showFileError(r,v,"filedeleteerror"),C.removeClass("file-uploading"),p.removeClass("disabled "+l).addClass(d),c()},t._initAjaxSettings(),t._mergeAjaxCallback("beforeSend",o,"delete"),t._mergeAjaxCallback("success",s,"delete"),t._mergeAjaxCallback("error",u,"delete"),h=e.extend(!0,{},{url:t._encodeURI(f),type:"POST",dataType:"json",data:e.extend(!0,{},{key:g},_)},t._ajaxDeleteSettings),t._handler(p,"click",function(){return t._validateMinCount()?(t.ajaxAborted=!1,t._raise("filebeforedelete",[g,_]),void(t.ajaxAborted instanceof Promise?t.ajaxAborted.then(function(t){t||e.ajax(h)}):t.ajaxAborted||e.ajax(h))):!1})}})},_hideFileIcon:function(){var e=this;e.overwriteInitial&&e.$captionContainer.removeClass("icon-visible")},_showFileIcon:function(){var e=this;r.addCss(e.$captionContainer,"icon-visible")},_getSize:function(t,i){var a,r,n=this,o=parseFloat(t),s=n.fileSizeGetter;return e.isNumeric(t)&&e.isNumeric(o)?("function"==typeof s?r=s(o):0===o?r="0.00 B":(i||(i=n.sizeUnits),a=Math.floor(Math.log(o)/Math.log(n.bytesToKB)),r=(o/Math.pow(n.bytesToKB,a)).toFixed(2)+" "+i[a]),n._getLayoutTemplate("size").replace("{sizeText}",r)):""},_getFileType:function(e){var t=this;return t.mimeTypeAliases[e]||e},_generatePreviewTemplate:function(n,o,s,l,d,c,u,p,f,g,m,h,v,b){var w,_,C,x=this,y=x.slug(s),T="",P="",k=t.innerWidth||i.documentElement.clientWidth||i.body.clientWidth,F=y,S=y,E="type-default",I=g||x._renderFileFooter(n,y,p,"auto",u),A=x.preferIconicPreview,D=x.preferIconicZoomPreview,z=A?"other":n;return _=400>k?x.previewSettingsSmall[z]||x.defaults.previewSettingsSmall[z]:x.previewSettings[z]||x.defaults.previewSettings[z],_&&e.each(_,function(e,t){P+=e+":"+t+";"}),C=function(t,i,o,u,p){var g,b=o?"zoom-"+d:d,w=x._getPreviewTemplate(t),_=(f||"")+" "+u;return x.frameClass&&(_=x.frameClass+" "+_),o&&(_=_.replace(" "+r.SORT_CSS,"")),w=x._parseFilePreviewIcon(w,s),"object"!==n||l||e.each(x.defaults.fileTypeSettings,function(e,t){"object"!==e&&"other"!==e&&t(s,l)&&(E="type-"+e)}),r.isEmpty(v)||(v.title!==a&&null!==v.title&&(F=v.title),v.alt!==a&&null!==v.alt&&(F=v.alt)),g={previewId:b,caption:y,title:F,alt:S,frameClass:_,type:x._getFileType(l),fileindex:m,fileid:c||"",typeCss:E,footer:I,data:o&&p?r.ZOOM_VAR+"{zoomData}":i,template:h||n,style:P?'style="'+P+'"':"",zoomData:p?encodeURIComponent(p):""},o&&(g.zoomCache="",g.zoomData="{zoomData}"),w.setTokens(g)},m=m||d.slice(d.lastIndexOf("-")+1),x.fileActionSettings.showZoom&&(T=C(D?"other":n,o,!0,"kv-zoom-thumb",b)),T="\n"+x._getLayoutTemplate("zoomCache").replace("{zoomContent}",T),"function"==typeof x.sanitizeZoomCache&&(T=x.sanitizeZoomCache(T)),w=C(A?"other":n,o,!1,"kv-preview-thumb",b),w.setTokens({zoomCache:T})},_addToPreview:function(e,t){var i,a=this;return t=r.cspBuffer.stash(t),i=a.reversePreviewOrder?e.prepend(t):e.append(t),r.cspBuffer.apply(e),i},_previewDefault:function(e,t){var i=this,a=i.$preview;if(i.showPreview){var n,o=r.getFileName(e),s=e?e.type:"",l=e.size||0,d=i._getFileName(e,""),c=t===!0&&!i.isAjaxUpload,u=r.createObjectURL(e),p=i.fileManager.getId(e),f=i._getThumbId(p);i._clearDefaultPreview(),n=i._generatePreviewTemplate("other",u,o,s,f,p,c,l),i._addToPreview(a,n),i._setThumbAttr(f,d,l),t===!0&&i.isAjaxUpload&&i._setThumbStatus(i._getFrame(f),"Error")}},_previewFile:function(e,t,i,a,n){if(this.showPreview){var o,s=this,l=r.getFileName(t),d=n.type,c=n.name,u=s._parseFileType(d,l),p=s.$preview,f=t.size||0,g="image"===u?i.target.result:a,m=s.fileManager,h=m.getId(t),v=s._getThumbId(h);o=s._generatePreviewTemplate(u,g,l,d,v,h,!1,f),s._clearDefaultPreview(),s._addToPreview(p,o);var b=s._getFrame(v);s._validateImageOrientation(b.find("img"),t,v,h,c,d,f,g),s._setThumbAttr(v,c,f),s._initSortable()}},_setThumbAttr:function(e,t,i,a){var r=this,n=r._getFrame(e);n.length&&(i=i&&i>0?r._getSize(i):"",n.data({caption:t,size:i,description:a||""}))},_setInitThumbAttr:function(){var e,t,i,a,n,o=this,s=o.previewCache.data,l=o.previewCache.count(!0);if(0!==l)for(var d=0;l>d;d++)e=s.config[d],n=o.previewInitId+"-"+r.INIT_FLAG+d,t=r.ifSet("caption",e,r.ifSet("filename",e)),i=r.ifSet("size",e),a=r.ifSet("description",e),o._setThumbAttr(n,t,i,a)},_slugDefault:function(e){return r.isEmpty(e,!0)?"":String(e).replace(/[\[\]\/\{}:;#%=\(\)\*\+\?\\\^\$\|<>&"']/g,"_")},_updateFileDetails:function(e){var t,i,a,n,o,s=this,l=s.$element,d=r.isIE(9)&&r.findFileName(l.val())||l[0].files[0]&&l[0].files[0].name;!d&&s.fileManager.count()>0?(o=s.fileManager.getFirstFile(),t=o.nameFmt):t=d?s.slug(d):"_",i=s.isAjaxUpload?s.fileManager.count():e,n=s.previewCache.count(!0)+i,a=1===i?t:s._getMsgSelected(n,!s.isAjaxUpload&&!s.isError),s.isError?(s.$previewContainer.removeClass("file-thumb-loading"),s._initCapStatus(),s.$previewStatus.html(""),s.$captionContainer.removeClass("icon-visible")):s._showFileIcon(),s._setCaption(a,s.isError),s.$container.removeClass("file-input-new file-input-ajax-new"),s._raise("fileselect",[e,t]),s.previewCache.count(!0)&&s._initPreviewActions()},_setThumbStatus:function(e,t){var i=this;if(i.showPreview){var a="indicator"+t,n=a+"Title",o="file-preview-"+t.toLowerCase(),s=e.find(".file-upload-indicator"),l=i.fileActionSettings;e.removeClass("file-preview-success file-preview-error file-preview-paused file-preview-loading"),"Success"===t&&e.find(".file-drag-handle").remove(),r.setHtml(s,l[a]),s.attr("title",l[n]),e.addClass(o),"Error"!==t||i.retryErrorUploads||e.find(".kv-file-upload").attr("disabled",!0)}},_setProgressCancelled:function(){var e=this;e._setProgress(101,e.$progress,e.msgCancelled)},_setProgress:function(e,t,i,a){var n=this;if(t=t||n.$progress,t.length){var o,s=Math.min(e,100),l=n.progressUploadThreshold,d=100>=e?n.progressTemplate:n.progressCompleteTemplate,c=100>s?n.progressTemplate:i?n.paused?n.progressPauseTemplate:n.progressErrorTemplate:d;e>=100&&(a=""),r.isEmpty(c)||(o=l&&s>l&&100>=e?c.setTokens({percent:l,status:n.msgUploadThreshold}):c.setTokens({percent:s,status:e>100?n.msgUploadEnd:s+"%"}),a=a||"",o=o.setTokens({stats:a}),r.setHtml(t,o),i&&r.setHtml(t.find('[role="progressbar"]'),i))}},_hasFiles:function(){var e=this.$element[0];return!!(e&&e.files&&e.files.length)},_setFileDropZoneTitle:function(){var e,t=this,i=t.$container.find(".file-drop-zone"),a=t.dropZoneTitle;t.isClickable&&(e=r.isEmpty(t.$element.attr("multiple"))?t.fileSingle:t.filePlural,a+=t.dropZoneClickTitle.replace("{files}",e)),i.find("."+t.dropZoneTitleClass).remove(),!t.showPreview||0===i.length||t.fileManager.count()>0||!t.dropZoneEnabled||t.previewCache.count()>0||!t.isAjaxUpload&&t._hasFiles()||(0===i.find(r.FRAMES).length&&r.isEmpty(t.defaultPreviewContent)&&i.prepend('<div class="'+t.dropZoneTitleClass+'">'+a+"</div>"),t.$container.removeClass("file-input-new"),r.addCss(t.$container,"file-input-ajax-new"))},_getStats:function(e){var t,i,a=this;return a.showUploadStats&&e&&e.bitrate?(i=a._getLayoutTemplate("stats"),t=e.elapsed&&e.bps?a.msgPendingTime.setTokens({time:r.getElapsed(Math.ceil(e.pendingBytes/e.bps))}):a.msgCalculatingTime,i.setTokens({uploadSpeed:e.bitrate,pendingTime:t})):""},_setResumableProgress:function(e,t,i){var a=this,r=a.resumableManager,n=i?r:a,o=i?i.find(".file-thumb-progress"):null;0===n.lastProgress&&(n.lastProgress=e),e<n.lastProgress&&(e=n.lastProgress),a._setProgress(e,o,null,a._getStats(t)),n.lastProgress=e},_toggleResumableProgress:function(e,t){var i=this,a=i.$progress;a&&a.length&&r.setHtml(a,e.setTokens({percent:101,status:t,stats:""}))},_setFileUploadStats:function(t,i,a){var n=this,o=n.$progress;if(n.showPreview||o&&o.length){var s,l=n.fileManager,d=n.resumableManager,c=l.getThumb(t),u=0,p=l.getTotalSize(),f=e.extend(!0,{},a);if(n.enableResumableUpload){var g,m=a.loaded,h=d.getUploadedSize(),v=d.file.size;m+=h,g=l.uploadedSize+m,i=r.round(100*m/v),a.pendingBytes=v-h,n._setResumableProgress(i,a,c),s=Math.floor(100*g/p),f.pendingBytes=p-g,n._setResumableProgress(s,f)}else l.setProgress(t,i),o=c&&c.length?c.find(".file-thumb-progress"):null,n._setProgress(i,o,null,n._getStats(a)),e.each(l.stats,function(e,t){u+=t.loaded}),f.pendingBytes=p-u,s=r.round(u/p*100),n._setProgress(s,null,null,n._getStats(f))}},_validateMinCount:function(){var e=this,t=e.isAjaxUpload?e.fileManager.count():e._inputFileCount();return e.validateInitialCount&&e.minFileCount>0&&e._getFileCount(t-1)<e.minFileCount?(e._noFilesError({}),!1):!0},_getFileCount:function(e,t){var i=this,r=0;return t===a&&(t=i.validateInitialCount&&!i.overwriteInitial),t&&(r=i.previewCache.count(!0),e+=r),e},_getFileId:function(e){return r.getFileId(e,this.generateFileId)},_getFileName:function(e,t){var i=this,a=r.getFileName(e);return a?i.slug(a):t},_getFileNames:function(e){var t=this;return t.filenames.filter(function(t){return e?t!==a:t!==a&&null!==t})},_setPreviewError:function(e,t){var i=this,a=i.removeFromPreviewOnError&&!i.retryErrorUploads;if(t&&!a||i.fileManager.remove(e),i.showPreview){if(a)return void e.remove();i._setThumbStatus(e,"Error"),i._refreshUploadButton(e)}},_refreshUploadButton:function(e){var t=this,i=e.find(".kv-file-upload"),a=t.fileActionSettings,n=a.uploadIcon,o=a.uploadTitle;i.length&&(t.retryErrorUploads&&(n=a.uploadRetryIcon,o=a.uploadRetryTitle),i.attr("title",o),r.setHtml(i,n))},_checkDimensions:function(e,t,i,a,n,o,s){var l,d,c,u,p=this,f="Small"===t?"min":"max",g=p[f+"Image"+o];!r.isEmpty(g)&&i.length&&(c=i[0],d="Width"===o?c.naturalWidth||c.width:c.naturalHeight||c.height,u="Small"===t?d>=g:g>=d,u||(l=p["msgImage"+o+t].setTokens({name:n,size:g}),p._showFileError(l,s),p._setPreviewError(a)))},_getExifObj:function(e){var i,a=this,n=r.logMessages.exifWarning;if("data:image/jpeg;base64,"!==e.slice(0,23)&&"data:image/jpg;base64,"!==e.slice(0,22))return void(i=null);try{i=t.piexif?t.piexif.load(e):null}catch(o){i=null,n=o&&o.message||""}return!i&&a.showExifErrorLog&&a._log(r.logMessages.badExifParser,{details:n}),i},setImageOrientation:function(t,a,n,o){var s,l,d,c=this,u=!t||!t.length,p=!a||!a.length,f=!1,g=u&&o&&"image"===o.attr("data-template");u&&p||(d="load.fileinputimageorient",g?(t=a,a=null,t.css(c.previewSettings.image),l=e(i.createElement("div")).appendTo(o.find(".kv-file-content")),s=e(i.createElement("span")).insertBefore(t),t.css("visibility","hidden").removeClass("file-zoom-detail").appendTo(l)):f=!t.is(":visible"),t.off(d).on(d,function(){f&&(c.$preview.removeClass("hide-content"),o.find(".kv-file-content").css("visibility","hidden"));var e=t[0],i=a&&a.length?a[0]:null,d=e.offsetHeight,u=e.offsetWidth,p=r.getRotation(n);if(f&&(o.find(".kv-file-content").css("visibility","visible"),c.$preview.addClass("hide-content")),t.data("orientation",n),i&&a.data("orientation",n),5>n)return r.setTransform(e,p),void r.setTransform(i,p);var m=Math.atan(u/d),h=Math.sqrt(Math.pow(d,2)+Math.pow(u,2)),v=h?d/Math.cos(Math.PI/2+m)/h:1,b=" scale("+Math.abs(v)+")";r.setTransform(e,p+b),r.setTransform(i,p+b),g&&(t.css("visibility","visible").insertAfter(s).addClass("file-zoom-detail"),s.remove(),l.remove())}))},_validateImageOrientation:function(t,i,a,n,o,s,l,d){var c,u,p=this,f=null,g=p.autoOrientImage;return f=p._getExifObj(d),p.canOrientImage?(t.css("image-orientation",g?"from-image":"none"),void p._validateImage(a,n,o,s,l,d,f)):(u=r.getZoomSelector(a," img"),(c=f?f["0th"][piexif.ImageIFD.Orientation]:null)?(p.setImageOrientation(t,e(u),c,p._getFrame(a)),p._raise("fileimageoriented",{$img:t,file:i}),void p._validateImage(a,n,o,s,l,d,f)):void p._validateImage(a,n,o,s,l,d,f))},_validateImage:function(e,t,i,a,r,n,o){var s,l,d,c=this,u=c.$preview,p=c._getFrame(e),f=p.attr("data-fileindex"),g=p.find("img");i=i||"Untitled",g.one("load",function(){l=p.width(),d=u.width(),l>d&&g.css("width","100%"),s={ind:f,id:e,fileId:t},c._checkDimensions(f,"Small",g,p,i,"Width",s),c._checkDimensions(f,"Small",g,p,i,"Height",s),c.resizeImage||(c._checkDimensions(f,"Large",g,p,i,"Width",s),c._checkDimensions(f,"Large",g,p,i,"Height",s)),c._raise("fileimageloaded",[e]),c.fileManager.addImage(t,{ind:f,img:g,thumb:p,pid:e,typ:a,siz:r,validated:!1,imgData:n,exifObj:o}),p.data("exif",o),c._validateAllImages()}).one("error",function(){c._raise("fileimageloaderror",[e])})},_validateAllImages:function(){var t,i=this,a={val:0},r=i.fileManager.getImageCount(),n=i.resizeIfSizeMoreThan;r===i.fileManager.totalImages&&(i._raise("fileimagesloaded"),i.resizeImage&&e.each(i.fileManager.loadedImages,function(e,o){o.validated||(t=o.siz,t&&t>n*i.bytesToKB&&i._getResizedImage(e,o,a,r),o.validated=!0)}))},_getResizedImage:function(i,n,o,s){var l,d,c,u,p,f,g,m,h,v,b=this,w=e(n.img)[0],_=w.naturalWidth,C=w.naturalHeight,x=1,y=b.maxImageWidth||_,T=b.maxImageHeight||C,P=!(!_||!C),k=b.imageCanvas,F=b.imageCanvasContext,S=n.typ,E=n.pid,I=n.ind,A=n.thumb,D=n.exifObj;if(p=function(e,t,i){b.isAjaxUpload?b._showFileError(e,t,i):b._showError(e,t,i),b._setPreviewError(A)},m=b.fileManager.getFile(i),h={id:E,index:I,fileId:i},v=[i,E,I],(!m||!P||y>=_&&T>=C)&&(P&&m&&b._raise("fileimageresized",v),o.val++,o.val===s&&b._raise("fileimagesresized"),!P))return void p(b.msgImageResizeError,h,"fileimageresizeerror");S=S||b.resizeDefaultImageType,d=_>y,c=C>T,x="width"===b.resizePreference?d?y/_:c?T/C:1:c?T/C:d?y/_:1,b._resetCanvas(),_*=x,C*=x,k.width=_,k.height=C;try{F.drawImage(w,0,0,_,C),u=k.toDataURL(S,b.resizeQuality),D&&(g=t.piexif.dump(D),u=t.piexif.insert(g,u)),l=r.dataURI2Blob(u),b.fileManager.setFile(i,l),b._raise("fileimageresized",v),o.val++,o.val===s&&b._raise("fileimagesresized",[a,a]),l instanceof Blob||p(b.msgImageResizeError,h,"fileimageresizeerror")}catch(z){o.val++,o.val===s&&b._raise("fileimagesresized",[a,a]),f=b.msgImageResizeException.replace("{errors}",z.message),p(f,h,"fileimageresizeexception")}},_showProgress:function(){var e=this;e.$progress&&e.$progress.length&&e.$progress.show()},_hideProgress:function(){var e=this;
- e.$progress&&e.$progress.length&&e.$progress.hide()},_initBrowse:function(e){var t=this,i=t.$element;t.showBrowse?t.$btnFile=e.find(".btn-file").append(i):(i.appendTo(e).attr("tabindex",-1),r.addCss(i,"file-no-browse"))},_initClickable:function(){var t,i,a=this;a.isClickable&&(t=a.$dropZone,a.isAjaxUpload||(i=a.$preview.find(".file-default-preview"),i.length&&(t=i)),r.addCss(t,"clickable"),t.attr("tabindex",-1),a._handler(t,"click",function(i){var r=e(i.target);a.$errorContainer.is(":visible")||r.parents(".file-preview-thumbnails").length&&!r.parents(".file-default-preview").length||(a.$element.data("zoneClicked",!0).trigger("click"),t.blur())}))},_initCaption:function(){var e=this,t=e.initialCaption||"";return e.overwriteInitial||r.isEmpty(t)?(e.$caption.val(""),!1):(e._setCaption(t),!0)},_setCaption:function(t,i){var a,n,o,s,l,d,c=this;if(c.$caption.length){if(c.$captionContainer.removeClass("icon-visible"),i)a=e("<div>"+c.msgValidationError+"</div>").text(),s=c.fileManager.count(),s?(d=c.fileManager.getFirstFile(),l=1===s&&d?d.nameFmt:c._getMsgSelected(s)):l=c._getMsgSelected(c.msgNo),n=r.isEmpty(t)?l:t,o='<span class="'+c.msgValidationErrorClass+'">'+c.msgValidationErrorIcon+"</span>";else{if(r.isEmpty(t))return void c.$caption.attr("title","");a=e("<div>"+t+"</div>").text(),n=a,o=c._getLayoutTemplate("fileIcon")}c.$captionContainer.addClass("icon-visible"),c.$caption.attr("title",a).val(n),r.setHtml(c.$captionIcon,o)}},_createContainer:function(){var e=this,t={"class":"file-input file-input-new"+(e.rtl?" kv-rtl":"")},i=r.createElement(r.cspBuffer.stash(e._renderMain()));return r.cspBuffer.apply(i),i.insertBefore(e.$element).attr(t),e._initBrowse(i),e.theme&&i.addClass("theme-"+e.theme),i},_refreshContainer:function(){var e=this,t=e.$container,i=e.$element;i.insertAfter(t),r.setHtml(t,e._renderMain()),e._initBrowse(t),e._validateDisabled()},_validateDisabled:function(){var e=this;e.$caption.attr({readonly:e.isDisabled})},_setTabIndex:function(e,t){var i=this,r=i.tabIndexConfig[e];return t.setTokens({tabIndexConfig:r===a||null===r?"":'tabindex="'+r+'"'})},_renderMain:function(){var e=this,t=e.dropZoneEnabled?" file-drop-zone":"file-drop-disabled",i=e.showClose?e._getLayoutTemplate("close"):"",a=e.showPreview?e._getLayoutTemplate("preview").setTokens({"class":e.previewClass,dropClass:t}):"",r=e.isDisabled?e.captionClass+" file-caption-disabled":e.captionClass,n=e.captionTemplate.setTokens({"class":r+" kv-fileinput-caption"});return n=e._setTabIndex("caption",n),e.mainTemplate.setTokens({"class":e.mainClass+(!e.showBrowse&&e.showCaption?" no-browse":""),inputGroupClass:e.inputGroupClass,preview:a,close:i,caption:n,upload:e._renderButton("upload"),remove:e._renderButton("remove"),cancel:e._renderButton("cancel"),pause:e._renderButton("pause"),browse:e._renderButton("browse")})},_renderButton:function(e){var t=this,i=t._getLayoutTemplate("btnDefault"),a=t[e+"Class"],n=t[e+"Title"],o=t[e+"Icon"],s=t[e+"Label"],l=t.isDisabled?" disabled":"",d="button";switch(e){case"remove":if(!t.showRemove)return"";break;case"cancel":if(!t.showCancel)return"";a+=" kv-hidden";break;case"pause":if(!t.showPause)return"";a+=" kv-hidden";break;case"upload":if(!t.showUpload)return"";t.isAjaxUpload&&!t.isDisabled?i=t._getLayoutTemplate("btnLink").replace("{href}",t.uploadUrl):d="submit";break;case"browse":if(!t.showBrowse)return"";i=t._getLayoutTemplate("btnBrowse");break;default:return""}return i=t._setTabIndex(e,i),a+="browse"===e?" btn-file":" fileinput-"+e+" fileinput-"+e+"-button",r.isEmpty(s)||(s=' <span class="'+t.buttonLabelClass+'">'+s+"</span>"),i.setTokens({type:d,css:a,title:n,status:l,icon:o,label:s})},_renderThumbProgress:function(){var e=this;return'<div class="file-thumb-progress kv-hidden">'+e.progressInfoTemplate.setTokens({percent:101,status:e.msgUploadBegin,stats:""})+"</div>"},_renderFileFooter:function(e,t,i,a,n){var o,s,l=this,d=l.fileActionSettings,c=d.showRemove,u=d.showDrag,p=d.showUpload,f=d.showZoom,g=l._getLayoutTemplate("footer"),m=l._getLayoutTemplate("indicator"),h=n?d.indicatorError:d.indicatorNew,v=n?d.indicatorErrorTitle:d.indicatorNewTitle,b=m.setTokens({indicator:h,indicatorTitle:v});return i=l._getSize(i),s={type:e,caption:t,size:i,width:a,progress:"",indicator:b},l.isAjaxUpload?(s.progress=l._renderThumbProgress(),s.actions=l._renderFileActions(s,p,!1,c,f,u,!1,!1,!1)):s.actions=l._renderFileActions(s,!1,!1,!1,f,u,!1,!1,!1),o=g.setTokens(s),o=r.replaceTags(o,l.previewThumbTags)},_renderFileActions:function(e,t,i,a,r,n,o,s,l,d,c,u){var p=this;if(!e.type&&d&&(e.type="image"),p.enableResumableUpload?t=!1:"function"==typeof t&&(t=t(e)),"function"==typeof i&&(i=i(e)),"function"==typeof a&&(a=a(e)),"function"==typeof r&&(r=r(e)),"function"==typeof n&&(n=n(e)),!(t||i||a||r||n))return"";var f,g=s===!1?"":' data-url="'+s+'"',m="",h="",v=l===!1?"":' data-key="'+l+'"',b="",w="",_="",C=p._getLayoutTemplate("actions"),x=p.fileActionSettings,y=p.otherActionButtons.setTokens({dataKey:v,key:l}),T=o?x.removeClass+" disabled":x.removeClass;return a&&(b=p._getLayoutTemplate("actionDelete").setTokens({removeClass:T,removeIcon:x.removeIcon,removeTitle:x.removeTitle,dataUrl:g,dataKey:v,key:l})),t&&(w=p._getLayoutTemplate("actionUpload").setTokens({uploadClass:x.uploadClass,uploadIcon:x.uploadIcon,uploadTitle:x.uploadTitle})),i&&(_=p._getLayoutTemplate("actionDownload").setTokens({downloadClass:x.downloadClass,downloadIcon:x.downloadIcon,downloadTitle:x.downloadTitle,downloadUrl:c||p.initialPreviewDownloadUrl}),_=_.setTokens({filename:u,key:l})),r&&(m=p._getLayoutTemplate("actionZoom").setTokens({zoomClass:x.zoomClass,zoomIcon:x.zoomIcon,zoomTitle:x.zoomTitle})),n&&d&&(f="drag-handle-init "+x.dragClass,h=p._getLayoutTemplate("actionDrag").setTokens({dragClass:f,dragTitle:x.dragTitle,dragIcon:x.dragIcon})),C.setTokens({"delete":b,upload:w,download:_,zoom:m,drag:h,other:y})},_browse:function(e){var t=this;e&&e.isDefaultPrevented()||!t._raise("filebrowse")||(t.isError&&!t.isAjaxUpload&&t.clear(),t.focusCaptionOnBrowse&&t.$captionContainer.focus())},_change:function(t){var n=this;if(e(i.body).off("focusin.fileinput focusout.fileinput"),!n.changeTriggered){n._setLoading("show");var o,s,l,d,c=n.$element,u=arguments.length>1,p=n.isAjaxUpload,f=u?arguments[1]:c[0].files,g=n.fileManager.count(),m=r.isEmpty(c.attr("multiple")),h=!p&&m?1:n.maxFileCount,v=n.maxTotalFileCount,b=v>0&&v>h,w=m&&g>0,_=function(t,i,a,r){var o=e.extend(!0,{},n._getOutData(null,{},{},f),{id:a,index:r}),s={id:a,index:r,file:i,files:f};return n.isPersistentError=!0,n._setLoading("hide"),p?n._showFileError(t,o):n._showError(t,s)},C=function(e,t,i){var a=i?n.msgTotalFilesTooMany:n.msgFilesTooMany;a=a.replace("{m}",t).replace("{n}",e),n.isError=_(a,null,null,null),n.$captionContainer.removeClass("icon-visible"),n._setCaption("",!0),n.$container.removeClass("file-input-new file-input-ajax-new")};if(n.reader=null,n._resetUpload(),n._hideFileIcon(),n.dropZoneEnabled&&n.$container.find(".file-drop-zone ."+n.dropZoneTitleClass).remove(),p||(f=t.target&&t.target.files===a?t.target.value?[{name:t.target.value.replace(/^.+\\/,"")}]:[]:t.target.files||{}),o=f,r.isEmpty(o)||0===o.length)return p||n.clear(),void n._raise("fileselectnone");if(n._resetErrors(),d=o.length,l=p?n.fileManager.count()+d:d,s=n._getFileCount(l,b?!1:a),h>0&&s>h){if(!n.autoReplace||d>h)return void C(n.autoReplace&&d>h?d:s,h);s>h&&n._resetPreviewThumbs(p)}else{if(b&&(s=n._getFileCount(l,!0),v>0&&s>v)){if(!n.autoReplace||d>h)return void C(n.autoReplace&&d>v?d:s,v,!0);s>h&&n._resetPreviewThumbs(p)}!p||w?(n._resetPreviewThumbs(!1),w&&n.clearFileStack()):!p||0!==g||n.previewCache.count(!0)&&!n.overwriteInitial||n._resetPreviewThumbs(!0)}n.readFiles(o),n._setLoading("hide")}},_abort:function(t){var i,r=this;return r.ajaxAborted&&"object"==typeof r.ajaxAborted&&r.ajaxAborted.message!==a?(i=e.extend(!0,{},r._getOutData(null),t),i.abortData=r.ajaxAborted.data||{},i.abortMessage=r.ajaxAborted.message,r._setProgress(101,r.$progress,r.msgCancelled),r._showFileError(r.ajaxAborted.message,i,"filecustomerror"),r.cancel(),r.unlock(),!0):!!r.ajaxAborted},_resetFileStack:function(){var t=this,i=0;t._getThumbs().each(function(){var a=e(this),r=a.attr("data-fileindex"),n=a.attr("id");"-1"!==r&&-1!==r&&(t._getThumbFile(a)?a.attr({"data-fileindex":"-1"}):(a.attr({"data-fileindex":i}),i++),t._getZoom(n).attr({"data-fileindex":a.attr("data-fileindex")}))})},_isFileSelectionValid:function(e){var t=this;return e=e||0,t.required&&!t.getFilesCount()?(t.$errorContainer.html(""),t._showFileError(t.msgFileRequired),!1):t.minFileCount>0&&t._getFileCount(e)<t.minFileCount?(t._noFilesError({}),!1):!0},_canPreview:function(e){var t=this;if(!(e&&t.showPreview&&t.$preview&&t.$preview.length))return!1;var i,a,n,o,s=e.name||"",l=e.type||"",d=(e.size||0)/t.bytesToKB,c=t._parseFileType(l,s),u=t.allowedPreviewTypes,p=t.allowedPreviewMimeTypes,f=t.allowedPreviewExtensions||[],g=t.disabledPreviewTypes,m=t.disabledPreviewMimeTypes,h=t.disabledPreviewExtensions||[],v=t.maxFilePreviewSize&&parseFloat(t.maxFilePreviewSize)||0,b=new RegExp("\\.("+f.join("|")+")$","i"),w=new RegExp("\\.("+h.join("|")+")$","i");return i=!u||-1!==u.indexOf(c),a=!p||-1!==p.indexOf(l),n=!f.length||r.compare(s,b),o=g&&-1!==g.indexOf(c)||m&&-1!==m.indexOf(l)||h.length&&r.compare(s,w)||v&&!isNaN(v)&&d>v,!o&&(i||a||n)},addToStack:function(e,t){this.fileManager.add(e,t)},clearFileStack:function(){var e=this;return e.fileManager.clear(),e._initResumableUpload(),e.enableResumableUpload?(null===e.showPause&&(e.showPause=!0),null===e.showCancel&&(e.showCancel=!1)):(e.showPause=!1,null===e.showCancel&&(e.showCancel=!0)),e.$element},getFileStack:function(){return this.fileManager.stack},getFileList:function(){return this.fileManager.list()},getFilesSize:function(){return this.fileManager.getTotalSize()},getFilesCount:function(e){var t=this,i=t.isAjaxUpload?t.fileManager.count():t._inputFileCount();return e&&(i+=t.previewCache.count(!0)),t._getFileCount(i)},_initCapStatus:function(e){var t=this,i=t.$caption;i.removeClass("is-valid file-processing"),e&&("processing"===e?i.addClass("file-processing"):i.addClass("is-valid"))},_setLoading:function(e){var t=this;t.$previewStatus.html("hide"===e?"":t.msgProcessing),t.$container.removeClass("file-thumb-loading"),t._initCapStatus("hide"===e?"":"processing"),"hide"!==e&&(t.dropZoneEnabled&&t.$container.find(".file-drop-zone ."+t.dropZoneTitleClass).remove(),t.$container.addClass("file-thumb-loading"))},_initFileSelected:function(){var t=this,a=t.$element,r=e(i.body),n="focusin.fileinput focusout.fileinput";r.length?r.off(n).on("focusout.fileinput",function(){t._setLoading("show")}).on("focusin.fileinput",function(){setTimeout(function(){a.val()||(t._setLoading("hide"),t._setFileDropZoneTitle()),r.off(n)},2500)}):t._setLoading("hide")},readFiles:function(t){this.reader=new FileReader;var i,a=this,n=a.reader,o=a.$previewContainer,s=a.$previewStatus,l=a.msgLoading,d=a.msgProgress,c=a.previewInitId,u=t.length,p=a.fileTypeSettings,f=a.allowedFileTypes,g=f?f.length:0,m=a.allowedFileExtensions,h=r.isEmpty(m)?"":m.join(", "),v=function(r,n,o,s,l){var d,c=e.extend(!0,{},a._getOutData(null,{},{},t),{id:o,index:s,fileId:l}),p={id:o,index:s,fileId:l,file:n,files:t};a._previewDefault(n,!0),d=a._getFrame(o,!0),a._setLoading("hide"),a.isAjaxUpload?setTimeout(function(){i(s+1)},a.processDelay):(a.unlock(),u=0),a.removeFromPreviewOnError&&d.length?d.remove():(a._initFileActions(),d.find(".kv-file-upload").remove()),a.isPersistentError=!0,a.isError=a.isAjaxUpload?a._showFileError(r,c):a._showError(r,p),a._updateFileDetails(u)};a.fileManager.clearImages(),e.each(t,function(e,t){var i=a.fileTypeSettings.image;i&&i(t.type)&&a.fileManager.totalImages++}),i=function(b){var w,_=a.$errorContainer,C=a.fileManager;if(b>=u)return a.unlock(),a.duplicateErrors.length&&(w="<li>"+a.duplicateErrors.join("</li><li>")+"</li>",0===_.find("ul").length?r.setHtml(_,a.errorCloseButton+"<ul>"+w+"</ul>"):_.find("ul").append(w),_.fadeIn(a.fadeDelay),a._handler(_.find(".kv-error-close"),"click",function(){_.fadeOut(a.fadeDelay)}),a.duplicateErrors=[]),a.isAjaxUpload?(a._raise("filebatchselected",[C.stack]),0!==C.count()||a.isError||a.reset()):a._raise("filebatchselected",[t]),o.removeClass("file-thumb-loading"),a._initCapStatus("valid"),void s.html("");a.lock(!0);var x,y,T,P,k,F,S,E,I,A,D,z,j=t[b],$=a._getFileId(j),U=c+"-"+$,M=p.image,R=a._getFileName(j,""),B=(j&&j.size||0)/a.bytesToKB,O="",L=r.createObjectURL(j),N=0,Z="",H=!1,W=0,V=function(){var e=!!C.loadedImages[$],t=d.setTokens({index:b+1,files:u,percent:50,name:R});setTimeout(function(){s.html(t),a._updateFileDetails(u),i(b+1)},a.processDelay),a._raise("fileloaded",[j,U,$,b,n])&&a.isAjaxUpload?e||C.add(j):e&&C.removeFile($)};if(j){if(E=C.getId(j),g>0)for(y=0;g>y;y++)F=f[y],S=a.msgFileTypes[F]||F,Z+=0===y?S:", "+S;if(R===!1)return void i(b+1);if(0===R.length)return T=a.msgInvalidFileName.replace("{name}",r.htmlEncode(r.getFileName(j),"[unknown]")),void v(T,j,U,b,E);if(r.isEmpty(m)||(O=new RegExp("\\.("+m.join("|")+")$","i")),x=B.toFixed(2),a.isAjaxUpload&&C.exists(E)||a._getFrame(U,!0).length){var q={id:U,index:b,fileId:E,file:j,files:t};return T=a.msgDuplicateFile.setTokens({name:R,size:x}),void(a.isAjaxUpload?(a.duplicateErrors.push(T),a.isDuplicateError=!0,a._raise("fileduplicateerror",[j,E,R,x,U,b]),i(b+1),a._updateFileDetails(u)):(a._showError(T,q),a.unlock(),u=0,a._clearFileInput(),a.reset(),a._updateFileDetails(u)))}if(a.maxFileSize>0&&B>a.maxFileSize)return T=a.msgSizeTooLarge.setTokens({name:R,size:x,maxSize:a.maxFileSize}),void v(T,j,U,b,E);if(null!==a.minFileSize&&B<=r.getNum(a.minFileSize))return T=a.msgSizeTooSmall.setTokens({name:R,size:x,minSize:a.minFileSize}),void v(T,j,U,b,E);if(!r.isEmpty(f)&&r.isArray(f)){for(y=0;y<f.length;y+=1)P=f[y],A=p[P],N+=A&&"function"==typeof A&&A(j.type,r.getFileName(j))?1:0;if(0===N)return T=a.msgInvalidFileType.setTokens({name:R,types:Z}),void v(T,j,U,b,E)}if(0===N&&!r.isEmpty(m)&&r.isArray(m)&&!r.isEmpty(O)&&(k=r.compare(R,O),N+=r.isEmpty(k)?0:k.length,0===N))return T=a.msgInvalidFileExtension.setTokens({name:R,extensions:h}),void v(T,j,U,b,E);if(!a._canPreview(j))return I=a.isAjaxUpload&&a._raise("filebeforeload",[j,b,n]),a.isAjaxUpload&&I&&C.add(j),a.showPreview&&I&&(o.addClass("file-thumb-loading"),a._initCapStatus("processing"),a._previewDefault(j),a._initFileActions()),void setTimeout(function(){I&&a._updateFileDetails(u),i(b+1),a._raise("fileloaded",[j,U,$,b])},10);D=M(j.type,R),s.html(l.replace("{index}",b+1).replace("{files}",u)),o.addClass("file-thumb-loading"),a._initCapStatus("processing"),n.onerror=function(e){a._errorHandler(e,R)},n.onload=function(t){var i,l,d,c,u,f,g=[],m=function(){var e=new FileReader;e.onerror=function(e){a._errorHandler(e,R)},e.onload=function(e){return a.isAjaxUpload&&!a._raise("filebeforeload",[j,b,n])?(H=!0,a._resetCaption(),n.abort(),s.html(""),o.removeClass("file-thumb-loading"),a._initCapStatus("valid"),void a.enable()):(a._previewFile(b,j,e,L,l),a._initFileActions(),void V())},e.readAsDataURL(j)};if(l={name:R,type:j.type},e.each(p,function(e,t){"object"!==e&&"other"!==e&&"function"==typeof t&&t(j.type,R)&&W++}),0===W){for(d=new Uint8Array(t.target.result),y=0;y<d.length;y++)c=d[y].toString(16),g.push(c);if(i=g.join("").toLowerCase().substring(0,8),f=r.getMimeType(i,"",""),r.isEmpty(f)&&(u=r.arrayBuffer2String(n.result),f=r.isSvg(u)?"image/svg+xml":r.getMimeType(i,u,j.type)),l={name:R,type:f},D=M(f,""))return void m(z)}return a.isAjaxUpload&&!a._raise("filebeforeload",[j,b,n])?(H=!0,a._resetCaption(),n.abort(),s.html(""),o.removeClass("file-thumb-loading"),a._initCapStatus("valid"),void a.enable()):(a._previewFile(b,j,t,L,l),a._initFileActions(),void V())},n.onprogress=function(e){if(e.lengthComputable){var t=e.loaded/e.total*100,i=Math.ceil(t);T=d.setTokens({index:b+1,files:u,percent:i,name:R}),setTimeout(function(){H||s.html(T)},a.processDelay)}},D?n.readAsDataURL(j):n.readAsArrayBuffer(j)}},i(0),a._updateFileDetails(u)},lock:function(e){var t=this,i=t.$container;return t._resetErrors(),t.disable(),!e&&t.showCancel&&i.find(".fileinput-cancel").show(),!e&&t.showPause&&i.find(".fileinput-pause").show(),t._initCapStatus("processing"),t._raise("filelock",[t.fileManager.stack,t._getExtraData()]),t.$element},unlock:function(e){var t=this,i=t.$container;return e===a&&(e=!0),t.enable(),i.removeClass("is-locked"),t.showCancel&&i.find(".fileinput-cancel").hide(),t.showPause&&i.find(".fileinput-pause").hide(),e&&t._resetFileStack(),t._initCapStatus(),t._raise("fileunlock",[t.fileManager.stack,t._getExtraData()]),t.$element},resume:function(){var e=this,t=e.fileManager,i=!1,a=e.resumableManager;return t.bpsLog=[],t.bps=0,e.enableResumableUpload?(e.paused?e._toggleResumableProgress(e.progressPauseTemplate,e.msgUploadResume):i=!0,e.paused=!1,i&&e._toggleResumableProgress(e.progressInfoTemplate,e.msgUploadBegin),setTimeout(function(){a.upload()},e.processDelay),e.$element):e.$element},paste:function(e){var t=this,i=e.originalEvent,a=i.clipboardData&&i.clipboardData.files||null;return a&&t._dropFiles(e,a),t.$element},pause:function(){var t,i=this,a=i.resumableManager,r=i.ajaxRequests,n=r.length,o=a.getProgress(),s=i.fileActionSettings,l=i.taskManager,d=l.getPool(a.id);if(!i.enableResumableUpload)return i.$element;if(d&&d.cancel(),i._raise("fileuploadpaused",[i.fileManager,a]),n>0)for(t=0;n>t;t+=1)i.paused=!0,r[t].abort();return i.showPreview&&i._getThumbs().each(function(){var t,a=e(this),r=i._getLayoutTemplate("stats"),n=a.find(".file-upload-indicator");a.removeClass("file-uploading"),n.attr("title")===s.indicatorLoadingTitle&&(i._setThumbStatus(a,"Paused"),t=r.setTokens({pendingTime:i.msgPaused,uploadSpeed:""}),i.paused=!0,i._setProgress(o,a.find(".file-thumb-progress"),o+"%",t)),i._getThumbFile(a)||a.find(".kv-file-remove").removeClass("disabled").removeAttr("disabled")}),i._setProgress(101,i.$progress,i.msgPaused),i.$element},cancel:function(){var t,i=this,r=i.ajaxRequests,n=i.resumableManager,o=i.taskManager,s=n?o.getPool(n.id):a,l=r.length;if(i.enableResumableUpload&&s?(s.cancel().done(function(){i._setProgressCancelled()}),n.reset(),i._raise("fileuploadcancelled",[i.fileManager,n])):i._raise("fileuploadcancelled",[i.fileManager]),i._initAjax(),l>0)for(t=0;l>t;t+=1)i.cancelling=!0,r[t].abort();return i._getThumbs().each(function(){var t=e(this),a=t.find(".file-thumb-progress");t.removeClass("file-uploading"),i._setProgress(0,a),a.hide(),i._getThumbFile(t)||(t.find(".kv-file-upload").removeClass("disabled").removeAttr("disabled"),t.find(".kv-file-remove").removeClass("disabled").removeAttr("disabled")),i.unlock()}),setTimeout(function(){i._setProgressCancelled()},i.processDelay),i.$element},clear:function(){var t,i=this;if(i._raise("fileclear"))return i.$btnUpload.removeAttr("disabled"),i._getThumbs().find("video,audio,img").each(function(){r.cleanMemory(e(this))}),i._clearFileInput(),i._resetUpload(),i.clearFileStack(),i.isDuplicateError=!1,i.isPersistentError=!1,i._resetErrors(!0),i._hasInitialPreview()?(i._showFileIcon(),i._resetPreview(),i._initPreviewActions(),i.$container.removeClass("file-input-new")):(i._getThumbs().each(function(){i._clearObjects(e(this))}),i.isAjaxUpload&&(i.previewCache.data={}),i.$preview.html(""),t=!i.overwriteInitial&&i.initialCaption.length>0?i.initialCaption:"",i.$caption.attr("title","").val(t),r.addCss(i.$container,"file-input-new"),i._validateDefaultPreview()),0===i.$container.find(r.FRAMES).length&&(i._initCaption()||i.$captionContainer.removeClass("icon-visible")),i._hideFileIcon(),i.focusCaptionOnClear&&i.$captionContainer.focus(),i._setFileDropZoneTitle(),i._raise("filecleared"),i.$element},reset:function(){var e=this;if(e._raise("filereset"))return e.lastProgress=0,e._resetPreview(),e.$container.find(".fileinput-filename").text(""),r.addCss(e.$container,"file-input-new"),e.getFrames().length&&e.$container.removeClass("file-input-new"),e.clearFileStack(),e._setFileDropZoneTitle(),e.$element},disable:function(){var e=this,t=e.$container;return e.isDisabled=!0,e._raise("filedisabled"),e.$element.attr("disabled","disabled"),t.addClass("is-locked"),r.addCss(t.find(".btn-file"),"disabled"),t.find(".kv-fileinput-caption").addClass("file-caption-disabled"),t.find(".fileinput-remove, .fileinput-upload, .file-preview-frame button").attr("disabled",!0),e._initDragDrop(),e.$element},enable:function(){var e=this,t=e.$container;return e.isDisabled=!1,e._raise("fileenabled"),e.$element.removeAttr("disabled"),t.removeClass("is-locked"),t.find(".kv-fileinput-caption").removeClass("file-caption-disabled"),t.find(".fileinput-remove, .fileinput-upload, .file-preview-frame button").removeAttr("disabled"),t.find(".btn-file").removeClass("disabled"),e._initDragDrop(),e.$element},upload:function(){var t,i,a=this,n=a.fileManager,o=n.count(),s=!e.isEmptyObject(a._getExtraData());if(n.bpsLog=[],n.bps=0,a.isAjaxUpload&&!a.isDisabled&&a._isFileSelectionValid(o)){if(a.lastProgress=0,a._resetUpload(),0===o&&!s)return void a._showFileError(a.msgUploadEmpty);if(a.cancelling=!1,a._showProgress(),a.lock(),0===o&&s)return a._setProgress(2),void a._uploadExtraOnly();if(a.enableResumableUpload)return a.resume();if(a.uploadAsync||a.enableResumableUpload){if(i=a._getOutData(null),!a._checkBatchPreupload(i))return;a.fileBatchCompleted=!1,a.uploadCache=[],e.each(a.getFileStack(),function(e){var t=a._getThumbId(e);a.uploadCache.push({id:t,content:null,config:null,tags:null,append:!0})}),a.$preview.find(".file-preview-initial").removeClass(r.SORT_CSS),a._initSortable()}return a._setProgress(2),a.hasInitData=!1,a.uploadAsync?(t=0,void e.each(a.getFileStack(),function(e){a._uploadSingle(t,e,!0),t++})):(a._uploadBatch(),a.$element)}},destroy:function(){var a=this,r=a.$form,n=a.$container,o=a.$element,s=a.namespace;return e(i).off(s),e(t).off(s),r&&r.length&&r.off(s),a.isAjaxUpload&&a._clearFileInput(),a._cleanup(),a._initPreviewCache(),o.insertBefore(n).off(s).removeData(),n.off().remove(),o},refresh:function(t){var i=this,a=i.$element;return t="object"!=typeof t||r.isEmpty(t)?i.options:e.extend(!0,{},i.options,t),i._init(t,!0),i._listen(),a},zoom:function(e){var t=this,i=t._getFrame(e);t._showModal(i)},getExif:function(e){var t=this,i=t._getFrame(e);return i&&i.data("exif")||null},getFrames:function(t){var i,a=this;return t=t||"",i=a.$preview.find(r.FRAMES+t),a.reversePreviewOrder&&(i=e(i.get().reverse())),i},getPreview:function(){var e=this;return{content:e.initialPreview,config:e.initialPreviewConfig,tags:e.initialPreviewThumbTags}}},e.fn.fileinput=function(t){if(r.hasFileAPISupport()||r.isIE(9)){var i=Array.apply(null,arguments),a=[];switch(i.shift(),this.each(function(){var o,s=e(this),l=s.data("fileinput"),d="object"==typeof t&&t,c=d.theme||s.data("theme"),u={},p={},f=d.language||s.data("language")||e.fn.fileinput.defaults.language||"en";l||(c&&(p=e.fn.fileinputThemes[c]||{}),"en"===f||r.isEmpty(e.fn.fileinputLocales[f])||(u=e.fn.fileinputLocales[f]||{}),o=e.extend(!0,{},e.fn.fileinput.defaults,p,e.fn.fileinputLocales.en,u,d,s.data()),l=new n(this,o),s.data("fileinput",l)),"string"==typeof t&&a.push(l[t].apply(l,i))}),a.length){case 0:return this;case 1:return a[0];default:return a}}};var s='class="kv-preview-data file-preview-pdf" src="{renderer}?file={data}" {style}',l="btn btn-sm btn-kv "+r.defaultButtonCss(),d="btn "+r.defaultButtonCss();e.fn.fileinput.defaults={language:"en",bytesToKB:1024,showCaption:!0,showBrowse:!0,showPreview:!0,showRemove:!0,showUpload:!0,showUploadStats:!0,showCancel:null,showPause:null,showClose:!0,showUploadedThumbs:!0,showConsoleLogs:!1,browseOnZoneClick:!1,autoReplace:!1,showDescriptionClose:!0,autoOrientImage:function(){var e=t.navigator.userAgent,i=!!e.match(/WebKit/i),a=!!e.match(/iP(od|ad|hone)/i),r=a&&i&&!e.match(/CriOS/i);return!r},autoOrientImageInitial:!0,showExifErrorLog:!1,required:!1,rtl:!1,hideThumbnailContent:!1,encodeUrl:!0,focusCaptionOnBrowse:!0,focusCaptionOnClear:!0,generateFileId:null,previewClass:"",captionClass:"",frameClass:"krajee-default",mainClass:"",inputGroupClass:"",mainTemplate:null,fileSizeGetter:null,initialCaption:"",initialPreview:[],initialPreviewDelimiter:"*$$*",initialPreviewAsData:!1,initialPreviewFileType:"image",initialPreviewConfig:[],initialPreviewThumbTags:[],previewThumbTags:{},initialPreviewShowDelete:!0,initialPreviewDownloadUrl:"",removeFromPreviewOnError:!1,deleteUrl:"",deleteExtraData:{},overwriteInitial:!0,sanitizeZoomCache:function(e){var t=r.createElement(e);return t.find("input,textarea,select,datalist,form,.file-thumbnail-footer").remove(),t.html()},previewZoomButtonIcons:{prev:'<i class="bi-chevron-left"></i>',next:'<i class="bi-chevron-right"></i>',toggleheader:'<i class="bi-arrows-expand"></i>',fullscreen:'<i class="bi-arrows-fullscreen"></i>',borderless:'<i class="bi-arrows-angle-expand"></i>',close:'<i class="bi-x-lg"></i>'},previewZoomButtonClasses:{prev:"btn btn-default btn-outline-secondary btn-navigate",next:"btn btn-default btn-outline-secondary btn-navigate",toggleheader:l,fullscreen:l,borderless:l,close:l},previewTemplates:{},previewContentTemplates:{},preferIconicPreview:!1,preferIconicZoomPreview:!1,allowedFileTypes:null,allowedFileExtensions:null,allowedPreviewTypes:a,allowedPreviewMimeTypes:null,allowedPreviewExtensions:null,disabledPreviewTypes:a,disabledPreviewExtensions:["msi","exe","com","zip","rar","app","vb","scr"],disabledPreviewMimeTypes:null,defaultPreviewContent:null,customLayoutTags:{},customPreviewTags:{},previewFileIcon:'<i class="bi-file-earmark-fill"></i>',previewFileIconClass:"file-other-icon",previewFileIconSettings:{},previewFileExtSettings:{},buttonLabelClass:"hidden-xs",browseIcon:'<i class="bi-folder2-open"></i> ',browseClass:"btn btn-primary",removeIcon:'<i class="bi-trash"></i>',removeClass:d,cancelIcon:'<i class="bi-slash-circle"></i>',cancelClass:d,pauseIcon:'<i class="bi-pause-fill"></i>',pauseClass:d,uploadIcon:'<i class="bi-upload"></i>',uploadClass:d,uploadUrl:null,uploadUrlThumb:null,uploadAsync:!0,uploadParamNames:{chunkCount:"chunkCount",chunkIndex:"chunkIndex",chunkSize:"chunkSize",chunkSizeStart:"chunkSizeStart",chunksUploaded:"chunksUploaded",fileBlob:"fileBlob",fileId:"fileId",fileName:"fileName",fileRelativePath:"fileRelativePath",fileSize:"fileSize",retryCount:"retryCount"},maxAjaxThreads:5,fadeDelay:800,processDelay:100,bitrateUpdateDelay:500,queueDelay:10,progressDelay:0,enableResumableUpload:!1,resumableUploadOptions:{fallback:null,testUrl:null,chunkSize:2048,maxThreads:4,maxRetries:3,showErrorLog:!0,retainErrorHistory:!0,skipErrorsAndProceed:!1},uploadExtraData:{},zoomModalHeight:480,minImageWidth:null,minImageHeight:null,maxImageWidth:null,maxImageHeight:null,resizeImage:!1,resizePreference:"width",resizeQuality:.92,resizeDefaultImageType:"image/jpeg",resizeIfSizeMoreThan:0,minFileSize:-1,maxFileSize:0,maxFilePreviewSize:25600,minFileCount:0,maxFileCount:0,maxTotalFileCount:0,validateInitialCount:!1,msgValidationErrorClass:"text-danger",msgValidationErrorIcon:'<i class="bi-exclamation-circle-fill"></i> ',msgErrorClass:"file-error-message",progressThumbClass:"progress-bar progress-bar-striped active progress-bar-animated",progressClass:"progress-bar bg-success progress-bar-success progress-bar-striped active progress-bar-animated",progressInfoClass:"progress-bar bg-info progress-bar-info progress-bar-striped active progress-bar-animated",progressCompleteClass:"progress-bar bg-success progress-bar-success",progressPauseClass:"progress-bar bg-primary progress-bar-primary progress-bar-striped active progress-bar-animated",progressErrorClass:"progress-bar bg-danger progress-bar-danger",progressUploadThreshold:99,previewFileType:"image",elCaptionContainer:null,elCaptionText:null,elPreviewContainer:null,elPreviewImage:null,elPreviewStatus:null,elErrorContainer:null,errorCloseButton:a,slugCallback:null,dropZoneEnabled:!0,dropZoneTitleClass:"file-drop-zone-title",fileActionSettings:{},otherActionButtons:"",textEncoding:"UTF-8",preProcessUpload:null,ajaxSettings:{},ajaxDeleteSettings:{},showAjaxErrorDetails:!0,mergeAjaxCallbacks:!1,mergeAjaxDeleteCallbacks:!1,retryErrorUploads:!0,reversePreviewOrder:!1,usePdfRenderer:function(){var e=!!t.MSInputMethodContext&&!!i.documentMode;return!!navigator.userAgent.match(/(iPod|iPhone|iPad|Android)/i)||e},pdfRendererUrl:"",pdfRendererTemplate:"<iframe "+s+"></iframe>",tabIndexConfig:{browse:500,remove:500,upload:500,cancel:null,pause:null,modal:-1}},e.fn.fileinputLocales.en={sizeUnits:["B","KB","MB","GB","TB","PB","EB","ZB","YB"],bitRateUnits:["B/s","KB/s","MB/s","GB/s","TB/s","PB/s","EB/s","ZB/s","YB/s"],fileSingle:"file",filePlural:"files",browseLabel:"Browse …",removeLabel:"Remove",removeTitle:"Clear all unprocessed files",cancelLabel:"Cancel",cancelTitle:"Abort ongoing upload",pauseLabel:"Pause",pauseTitle:"Pause ongoing upload",uploadLabel:"Upload",uploadTitle:"Upload selected files",msgNo:"No",msgNoFilesSelected:"No files selected",msgCancelled:"Cancelled",msgPaused:"Paused",msgPlaceholder:"Select {files} ...",msgZoomModalHeading:"Detailed Preview",msgFileRequired:"You must select a file to upload.",msgSizeTooSmall:'File "{name}" (<b>{size} KB</b>) is too small and must be larger than <b>{minSize} KB</b>.',msgSizeTooLarge:'File "{name}" (<b>{size} KB</b>) exceeds maximum allowed upload size of <b>{maxSize} KB</b>.',msgFilesTooLess:"You must select at least <b>{n}</b> {files} to upload.",msgFilesTooMany:"Number of files selected for upload <b>({n})</b> exceeds maximum allowed limit of <b>{m}</b>.",msgTotalFilesTooMany:"You can upload a maximum of <b>{m}</b> files (<b>{n}</b> files detected).",msgFileNotFound:'File "{name}" not found!',msgFileSecured:'Security restrictions prevent reading the file "{name}".',msgFileNotReadable:'File "{name}" is not readable.',msgFilePreviewAborted:'File preview aborted for "{name}".',msgFilePreviewError:'An error occurred while reading the file "{name}".',msgInvalidFileName:'Invalid or unsupported characters in file name "{name}".',msgInvalidFileType:'Invalid type for file "{name}". Only "{types}" files are supported.',msgInvalidFileExtension:'Invalid extension for file "{name}". Only "{extensions}" files are supported.',msgFileTypes:{image:"image",html:"HTML",text:"text",video:"video",audio:"audio",flash:"flash",pdf:"PDF",object:"object"},msgUploadAborted:"The file upload was aborted",msgUploadThreshold:"Processing …",msgUploadBegin:"Initializing …",msgUploadEnd:"Done",msgUploadResume:"Resuming upload …",msgUploadEmpty:"No valid data available for upload.",msgUploadError:"Upload Error",msgDeleteError:"Delete Error",msgProgressError:"Error",msgValidationError:"Validation Error",msgLoading:"Loading file {index} of {files} …",msgProgress:"Loading file {index} of {files} - {name} - {percent}% completed.",msgSelected:"{n} {files} selected",msgProcessing:"Processing ...",msgFoldersNotAllowed:"Drag & drop files only! {n} folder(s) dropped were skipped.",msgImageWidthSmall:'Width of image file "{name}" must be at least {size} px.',msgImageHeightSmall:'Height of image file "{name}" must be at least {size} px.',msgImageWidthLarge:'Width of image file "{name}" cannot exceed {size} px.',msgImageHeightLarge:'Height of image file "{name}" cannot exceed {size} px.',msgImageResizeError:"Could not get the image dimensions to resize.",msgImageResizeException:"Error while resizing the image.<pre>{errors}</pre>",msgAjaxError:"Something went wrong with the {operation} operation. Please try again later!",msgAjaxProgressError:"{operation} failed",msgDuplicateFile:'File "{name}" of same size "{size} KB" has already been selected earlier. Skipping duplicate selection.',msgResumableUploadRetriesExceeded:"Upload aborted beyond <b>{max}</b> retries for file <b>{file}</b>! Error Details: <pre>{error}</pre>",msgPendingTime:"{time} remaining",msgCalculatingTime:"calculating time remaining",ajaxOperations:{deleteThumb:"file delete",uploadThumb:"file upload",uploadBatch:"batch file upload",uploadExtra:"form data upload"
- },dropZoneTitle:"Drag & drop files here …",dropZoneClickTitle:"<br>(or click to select {files})",previewZoomButtonTitles:{prev:"View previous file",next:"View next file",toggleheader:"Toggle header",fullscreen:"Toggle full screen",borderless:"Toggle borderless mode",close:"Close detailed preview"}},e.fn.fileinput.Constructor=n,e(i).ready(function(){var t=e("input.file[type=file]");t.length&&t.fileinput()})});
|