(function(n){typeof define=="function"&&define.amd?define(["jquery"],n):n(jQuery)})(function(n,t){var r=0,i=Array.prototype.slice,u=n.cleanData;n.cleanData=function(t){for(var i=0,r;(r=t[i])!=null;i++)try{n(r).triggerHandler("remove")}catch(f){}u(t)};n.widget=function(t,i,r){var e,o,u,s,f=t.split(".")[0];t=t.split(".")[1];e=f+"-"+t;r||(r=i,i=n.Widget);n.expr[":"][e.toLowerCase()]=function(t){return!!n.data(t,e)};n[f]=n[f]||{};o=n[f][t];u=n[f][t]=function(n,t){if(!this._createWidget)return new u(n,t);arguments.length&&this._createWidget(n,t)};n.extend(u,o,{version:r.version,_proto:n.extend({},r),_childConstructors:[]});s=new i;s.options=n.widget.extend({},s.options);n.each(r,function(t,u){n.isFunction(u)&&(r[t]=function(){var n=function(){return i.prototype[t].apply(this,arguments)},r=function(n){return i.prototype[t].apply(this,n)};return function(){var i=this._super,f=this._superApply,t;return this._super=n,this._superApply=r,t=u.apply(this,arguments),this._super=i,this._superApply=f,t}}())});u.prototype=n.widget.extend(s,{widgetEventPrefix:s.widgetEventPrefix||t},r,{constructor:u,namespace:f,widgetName:t,widgetBaseClass:e,widgetFullName:e});o?(n.each(o._childConstructors,function(t,i){var r=i.prototype;n.widget(r.namespace+"."+r.widgetName,u,i._proto)}),delete o._childConstructors):i._childConstructors.push(u);n.widget.bridge(t,u)};n.widget.extend=function(r){for(var o=i.call(arguments,1),e=0,s=o.length,u,f;e<s;e++)for(u in o[e])f=o[e][u],o[e].hasOwnProperty(u)&&f!==t&&(r[u]=n.isPlainObject(f)?n.isPlainObject(r[u])?n.widget.extend({},r[u],f):n.widget.extend({},f):f);return r};n.widget.bridge=function(r,u){var f=u.prototype.widgetFullName;n.fn[r]=function(e){var h=typeof e=="string",o=i.call(arguments,1),s=this;return e=!h&&o.length?n.widget.extend.apply(null,[e].concat(o)):e,h?this.each(function(){var i,u=n.data(this,f);return u?!n.isFunction(u[e])||e.charAt(0)==="_"?n.error("no such method '"+e+"' for "+r+" widget instance"):(i=u[e].apply(u,o),i!==u&&i!==t?(s=i&&i.jquery?s.pushStack(i.get()):i,!1):void 0):n.error("cannot call methods on "+r+" prior to initialization; attempted to call method '"+e+"'")}):this.each(function(){var t=n.data(this,f);t?t.option(e||{})._init():new u(e,this)}),s}};n.Widget=function(){};n.Widget._childConstructors=[];n.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,i){i=n(i||this.defaultElement||this)[0];this.element=n(i);this.uuid=r++;this.eventNamespace="."+this.widgetName+this.uuid;this.options=n.widget.extend({},this.options,this._getCreateOptions(),t);this.bindings=n();this.hoverable=n();this.focusable=n();i!==this&&(n.data(i,this.widgetName,this),n.data(i,this.widgetFullName,this),this._on(this.element,{remove:function(n){n.target===i&&this.destroy()}}),this.document=n(i.style?i.ownerDocument:i.document||i),this.window=n(this.document[0].defaultView||this.document[0].parentWindow));this._create();this._trigger("create",null,this._getCreateEventData());this._init()},_getCreateOptions:n.noop,_getCreateEventData:n.noop,_create:n.noop,_init:n.noop,destroy:function(){this._destroy();this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(n.camelCase(this.widgetFullName));this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled");this.bindings.unbind(this.eventNamespace);this.hoverable.removeClass("ui-state-hover");this.focusable.removeClass("ui-state-focus")},_destroy:n.noop,widget:function(){return this.element},option:function(i,r){var o=i,u,f,e;if(arguments.length===0)return n.widget.extend({},this.options);if(typeof i=="string")if(o={},u=i.split("."),i=u.shift(),u.length){for(f=o[i]=n.widget.extend({},this.options[i]),e=0;e<u.length-1;e++)f[u[e]]=f[u[e]]||{},f=f[u[e]];if(i=u.pop(),r===t)return f[i]===t?null:f[i];f[i]=r}else{if(r===t)return this.options[i]===t?null:this.options[i];o[i]=r}return this._setOptions(o),this},_setOptions:function(n){for(var t in n)this._setOption(t,n[t]);return this},_setOption:function(n,t){return this.options[n]=t,n==="disabled"&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!t).attr("aria-disabled",t),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(t,i){var u,r=this;i?(t=u=n(t),this.bindings=this.bindings.add(t)):(i=t,t=this.element,u=this.widget());n.each(i,function(i,f){function e(){if(r.options.disabled!==!0&&!n(this).hasClass("ui-state-disabled"))return(typeof f=="string"?r[f]:f).apply(r,arguments)}typeof f!="string"&&(e.guid=f.guid=f.guid||e.guid||n.guid++);var o=i.match(/^(\w+)\s*(.*)$/),s=o[1]+r.eventNamespace,h=o[2];h?u.delegate(h,s,e):t.bind(s,e)})},_off:function(n,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace;n.unbind(t).undelegate(t)},_delay:function(n,t){function r(){return(typeof n=="string"?i[n]:n).apply(i,arguments)}var i=this;return setTimeout(r,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t);this._on(t,{mouseenter:function(t){n(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){n(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t);this._on(t,{focusin:function(t){n(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){n(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,r){var u,f,e=this.options[t];if(r=r||{},i=n.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],f=i.originalEvent,f)for(u in f)u in i||(i[u]=f[u]);return this.element.trigger(i,r),!(n.isFunction(e)&&e.apply(this.element[0],[i].concat(r))===!1||i.isDefaultPrevented())}};n.each({show:"fadeIn",hide:"fadeOut"},function(t,i){n.Widget.prototype["_"+t]=function(r,u,f){typeof u=="string"&&(u={effect:u});var o,e=u?u===!0||typeof u=="number"?i:u.effect||i:t;u=u||{};typeof u=="number"&&(u={duration:u});o=!n.isEmptyObject(u);u.complete=f;u.delay&&r.delay(u.delay);o&&n.effects&&(n.effects.effect[e]||n.uiBackCompat!==!1&&n.effects[e])?r[t](u):e!==t&&r[e]?r[e](u.duration,u.easing,f):r.queue(function(i){n(this)[t]();f&&f.call(r[0]);i()})}});n.uiBackCompat!==!1&&(n.Widget.prototype._getCreateOptions=function(){return n.metadata&&n.metadata.get(this.element[0])[this.widgetName]})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery"],n):typeof exports=="object"?n(require("jquery")):n(window.jQuery)}(function(n){"use strict";var t=0;n.ajaxTransport("iframe",function(i){if(i.async){var e=i.initialIframeSrc||"javascript:false;",r,u,f;return{send:function(o,s){r=n('<form style="display:none;"><\/form>');r.attr("accept-charset",i.formAcceptCharset);f=/\?/.test(i.url)?"&":"?";i.type==="DELETE"?(i.url=i.url+f+"_method=DELETE",i.type="POST"):i.type==="PUT"?(i.url=i.url+f+"_method=PUT",i.type="POST"):i.type==="PATCH"&&(i.url=i.url+f+"_method=PATCH",i.type="POST");t+=1;u=n('<iframe src="'+e+'" name="iframe-transport-'+t+'"><\/iframe>').bind("load",function(){var t,f=n.isArray(i.paramName)?i.paramName:[i.paramName];u.unbind("load").bind("load",function(){var t;try{if(t=u.contents(),!t.length||!t[0].firstChild)throw new Error;}catch(i){t=undefined}s(200,"success",{iframe:t});n('<iframe src="'+e+'"><\/iframe>').appendTo(r);window.setTimeout(function(){r.remove()},0)});r.prop("target",u.prop("name")).prop("action",i.url).prop("method",i.type);i.formData&&n.each(i.formData,function(t,i){n('<input type="hidden"/>').prop("name",i.name).val(i.value).appendTo(r)});i.fileInput&&i.fileInput.length&&i.type==="POST"&&(t=i.fileInput.clone(),i.fileInput.after(function(n){return t[n]}),i.paramName&&i.fileInput.each(function(t){n(this).prop("name",f[t]||i.paramName)}),r.append(i.fileInput).prop("enctype","multipart/form-data").prop("encoding","multipart/form-data"),i.fileInput.removeAttr("form"));r.submit();t&&t.length&&i.fileInput.each(function(i,r){var u=n(t[i]);n(r).prop("name",u.prop("name")).attr("form",u.attr("form"));u.replaceWith(r)})});r.append(u).appendTo(document.body)},abort:function(){u&&u.unbind("load").prop("src",e);r&&r.remove()}}}});n.ajaxSetup({converters:{"iframe text":function(t){return t&&n(t[0].body).text()},"iframe json":function(t){return t&&n.parseJSON(n(t[0].body).text())},"iframe html":function(t){return t&&n(t[0].body).html()},"iframe xml":function(t){var i=t&&t[0];return i&&n.isXMLDoc(i)?i:n.parseXML(i.XMLDocument&&i.XMLDocument.xml||n(i.body).html())},"iframe script":function(t){return t&&n.globalEval(n(t[0].body).text())}}})}),function(n){"use strict";var t=function(n,i){var r=/[^\w\-\.:]/.test(n)?new Function(t.arg+",tmpl","var _e=tmpl.encode"+t.helper+",_s='"+n.replace(t.regexp,t.func)+"';return _s;"):t.cache[n]=t.cache[n]||t(t.load(n));return i?r(i,t):function(n){return r(n,t)}};t.cache={};t.load=function(n){return document.getElementById(n).innerHTML};t.regexp=/([\s'\\])(?![^%]*%\})|(?:\{%(=|#)([\s\S]+?)%\})|(\{%)|(%\})/g;t.func=function(n,t,i,r,u,f){return t?{"\n":"\\n","\r":"\\r","\t":"\\t"," ":" "}[n]||"\\"+n:i?i==="="?"'+_e("+r+")+'":"'+("+r+"||'')+'":u?"';":f?"_s+='":void 0};t.encReg=/[<>&"'\x00]/g;t.encMap={"<":"&lt;",">":"&gt;","&":"&amp;",'"':"&quot;","'":"&#39;"};t.encode=function(n){return String(n||"").replace(t.encReg,function(n){return t.encMap[n]||""})};t.arg="o";t.helper=",print=function(s,e){_s+=e&&(s||'')||_e(s);},include=function(s,d){_s+=tmpl(s,d);}";typeof define=="function"&&define.amd?define(function(){return t}):n.tmpl=t}(this),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","jquery.ui.widget"],n):n(window.jQuery)}(function(n){"use strict";n.support.xhrFileUpload=!!(window.XMLHttpRequestUpload&&window.FileReader);n.support.xhrFormDataFileUpload=!!window.FormData;n.widget("blueimp.fileupload",{options:{dropZone:n(document),pasteZone:n(document),fileInput:undefined,replaceFileInput:!0,paramName:undefined,singleFileUploads:!0,limitMultiFileUploads:undefined,sequentialUploads:!1,limitConcurrentUploads:undefined,forceIframeTransport:!1,redirect:undefined,redirectParamName:undefined,postMessage:undefined,multipart:!0,maxChunkSize:undefined,uploadedBytes:undefined,recalculateProgress:!0,progressInterval:100,bitrateInterval:500,formData:function(n){return n.serializeArray()},add:function(n,t){t.submit()},processData:!1,contentType:!1,cache:!1},_refreshOptionsList:["fileInput","dropZone","pasteZone","multipart","forceIframeTransport"],_BitrateTimer:function(){this.timestamp=+new Date;this.loaded=0;this.bitrate=0;this.getBitrate=function(n,t,i){var r=n-this.timestamp;return(!this.bitrate||!i||r>i)&&(this.bitrate=(t-this.loaded)*(1e3/r)*8,this.loaded=t,this.timestamp=n),this.bitrate}},_isXHRUpload:function(t){return!t.forceIframeTransport&&(!t.multipart&&n.support.xhrFileUpload||n.support.xhrFormDataFileUpload)},_getFormData:function(t){var i;return typeof t.formData=="function"?t.formData(t.form):n.isArray(t.formData)?t.formData:t.formData?(i=[],n.each(t.formData,function(n,t){i.push({name:n,value:t})}),i):[]},_getTotal:function(t){var i=0;return n.each(t,function(n,t){i+=t.size||1}),i},_onProgress:function(n,t){if(n.lengthComputable){var i=+new Date,u,r;if(t._time&&t.progressInterval&&i-t._time<t.progressInterval&&n.loaded!==n.total)return;t._time=i;u=t.total||this._getTotal(t.files);r=parseInt(n.loaded/n.total*(t.chunkSize||u),10)+(t.uploadedBytes||0);this._loaded+=r-(t.loaded||t.uploadedBytes||0);t.lengthComputable=!0;t.loaded=r;t.total=u;t.bitrate=t._bitrateTimer.getBitrate(i,r,t.bitrateInterval);this._trigger("progress",n,t);this._trigger("progressall",n,{lengthComputable:!0,loaded:this._loaded,total:this._total,bitrate:this._bitrateTimer.getBitrate(i,this._loaded,t.bitrateInterval)})}},_initProgressListener:function(t){var r=this,i=t.xhr?t.xhr():n.ajaxSettings.xhr();i.upload&&(n(i.upload).bind("progress",function(n){var i=n.originalEvent;n.lengthComputable=i.lengthComputable;n.loaded=i.loaded;n.total=i.total;r._onProgress(n,t)}),t.xhr=function(){return i})},_initXHRData:function(t){var i,r=t.files[0],f=t.multipart||!n.support.xhrFileUpload,u=t.paramName[0];t.headers=t.headers||{};t.contentRange&&(t.headers["Content-Range"]=t.contentRange);f?n.support.xhrFormDataFileUpload&&(t.postMessage?(i=this._getFormData(t),t.blob?i.push({name:u,value:t.blob}):n.each(t.files,function(n,r){i.push({name:t.paramName[n]||u,value:r})})):(t.formData instanceof FormData?i=t.formData:(i=new FormData,n.each(this._getFormData(t),function(n,t){i.append(t.name,t.value)})),t.blob?(t.headers["Content-Disposition"]='attachment; filename="'+encodeURI(r.name)+'"',i.append(u,t.blob,r.name)):n.each(t.files,function(n,r){(window.Blob&&r instanceof Blob||window.File&&r instanceof File)&&i.append(t.paramName[n]||u,r,r.name)})),t.data=i):(t.headers["Content-Disposition"]='attachment; filename="'+encodeURI(r.name)+'"',t.contentType=r.type,t.data=t.blob||r);t.blob=null},_initIframeSettings:function(t){t.dataType="iframe "+(t.dataType||"");t.formData=this._getFormData(t);t.redirect&&n("<a><\/a>").prop("href",t.url).prop("host")!==location.host&&t.formData.push({name:t.redirectParamName||"redirect",value:t.redirect})},_initDataSettings:function(n){this._isXHRUpload(n)?(this._chunkedUpload(n,!0)||(n.data||this._initXHRData(n),this._initProgressListener(n)),n.postMessage&&(n.dataType="postmessage "+(n.dataType||""))):this._initIframeSettings(n,"iframe")},_getParamName:function(t){var r=n(t.fileInput),i=t.paramName;return i?n.isArray(i)||(i=[i]):(i=[],r.each(function(){for(var t=n(this),u=t.prop("name")||"files[]",r=(t.prop("files")||[1]).length;r;)i.push(u),r-=1}),i.length||(i=[r.prop("name")||"files[]"])),i},_initFormSettings:function(t){t.form&&t.form.length||(t.form=n(t.fileInput.prop("form")),t.form.length||(t.form=n(this.options.fileInput.prop("form"))));t.paramName=this._getParamName(t);t.url||(t.url=t.form.prop("action")||location.href);t.type=(t.type||t.form.prop("method")||"").toUpperCase();t.type!=="POST"&&t.type!=="PUT"&&(t.type="POST");t.formAcceptCharset||(t.formAcceptCharset=t.form.attr("accept-charset"))},_getAJAXSettings:function(t){var i=n.extend({},this.options,t);return this._initFormSettings(i),this._initDataSettings(i),i},_enhancePromise:function(n){return n.success=n.done,n.error=n.fail,n.complete=n.always,n},_getXHRPromise:function(t,i,r){var u=n.Deferred(),f=u.promise();return i=i||this.options.context||f,t===!0?u.resolveWith(i,r):t===!1&&u.rejectWith(i,r),f.abort=u.promise,this._enhancePromise(f)},_getUploadedBytes:function(n){var i=n.getResponseHeader("Range"),t=i&&i.split("-"),r=t&&t.length>1&&parseInt(t[1],10);return r&&r+1},_chunkedUpload:function(t,i){var f=this,u=t.files[0],e=u.size,r=t.uploadedBytes=t.uploadedBytes||0,c=t.maxChunkSize||e,l=u.slice||u.webkitSlice||u.mozSlice,o=n.Deferred(),s=o.promise(),a,h;return!(this._isXHRUpload(t)&&l&&(r||c<e))||t.data?!1:i?!0:r>=e?(u.error="Uploaded bytes exceed file size",this._getXHRPromise(!1,t.context,[null,"error",u.error])):(h=function(){var i=n.extend({},t);i.blob=l.call(u,r,r+c,u.type);i.chunkSize=i.blob.size;i.contentRange="bytes "+r+"-"+(r+i.chunkSize-1)+"/"+e;f._initXHRData(i);f._initProgressListener(i);a=(n.ajax(i)||f._getXHRPromise(!1,i.context)).done(function(u,s,c){r=f._getUploadedBytes(c)||r+i.chunkSize;i.loaded||f._onProgress(n.Event("progress",{lengthComputable:!0,loaded:r-i.uploadedBytes,total:r-i.uploadedBytes}),i);t.uploadedBytes=i.uploadedBytes=r;r<e?h():o.resolveWith(i.context,[u,s,c])}).fail(function(n,t,r){o.rejectWith(i.context,[n,t,r])})},this._enhancePromise(s),s.abort=function(){return a.abort()},h(),s)},_beforeSend:function(n,t){this._active===0&&(this._trigger("start"),this._bitrateTimer=new this._BitrateTimer);this._active+=1;this._loaded+=t.uploadedBytes||0;this._total+=this._getTotal(t.files)},_onDone:function(t,i,r,u){this._isXHRUpload(u)||this._onProgress(n.Event("progress",{lengthComputable:!0,loaded:1,total:1}),u);u.result=t;u.textStatus=i;u.jqXHR=r;this._trigger("done",null,u)},_onFail:function(n,t,i,r){r.jqXHR=n;r.textStatus=t;r.errorThrown=i;this._trigger("fail",null,r);r.recalculateProgress&&(this._loaded-=r.loaded||r.uploadedBytes||0,this._total-=r.total||this._getTotal(r.files))},_onAlways:function(n,t,i,r){this._active-=1;r.textStatus=t;i&&i.always?(r.jqXHR=i,r.result=n):(r.jqXHR=n,r.errorThrown=i);this._trigger("always",null,r);this._active===0&&(this._trigger("stop"),this._loaded=this._total=0,this._bitrateTimer=null)},_onSend:function(t,i){var r=this,f,s,e,h,u=r._getAJAXSettings(i),o=function(){return r._sending+=1,u._bitrateTimer=new r._BitrateTimer,f=f||((s||r._trigger("send",t,u)===!1)&&r._getXHRPromise(!1,u.context,s)||r._chunkedUpload(u)||n.ajax(u)).done(function(n,t,i){r._onDone(n,t,i,u)}).fail(function(n,t,i){r._onFail(n,t,i,u)}).always(function(n,t,i){if(r._sending-=1,r._onAlways(n,t,i,u),u.limitConcurrentUploads&&u.limitConcurrentUploads>r._sending)for(var f=r._slots.shift(),e;f;){if(e=f.state?f.state()==="pending":!f.isRejected(),e){f.resolve();break}f=r._slots.shift()}})};return(this._beforeSend(t,u),this.options.sequentialUploads||this.options.limitConcurrentUploads&&this.options.limitConcurrentUploads<=this._sending)?(this.options.limitConcurrentUploads>1?(e=n.Deferred(),this._slots.push(e),h=e.pipe(o)):h=this._sequence=this._sequence.pipe(o,o),h.abort=function(){return(s=[undefined,"abort","abort"],!f)?(e&&e.rejectWith(u.context,s),o()):f.abort()},this._enhancePromise(h)):o()},_onAdd:function(t,i){var c=this,l=!0,u=n.extend({},this.options,i),f=u.limitMultiFileUploads,s=this._getParamName(u),e,h,o,r;if((u.singleFileUploads||f)&&this._isXHRUpload(u))if(!u.singleFileUploads&&f)for(o=[],e=[],r=0;r<i.files.length;r+=f)o.push(i.files.slice(r,r+f)),h=s.slice(r,r+f),h.length||(h=s),e.push(h);else e=s;else o=[i.files],e=[s];return i.originalFiles=i.files,n.each(o||i.files,function(r,u){var f=n.extend({},i);return f.files=o?u:[u],f.paramName=e[r],f.submit=function(){return f.jqXHR=this.jqXHR=c._trigger("submit",t,this)!==!1&&c._onSend(t,this),this.jqXHR},l=c._trigger("add",t,f)}),l},_replaceFileInput:function(t){var i=t.clone(!0);n("<form><\/form>").append(i)[0].reset();t.after(i).detach();n.cleanData(t.unbind("remove"));this.options.fileInput=this.options.fileInput.map(function(n,r){return r===t[0]?i[0]:r});t[0]===this.element[0]&&(this.element=i)},_handleFileTreeEntry:function(t,i){var e=this,r=n.Deferred(),u=function(n){n&&!n.entry&&(n.entry=t);r.resolve([n])},f;return i=i||"",t.isFile?t._file?(t._file.relativePath=i,r.resolve(t._file)):t.file(function(n){n.relativePath=i;r.resolve(n)},u):t.isDirectory?(f=t.createReader(),f.readEntries(function(n){e._handleFileTreeEntries(n,i+t.name+"/").done(function(n){r.resolve(n)}).fail(u)},u)):r.resolve([]),r.promise()},_handleFileTreeEntries:function(t,i){var r=this;return n.when.apply(n,n.map(t,function(n){return r._handleFileTreeEntry(n,i)})).pipe(function(){return Array.prototype.concat.apply([],arguments)})},_getDroppedFiles:function(t){t=t||{};var i=t.items;return i&&i.length&&(i[0].webkitGetAsEntry||i[0].getAsEntry)?this._handleFileTreeEntries(n.map(i,function(n){var t;return n.webkitGetAsEntry?(t=n.webkitGetAsEntry(),t&&(t._file=n.getAsFile()),t):n.getAsEntry()})):n.Deferred().resolve(n.makeArray(t.files)).promise()},_getSingleFileInputFiles:function(t){t=n(t);var r=t.prop("webkitEntries")||t.prop("entries"),i,u;if(r&&r.length)return this._handleFileTreeEntries(r);if(i=n.makeArray(t.prop("files")),i.length)i[0].name===undefined&&i[0].fileName&&n.each(i,function(n,t){t.name=t.fileName;t.size=t.fileSize});else{if(u=t.prop("value"),!u)return n.Deferred().resolve([]).promise();i=[{name:u.replace(/^.*\\/,"")}]}return n.Deferred().resolve(i).promise()},_getFileInputFiles:function(t){return!(t instanceof n)||t.length===1?this._getSingleFileInputFiles(t):n.when.apply(n,n.map(t,this._getSingleFileInputFiles)).pipe(function(){return Array.prototype.concat.apply([],arguments)})},_onChange:function(t){var r=this,i={fileInput:n(t.target),form:n(t.target.form)};this._getFileInputFiles(i.fileInput).always(function(n){i.files=n;r.options.replaceFileInput&&r._replaceFileInput(i.fileInput);r._trigger("change",t,i)!==!1&&r._onAdd(t,i)})},_onPaste:function(t){var r=t.originalEvent.clipboardData,u=r&&r.items||[],i={files:[]};return n.each(u,function(n,t){var r=t.getAsFile&&t.getAsFile();r&&i.files.push(r)}),this._trigger("paste",t,i)===!1||this._onAdd(t,i)===!1?!1:void 0},_onDrop:function(n){var r=this,t=n.dataTransfer=n.originalEvent.dataTransfer,i={};t&&t.files&&t.files.length&&n.preventDefault();this._getDroppedFiles(t).always(function(t){i.files=t;r._trigger("drop",n,i)!==!1&&r._onAdd(n,i)})},_onDragOver:function(t){var i=t.dataTransfer=t.originalEvent.dataTransfer;if(this._trigger("dragover",t)===!1)return!1;i&&n.inArray("Files",i.types)!==-1&&(i.dropEffect="copy",t.preventDefault())},_initEventHandlers:function(){this._isXHRUpload(this.options)&&(this._on(this.options.dropZone,{dragover:this._onDragOver,drop:this._onDrop}),this._on(this.options.pasteZone,{paste:this._onPaste}));this._on(this.options.fileInput,{change:this._onChange})},_destroyEventHandlers:function(){this._off(this.options.dropZone,"dragover drop");this._off(this.options.pasteZone,"paste");this._off(this.options.fileInput,"change")},_setOption:function(t,i){var r=n.inArray(t,this._refreshOptionsList)!==-1;r&&this._destroyEventHandlers();this._super(t,i);r&&(this._initSpecialOptions(),this._initEventHandlers())},_initSpecialOptions:function(){var t=this.options;t.fileInput===undefined?t.fileInput=this.element.is('input[type="file"]')?this.element:this.element.find('input[type="file"]'):t.fileInput instanceof n||(t.fileInput=n(t.fileInput));t.dropZone instanceof n||(t.dropZone=n(t.dropZone));t.pasteZone instanceof n||(t.pasteZone=n(t.pasteZone))},_create:function(){var t=this.options;n.extend(t,n(this.element[0].cloneNode(!1)).data());this._initSpecialOptions();this._slots=[];this._sequence=this._getXHRPromise(!0);this._sending=this._active=this._loaded=this._total=0;this._initEventHandlers()},_destroy:function(){this._destroyEventHandlers()},add:function(t){var i=this;t&&!this.options.disabled&&(t.fileInput&&!t.files?this._getFileInputFiles(t.fileInput).always(function(n){t.files=n;i._onAdd(null,t)}):(t.files=n.makeArray(t.files),this._onAdd(null,t)))},send:function(t){if(t&&!this.options.disabled){if(t.fileInput&&!t.files){var e=this,i=n.Deferred(),r=i.promise(),u,f;return r.abort=function(){return(f=!0,u)?u.abort():(i.reject(null,"abort","abort"),r)},this._getFileInputFiles(t.fileInput).always(function(n){f||(t.files=n,u=e._onSend(null,t).then(function(n,t,r){i.resolve(n,t,r)},function(n,t,r){i.reject(n,t,r)}))}),this._enhancePromise(r)}if(t.files=n.makeArray(t.files),t.files.length)return this._onSend(null,t)}return this._getXHRPromise(!1,t&&t.context)}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","tmpl","load-image","./jquery.fileupload-fp"],n):n(window.jQuery,window.tmpl,window.loadImage)}(function(n,t,i){"use strict";n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{autoUpload:!1,maxNumberOfFiles:undefined,maxFileSize:undefined,minFileSize:undefined,acceptFileTypes:/.+$/i,previewSourceFileTypes:/^image\/(gif|jpeg|png)$/,previewSourceMaxFileSize:5e6,previewMaxWidth:80,previewMaxHeight:80,previewAsCanvas:!0,uploadTemplateId:"template-upload",downloadTemplateId:"template-download",filesContainer:undefined,prependFiles:!1,dataType:"json",add:function(t,i){var r=n(this).data("fileupload"),f=r.options,u=i.files;n(this).fileupload("process",i).done(function(){r._adjustMaxNumberOfFiles(-u.length);i.maxNumberOfFilesAdjusted=!0;i.files.valid=i.isValidated=r._validate(u);i.context=r._renderUpload(u).data("data",i);f.filesContainer[f.prependFiles?"prepend":"append"](i.context);r._renderPreviews(u,i.context);r._forceReflow(i.context);r._transition(i.context).done(function(){r._trigger("added",t,i)!==!1&&(f.autoUpload||i.autoUpload)&&i.autoUpload!==!1&&i.isValidated&&i.submit()})})},send:function(t,i){var r=n(this).data("fileupload");return!i.isValidated&&(i.maxNumberOfFilesAdjusted||(r._adjustMaxNumberOfFiles(-i.files.length),i.maxNumberOfFilesAdjusted=!0),!r._validate(i.files))?!1:(i.context&&i.dataType&&i.dataType.substr(0,6)==="iframe"&&i.context.find(".progress").addClass(!n.support.transition&&"progress-animated").attr("aria-valuenow",100).find(".bar").css("width","100%"),r._trigger("sent",t,i))},done:function(t,i){var r=n(this).data("fileupload"),f=r._getFilesFromResponse(i),u,e;i.context?i.context.each(function(e){var o=f[e]||{error:"Empty file upload result"},s=r._addFinishedDeferreds();o.error&&r._adjustMaxNumberOfFiles(1);r._transition(n(this)).done(function(){var f=n(this);u=r._renderDownload([o]).replaceAll(f);r._forceReflow(u);r._transition(u).done(function(){i.context=n(this);r._trigger("completed",t,i);r._trigger("finished",t,i);s.resolve()})})}):(f.length&&(n.each(f,function(n,t){i.maxNumberOfFilesAdjusted&&t.error?r._adjustMaxNumberOfFiles(1):i.maxNumberOfFilesAdjusted||t.error||r._adjustMaxNumberOfFiles(-1)}),i.maxNumberOfFilesAdjusted=!0),u=r._renderDownload(f).appendTo(r.options.filesContainer),r._forceReflow(u),e=r._addFinishedDeferreds(),r._transition(u).done(function(){i.context=n(this);r._trigger("completed",t,i);r._trigger("finished",t,i);e.resolve()}))},fail:function(t,i){var r=n(this).data("fileupload"),f,u;i.maxNumberOfFilesAdjusted&&r._adjustMaxNumberOfFiles(i.files.length);i.context?i.context.each(function(e){if(i.errorThrown!=="abort"){var o=i.files[e];o.error=o.error||i.errorThrown||!0;u=r._addFinishedDeferreds();r._transition(n(this)).done(function(){var e=n(this);f=r._renderDownload([o]).replaceAll(e);r._forceReflow(f);r._transition(f).done(function(){i.context=n(this);r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})})}else u=r._addFinishedDeferreds(),r._transition(n(this)).done(function(){n(this).remove();r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})}):i.errorThrown!=="abort"?(i.context=r._renderUpload(i.files).appendTo(r.options.filesContainer).data("data",i),r._forceReflow(i.context),u=r._addFinishedDeferreds(),r._transition(i.context).done(function(){i.context=n(this);r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})):(r._trigger("failed",t,i),r._trigger("finished",t,i),r._addFinishedDeferreds().resolve())},progress:function(n,t){if(t.context){var i=parseInt(t.loaded/t.total*100,10);t.context.find(".progress").attr("aria-valuenow",i).find(".bar").css("width",i+"%")}},progressall:function(t,i){var r=n(this),u=parseInt(i.loaded/i.total*100,10),f=r.find(".fileupload-progress"),e=f.find(".progress-extended");e.length&&e.html(r.data("fileupload")._renderExtendedProgress(i));f.find(".progress").attr("aria-valuenow",u).find(".bar").css("width",u+"%")},start:function(t){var i=n(this).data("fileupload");i._resetFinishedDeferreds();i._transition(n(this).find(".fileupload-progress")).done(function(){i._trigger("started",t)})},stop:function(t){var i=n(this).data("fileupload"),r=i._addFinishedDeferreds();n.when.apply(n,i._getFinishedDeferreds()).done(function(){i._trigger("stopped",t)});i._transition(n(this).find(".fileupload-progress")).done(function(){n(this).find(".progress").attr("aria-valuenow","0").find(".bar").css("width","0%");n(this).find(".progress-extended").html("&nbsp;");r.resolve()})},destroy:function(t,i){var r=n(this).data("fileupload");i.url&&(n.ajax(i),r._adjustMaxNumberOfFiles(1));r._transition(i.context).done(function(){n(this).remove();r._trigger("destroyed",t,i)})}},_resetFinishedDeferreds:function(){this._finishedUploads=[]},_addFinishedDeferreds:function(t){return t||(t=n.Deferred()),this._finishedUploads.push(t),t},_getFinishedDeferreds:function(){return this._finishedUploads},_getFilesFromResponse:function(t){return t.result&&n.isArray(t.result.files)?t.result.files:[]},_enableDragToDesktop:function(){var t=n(this),i=t.prop("href"),r=t.prop("download"),u="application/octet-stream";t.bind("dragstart",function(n){try{n.originalEvent.dataTransfer.setData("DownloadURL",[u,r,i].join(":"))}catch(t){}})},_adjustMaxNumberOfFiles:function(n){typeof this.options.maxNumberOfFiles=="number"&&(this.options.maxNumberOfFiles+=n,this.options.maxNumberOfFiles<1?this._disableFileInputButton():this._enableFileInputButton())},_formatFileSize:function(n){return typeof n!="number"?"":n>=1e9?(n/1e9).toFixed(2)+" GB":n>=1e6?(n/1e6).toFixed(2)+" MB":(n/1e3).toFixed(2)+" KB"},_formatBitrate:function(n){return typeof n!="number"?"":n>=1e9?(n/1e9).toFixed(2)+" Gbit/s":n>=1e6?(n/1e6).toFixed(2)+" Mbit/s":n>=1e3?(n/1e3).toFixed(2)+" kbit/s":n.toFixed(2)+" bit/s"},_formatTime:function(n){var i=new Date(n*1e3),t=parseInt(n/86400,10);return t=t?t+"d ":"",t+("0"+i.getUTCHours()).slice(-2)+":"+("0"+i.getUTCMinutes()).slice(-2)+":"+("0"+i.getUTCSeconds()).slice(-2)},_formatPercentage:function(n){return(n*100).toFixed(2)+" %"},_renderExtendedProgress:function(n){return this._formatBitrate(n.bitrate)+" | "+this._formatTime((n.total-n.loaded)*8/n.bitrate)+" | "+this._formatPercentage(n.loaded/n.total)+" | "+this._formatFileSize(n.loaded)+" / "+this._formatFileSize(n.total)},_hasError:function(n){return n.error?n.error:this.options.maxNumberOfFiles<0?"Maximum number of files exceeded":(this.options.acceptFileTypes.test(n.type)||this.options.acceptFileTypes.test(n.name))?this.options.maxFileSize&&n.size>this.options.maxFileSize?"File is too big":typeof n.size=="number"&&n.size<this.options.minFileSize?"File is too small":null:"Filetype not allowed"},_validate:function(t){var r=this,i=!!t.length;return n.each(t,function(n,t){t.error=r._hasError(t);t.error&&(i=!1)}),i},_renderTemplate:function(t,i){if(!t)return n();var r=t({files:i,formatFileSize:this._formatFileSize,options:this.options});return r instanceof n?r:n(this.options.templatesContainer).html(r).children()},_renderPreview:function(t,r){var f=this,e=this.options,u=n.Deferred();return(i&&i(t,function(t){r.append(t);f._forceReflow(r);f._transition(r).done(function(){u.resolveWith(r)});n.contains(f.document[0].body,r[0])||u.resolveWith(r)},{maxWidth:e.previewMaxWidth,maxHeight:e.previewMaxHeight,canvas:e.previewAsCanvas})||u.resolveWith(r))&&u},_renderPreviews:function(t,i){var r=this,u=this.options;return i.find(".preview span").each(function(i,f){var e=t[i];u.previewSourceFileTypes.test(e.type)&&(n.type(u.previewSourceMaxFileSize)!=="number"||e.size<u.previewSourceMaxFileSize)&&(r._processingQueue=r._processingQueue.pipe(function(){var t=n.Deferred();return r._renderPreview(e,n(f)).done(function(){t.resolveWith(r)}),t.promise()}))}),this._processingQueue},_renderUpload:function(n){return this._renderTemplate(this.options.uploadTemplate,n)},_renderDownload:function(n){return this._renderTemplate(this.options.downloadTemplate,n).find("a[download]").each(this._enableDragToDesktop).end()},_startHandler:function(t){t.preventDefault();var r=n(t.currentTarget),u=r.closest(".template-upload"),i=u.data("data");i&&i.submit&&!i.jqXHR&&i.submit()&&r.prop("disabled",!0)},_cancelHandler:function(t){t.preventDefault();var r=n(t.currentTarget).closest(".template-upload"),i=r.data("data")||{};i.jqXHR?i.jqXHR.abort():(i.errorThrown="abort",this._trigger("fail",t,i))},_deleteHandler:function(t){t.preventDefault();var i=n(t.currentTarget);this._trigger("destroy",t,n.extend({context:i.closest(".template-download"),type:"DELETE",dataType:this.options.dataType},i.data()))},_forceReflow:function(t){return n.support.transition&&t.length&&t[0].offsetWidth},_transition:function(t){var i=n.Deferred();return n.support.transition&&t.hasClass("fade")?t.bind(n.support.transition.end,function(r){r.target===t[0]&&(t.unbind(n.support.transition.end),i.resolveWith(t))}).toggleClass("in"):(t.toggleClass("in"),i.resolveWith(t)),i},_initButtonBarEventHandlers:function(){var t=this.element.find(".fileupload-buttonbar"),i=this.options.filesContainer;this._on(t.find(".start"),{click:function(n){n.preventDefault();i.find(".start button").click()}});this._on(t.find(".cancel"),{click:function(n){n.preventDefault();i.find(".cancel button").click()}});this._on(t.find(".delete"),{click:function(n){n.preventDefault();i.find(".delete input:checked").siblings("button").click();t.find(".toggle").prop("checked",!1)}});this._on(t.find(".toggle"),{change:function(t){i.find(".delete input").prop("checked",n(t.currentTarget).is(":checked"))}})},_destroyButtonBarEventHandlers:function(){this._off(this.element.find(".fileupload-buttonbar button"),"click");this._off(this.element.find(".fileupload-buttonbar .toggle"),"change.")},_initEventHandlers:function(){this._super();this._on(this.options.filesContainer,{"click .start button":this._startHandler,"click .cancel button":this._cancelHandler,"click .delete button":this._deleteHandler});this._initButtonBarEventHandlers()},_destroyEventHandlers:function(){this._destroyButtonBarEventHandlers();this._off(this.options.filesContainer,"click");this._super()},_enableFileInputButton:function(){this.element.find(".fileinput-button input").prop("disabled",!1).parent().removeClass("disabled")},_disableFileInputButton:function(){this.element.find(".fileinput-button input").prop("disabled",!0).parent().addClass("disabled")},_initTemplates:function(){var n=this.options;n.templatesContainer=this.document[0].createElement(n.filesContainer.prop("nodeName"));t&&(n.uploadTemplateId&&(n.uploadTemplate=t(n.uploadTemplateId)),n.downloadTemplateId&&(n.downloadTemplate=t(n.downloadTemplateId)))},_initFilesContainer:function(){var t=this.options;t.filesContainer===undefined?t.filesContainer=this.element.find(".files"):t.filesContainer instanceof n||(t.filesContainer=n(t.filesContainer))},_stringToRegExp:function(n){var t=n.split("/"),i=t.pop();return t.shift(),new RegExp(t.join("/"),i)},_initRegExpOptions:function(){var t=this.options;n.type(t.acceptFileTypes)==="string"&&(t.acceptFileTypes=this._stringToRegExp(t.acceptFileTypes));n.type(t.previewSourceFileTypes)==="string"&&(t.previewSourceFileTypes=this._stringToRegExp(t.previewSourceFileTypes))},_initSpecialOptions:function(){this._super();this._initFilesContainer();this._initTemplates();this._initRegExpOptions()},_setOption:function(n,t){this._super(n,t);n==="maxNumberOfFiles"&&this._adjustMaxNumberOfFiles(0)},_create:function(){this._super();this._refreshOptionsList.push("filesContainer","uploadTemplateId","downloadTemplateId");this._processingQueue||(this._processingQueue=n.Deferred().resolveWith(this).promise(),this.process=function(){return this._processingQueue});this._resetFinishedDeferreds()},enable:function(){var n=!1;this.options.disabled&&(n=!0);this._super();n&&(this.element.find("input, button").prop("disabled",!1),this._enableFileInputButton())},disable:function(){this.options.disabled||(this.element.find("input, button").prop("disabled",!0),this._disableFileInputButton());this._super()}})})