(function(n,t,i){function e(n,t,i){n.addEventListener?n.addEventListener(t,i,!1):n.attachEvent("on"+t,i)}function s(n){if("keypress"==n.type){var t=String.fromCharCode(n.which);return n.shiftKey||(t=t.toLowerCase()),t}return u[n.which]?u[n.which]:l[n.which]?l[n.which]:String.fromCharCode(n.which).toLowerCase()}function y(n){var t=[];return n.shiftKey&&t.push("shift"),n.altKey&&t.push("alt"),n.ctrlKey&&t.push("ctrl"),n.metaKey&&t.push("meta"),t}function o(n){return"shift"==n||"ctrl"==n||"alt"==n||"meta"==n}function h(n,t){var i,r,e,h=[],s;for(i=n,"+"===i?i=["+"]:(i=i.replace(/\+{2}/g,"+plus"),i=i.split("+")),e=0;e<i.length;++e)r=i[e],v[r]&&(r=v[r]),t&&"keypress"!=t&&a[r]&&(r=a[r],h.push("shift")),o(r)&&h.push(r);if(i=r,e=t,!e){if(!f){f={};for(s in u)95<s&&112>s||u.hasOwnProperty(s)&&(f[u[s]]=s)}e=f[i]?"keydown":"keypress"}return"keypress"==e&&h.length&&(e="keydown"),{key:r,modifiers:h,action:e}}function c(n,i){return null===n||n===t?!1:n===i?!0:c(n.parentNode,i)}function r(n){function f(n){n=n||{};var i=!1,t;for(t in u)n[t]?i=!0:u[t]=0;i||(v=!1)}function p(n,t,r,f,e,s){var l,h,v=[],a=r.type,c;if(!i._callbacks[n])return[];for("keyup"==a&&o(n)&&(t=[n]),l=0;l<i._callbacks[n].length;++l)(h=i._callbacks[n][l],(f||!h.seq||u[h.seq]==h.level)&&a==h.action)&&((c="keypress"==a&&!r.metaKey&&!r.ctrlKey)||(c=h.modifiers,c=t.sort().join(",")===c.sort().join(",")),c&&(c=f&&h.seq==f&&h.level==s,(!f&&h.combo==e||c)&&i._callbacks[n].splice(l,1),v.push(h)));return v}function c(n,t,r,u){i.stopCallback(t,t.target||t.srcElement,r,u)||!1!==n(t,r)||(t.preventDefault?t.preventDefault():t.returnValue=!1,t.stopPropagation?t.stopPropagation():t.cancelBubble=!0)}function l(n){"number"!=typeof n.which&&(n.which=n.keyCode);var t=s(n);t&&("keyup"==n.type&&a===t?a=!1:i.handleKey(t,y(n),n))}function d(n,t,i,r){function l(t){return function(){v=t;++u[n];clearTimeout(b);b=setTimeout(f,1e3)}}function y(t){c(i,t,n);"keyup"!==r&&(a=s(t));setTimeout(f,10)}for(var o,e=u[n]=0;e<t.length;++e)o=e+1===t.length?y:l(r||h(t[e+1]).action),w(t[e],o,r,n,e)}function w(n,t,r,u,f){i._directMap[n+":"+r]=t;n=n.replace(/\s+/g," ");var e=n.split(" ");1<e.length?d(n,e,t,r):(r=h(n,r),i._callbacks[r.key]=i._callbacks[r.key]||[],p(r.key,r.modifiers,{type:r.action},u,n,f),i._callbacks[r.key][u?"unshift":"push"]({callback:t,modifiers:r.modifiers,action:r.action,seq:u,level:f,combo:n}))}var i=this;if(n=n||t,!(i instanceof r))return new r(n);i.target=n;i._callbacks={};i._directMap={};var u={},b,a=!1,k=!1,v=!1;i._handleKey=function(n,t,i){var u=p(n,t,i),r,e,s;for(t={},e=0,s=!1,r=0;r<u.length;++r)u[r].seq&&(e=Math.max(e,u[r].level));for(r=0;r<u.length;++r)u[r].seq?u[r].level==e&&(s=!0,t[u[r].seq]=1,c(u[r].callback,i,u[r].combo,u[r].seq)):s||c(u[r].callback,i,u[r].combo);u="keypress"==i.type&&k;i.type!=v||o(n)||u||f(t);k=s&&"keydown"==i.type};i._bindMultiple=function(n,t,i){for(var r=0;r<n.length;++r)w(n[r],t,i)};e(n,"keypress",l);e(n,"keydown",l);e(n,"keyup",l)}var u={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",224:"meta"},l={106:"*",107:"+",109:"-",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},a={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"},v={option:"alt",command:"meta","return":"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},f;for(i=1;20>i;++i)u[111+i]="f"+i;for(i=0;9>=i;++i)u[i+96]=i;r.prototype.bind=function(n,t,i){return n=n instanceof Array?n:[n],this._bindMultiple.call(this,n,t,i),this};r.prototype.unbind=function(n,t){return this.bind.call(this,n,function(){},t)};r.prototype.trigger=function(n,t){return this._directMap[n+":"+t]&&this._directMap[n+":"+t]({},n),this};r.prototype.reset=function(){return this._callbacks={},this._directMap={},this};r.prototype.stopCallback=function(n,t){return-1<(" "+t.className+" ").indexOf(" mousetrap ")||c(t,this.target)?!1:"INPUT"==t.tagName||"SELECT"==t.tagName||"TEXTAREA"==t.tagName||t.isContentEditable};r.prototype.handleKey=function(){return this._handleKey.apply(this,arguments)};r.init=function(){var i=r(t),n;for(n in i)"_"!==n.charAt(0)&&(r[n]=function(n){return function(){return i[n].apply(i,arguments)}}(n))};r.init();n.Mousetrap=r;"undefined"!=typeof module&&module.exports&&(module.exports=r);"function"==typeof define&&define.amd&&define(function(){return r})})(window,document),function(){$("input[type=text]").addClass("mousetrap");$("input[type=password]").addClass("mousetrap");$("input[type=checkbox]").addClass("mousetrap");$("input[type=checkbox]").addClass("mousetrap");$("input[type=radio]").addClass("mousetrap");$("a[class=shortcutlink").each(function(n,t){$(t).attr("shortcut")!=""&&$(t).attr("shortcut")!=undefined&&$(t).attr("shortcut")!=null&&Mousetrap.bind($(t).attr("shortcut"),function(){document.location.href=t.href})})}();!function(n){"function"==typeof define&&define.amd?define(["jquery"],n):n("object"==typeof exports?require("jquery"):jQuery)}(function(n,t){function f(){return new Date(Date.UTC.apply(Date,arguments))}function s(){var n=new Date;return f(n.getFullYear(),n.getMonth(),n.getDate())}function l(n,t){return n.getUTCFullYear()===t.getUTCFullYear()&&n.getUTCMonth()===t.getUTCMonth()&&n.getUTCDate()===t.getUTCDate()}function h(i,r){return function(){return r!==t&&n.fn.datepicker.deprecated(r),this[i].apply(this,arguments)}}function p(n){return n&&!isNaN(n.getTime())}function w(t,i){function o(n,t){return t.toLowerCase()}var u,f=n(t).data(),e={},s=new RegExp("^"+i.toLowerCase()+"([A-Z])"),r;i=new RegExp("^"+i.toLowerCase());for(r in f)i.test(r)&&(u=r.replace(s,o),e[u]=f[r]);return e}function b(t){var u={},i;if(r[t]||(t=t.split("-")[0],r[t]))return i=r[t],n.each(y,function(n,t){t in i&&(u[t]=i[t])}),u}var a=function(){var t={get:function(n){return this.slice(n)[0]},contains:function(n){for(var i=n&&n.valueOf(),t=0,r=this.length;t<r;t++)if(0<=this[t].valueOf()-i&&this[t].valueOf()-i<864e5)return t;return-1},remove:function(n){this.splice(n,1)},replace:function(t){t&&(n.isArray(t)||(t=[t]),this.clear(),this.push.apply(this,t))},clear:function(){this.length=0},copy:function(){var n=new a;return n.replace(this),n}};return function(){var i=[];return i.push.apply(i,arguments),n.extend(i,t),i}}(),u=function(t,r){n.data(t,"datepicker",this);this._process_options(r);this.dates=new a;this.viewDate=this.o.defaultViewDate;this.focusDate=null;this.element=n(t);this.isInput=this.element.is("input");this.inputField=this.isInput?this.element:this.element.find("input");this.component=!!this.element.hasClass("date")&&this.element.find(".add-on, .input-group-addon, .btn");this.component&&0===this.component.length&&(this.component=!1);this.isInline=!this.component&&this.element.is("div");this.picker=n(i.template);this._check_template(this.o.templates.leftArrow)&&this.picker.find(".prev").html(this.o.templates.leftArrow);this._check_template(this.o.templates.rightArrow)&&this.picker.find(".next").html(this.o.templates.rightArrow);this._buildEvents();this._attachEvents();this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu");this.o.rtl&&this.picker.addClass("datepicker-rtl");this.o.calendarWeeks&&this.picker.find(".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear").attr("colspan",function(n,t){return Number(t)+1});this._process_options({startDate:this._o.startDate,endDate:this._o.endDate,daysOfWeekDisabled:this.o.daysOfWeekDisabled,daysOfWeekHighlighted:this.o.daysOfWeekHighlighted,datesDisabled:this.o.datesDisabled});this._allow_update=!1;this.setViewMode(this.o.startView);this._allow_update=!0;this.fillDow();this.fillMonths();this.update();this.isInline&&this.show()},c,v,o,e,y,r,i;u.prototype={constructor:u,_resolveViewName:function(t){return n.each(i.viewModes,function(i,r){if(t===i||n.inArray(t,r.names)!==-1)return t=i,!1}),t},_resolveDaysOfWeek:function(t){return n.isArray(t)||(t=t.split(/[,\s]*/)),n.map(t,Number)},_check_template:function(i){try{if(i===t||""===i)return!1;if((i.match(/[<>]/g)||[]).length<=0)return!0;var r=n(i);return r.length>0}catch(n){return!1}},_process_options:function(t){var u,h,l,o,c;if(this._o=n.extend({},this._o,t),u=this.o=n.extend({},this._o),h=u.language,r[h]||(h=h.split("-")[0],r[h]||(h=e.language)),u.language=h,u.startView=this._resolveViewName(u.startView),u.minViewMode=this._resolveViewName(u.minViewMode),u.maxViewMode=this._resolveViewName(u.maxViewMode),u.startView=Math.max(this.o.minViewMode,Math.min(this.o.maxViewMode,u.startView)),u.multidate!==!0&&(u.multidate=Number(u.multidate)||!1,u.multidate!==!1&&(u.multidate=Math.max(0,u.multidate))),u.multidateSeparator=String(u.multidateSeparator),u.weekStart%=7,u.weekEnd=(u.weekStart+6)%7,l=i.parseFormat(u.format),u.startDate!==-(1/0)&&(u.startDate=u.startDate?u.startDate instanceof Date?this._local_to_utc(this._zero_time(u.startDate)):i.parseDate(u.startDate,l,u.language,u.assumeNearbyYear):-(1/0)),u.endDate!==1/0&&(u.endDate=u.endDate?u.endDate instanceof Date?this._local_to_utc(this._zero_time(u.endDate)):i.parseDate(u.endDate,l,u.language,u.assumeNearbyYear):1/0),u.daysOfWeekDisabled=this._resolveDaysOfWeek(u.daysOfWeekDisabled||[]),u.daysOfWeekHighlighted=this._resolveDaysOfWeek(u.daysOfWeekHighlighted||[]),u.datesDisabled=u.datesDisabled||[],n.isArray(u.datesDisabled)||(u.datesDisabled=u.datesDisabled.split(",")),u.datesDisabled=n.map(u.datesDisabled,function(n){return i.parseDate(n,l,u.language,u.assumeNearbyYear)}),o=String(u.orientation).toLowerCase().split(/\s+/g),c=u.orientation.toLowerCase(),o=n.grep(o,function(n){return/^auto|left|right|top|bottom$/.test(n)}),u.orientation={x:"auto",y:"auto"},c&&"auto"!==c)if(1===o.length)switch(o[0]){case"top":case"bottom":u.orientation.y=o[0];break;case"left":case"right":u.orientation.x=o[0]}else c=n.grep(o,function(n){return/^left|right$/.test(n)}),u.orientation.x=c[0]||"auto",c=n.grep(o,function(n){return/^top|bottom$/.test(n)}),u.orientation.y=c[0]||"auto";if(u.defaultViewDate instanceof Date||"string"==typeof u.defaultViewDate)u.defaultViewDate=i.parseDate(u.defaultViewDate,l,u.language,u.assumeNearbyYear);else if(u.defaultViewDate){var a=u.defaultViewDate.year||(new Date).getFullYear(),v=u.defaultViewDate.month||0,y=u.defaultViewDate.day||1;u.defaultViewDate=f(a,v,y)}else u.defaultViewDate=s()},_events:[],_secondaryEvents:[],_applyEvents:function(n){for(var f,r,u,i=0;i<n.length;i++)f=n[i][0],2===n[i].length?(r=t,u=n[i][1]):3===n[i].length&&(r=n[i][1],u=n[i][2]),f.on(u,r)},_unapplyEvents:function(n){for(var f,r,u,i=0;i<n.length;i++)f=n[i][0],2===n[i].length?(u=t,r=n[i][1]):3===n[i].length&&(u=n[i][1],r=n[i][2]),f.off(r,u)},_buildEvents:function(){var t={keyup:n.proxy(function(t){n.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:n.proxy(this.keydown,this),paste:n.proxy(this.paste,this)};this.o.showOnFocus===!0&&(t.focus=n.proxy(this.show,this));this._events=this.isInput?[[this.element,t]]:this.component&&this.inputField.length?[[this.inputField,t],[this.component,{click:n.proxy(this.show,this)}]]:[[this.element,{click:n.proxy(this.show,this),keydown:n.proxy(this.keydown,this)}]];this._events.push([this.element,"*",{blur:n.proxy(function(n){this._focused_from=n.target},this)}],[this.element,{blur:n.proxy(function(n){this._focused_from=n.target},this)}]);this.o.immediateUpdates&&this._events.push([this.element,{"changeYear changeMonth":n.proxy(function(n){this.update(n.date)},this)}]);this._secondaryEvents=[[this.picker,{click:n.proxy(this.click,this)}],[this.picker,".prev, .next",{click:n.proxy(this.navArrowsClick,this)}],[this.picker,".day:not(.disabled)",{click:n.proxy(this.dayCellClick,this)}],[n(window),{resize:n.proxy(this.place,this)}],[n(document),{"mousedown touchstart":n.proxy(function(n){this.element.is(n.target)||this.element.find(n.target).length||this.picker.is(n.target)||this.picker.find(n.target).length||this.isInline||this.hide()},this)}]]},_attachEvents:function(){this._detachEvents();this._applyEvents(this._events)},_detachEvents:function(){this._unapplyEvents(this._events)},_attachSecondaryEvents:function(){this._detachSecondaryEvents();this._applyEvents(this._secondaryEvents)},_detachSecondaryEvents:function(){this._unapplyEvents(this._secondaryEvents)},_trigger:function(t,r){var u=r||this.dates.get(-1),f=this._utc_to_local(u);this.element.trigger({type:t,date:f,viewMode:this.viewMode,dates:n.map(this.dates,this._utc_to_local),format:n.proxy(function(n,t){0===arguments.length?(n=this.dates.length-1,t=this.o.format):"string"==typeof n&&(t=n,n=this.dates.length-1);t=t||this.o.format;var r=this.dates.get(n);return i.formatDate(r,t,this.o.language)},this)})},show:function(){if(!(this.inputField.prop("disabled")||this.inputField.prop("readonly")&&this.o.enableOnReadonly===!1))return this.isInline||this.picker.appendTo(this.o.container),this.place(),this.picker.show(),this._attachSecondaryEvents(),this._trigger("show"),(window.navigator.msMaxTouchPoints||"ontouchstart"in document)&&this.o.disableTouchKeyboard&&n(this.element).blur(),this},hide:function(){return this.isInline||!this.picker.is(":visible")?this:(this.focusDate=null,this.picker.hide().detach(),this._detachSecondaryEvents(),this.setViewMode(this.o.startView),this.o.forceParse&&this.inputField.val()&&this.setValue(),this._trigger("hide"),this)},destroy:function(){return this.hide(),this._detachEvents(),this._detachSecondaryEvents(),this.picker.remove(),delete this.element.data().datepicker,this.isInput||delete this.element.data().date,this},paste:function(t){var i;if(t.originalEvent.clipboardData&&t.originalEvent.clipboardData.types&&n.inArray("text/plain",t.originalEvent.clipboardData.types)!==-1)i=t.originalEvent.clipboardData.getData("text/plain");else{if(!window.clipboardData)return;i=window.clipboardData.getData("Text")}this.setDate(i);this.update();t.preventDefault()},_utc_to_local:function(n){if(!n)return n;var t=new Date(n.getTime()+6e4*n.getTimezoneOffset());return t.getTimezoneOffset()!==n.getTimezoneOffset()&&(t=new Date(n.getTime()+6e4*t.getTimezoneOffset())),t},_local_to_utc:function(n){return n&&new Date(n.getTime()-6e4*n.getTimezoneOffset())},_zero_time:function(n){return n&&new Date(n.getFullYear(),n.getMonth(),n.getDate())},_zero_utc_time:function(n){return n&&f(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate())},getDates:function(){return n.map(this.dates,this._utc_to_local)},getUTCDates:function(){return n.map(this.dates,function(n){return new Date(n)})},getDate:function(){return this._utc_to_local(this.getUTCDate())},getUTCDate:function(){var n=this.dates.get(-1);return n!==t?new Date(n):null},clearDates:function(){this.inputField.val("");this.update();this._trigger("changeDate");this.o.autoclose&&this.hide()},setDates:function(){var t=n.isArray(arguments[0])?arguments[0]:arguments;return this.update.apply(this,t),this._trigger("changeDate"),this.setValue(),this},setUTCDates:function(){var t=n.isArray(arguments[0])?arguments[0]:arguments;return this.setDates.apply(this,n.map(t,this._utc_to_local)),this},setDate:h("setDates"),setUTCDate:h("setUTCDates"),remove:h("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead"),setValue:function(){var n=this.getFormattedDate();return this.inputField.val(n),this},getFormattedDate:function(r){r===t&&(r=this.o.format);var u=this.o.language;return n.map(this.dates,function(n){return i.formatDate(n,r,u)}).join(this.o.multidateSeparator)},getStartDate:function(){return this.o.startDate},setStartDate:function(n){return this._process_options({startDate:n}),this.update(),this.updateNavArrows(),this},getEndDate:function(){return this.o.endDate},setEndDate:function(n){return this._process_options({endDate:n}),this.update(),this.updateNavArrows(),this},setDaysOfWeekDisabled:function(n){return this._process_options({daysOfWeekDisabled:n}),this.update(),this},setDaysOfWeekHighlighted:function(n){return this._process_options({daysOfWeekHighlighted:n}),this.update(),this},setDatesDisabled:function(n){return this._process_options({datesDisabled:n}),this.update(),this},place:function(){var y,r,p;if(this.isInline)return this;var f=this.picker.outerWidth(),s=this.picker.outerHeight(),e=n(this.o.container),h=e.width(),c="body"===this.o.container?n(document).scrollTop():e.scrollTop(),l=e.offset(),a=[0];this.element.parents().each(function(){var t=n(this).css("z-index");"auto"!==t&&0!==Number(t)&&a.push(Number(t))});var v=Math.max.apply(Math,a)+this.o.zIndexOffset,u=this.component?this.component.parent().offset():this.element.offset(),w=this.component?this.component.outerHeight(!0):this.element.outerHeight(!1),o=this.component?this.component.outerWidth(!0):this.element.outerWidth(!1),t=u.left-l.left,i=u.top-l.top;return"body"!==this.o.container&&(i+=c),this.picker.removeClass("datepicker-orient-top datepicker-orient-bottom datepicker-orient-right datepicker-orient-left"),"auto"!==this.o.orientation.x?(this.picker.addClass("datepicker-orient-"+this.o.orientation.x),"right"===this.o.orientation.x&&(t-=f-o)):u.left<0?(this.picker.addClass("datepicker-orient-left"),t-=u.left-10):t+f>h?(this.picker.addClass("datepicker-orient-right"),t+=o-f):this.o.rtl?this.picker.addClass("datepicker-orient-right"):this.picker.addClass("datepicker-orient-left"),r=this.o.orientation.y,("auto"===r&&(y=-c+i-s,r=y<0?"bottom":"top"),this.picker.addClass("datepicker-orient-"+r),"top"===r?i-=s+parseInt(this.picker.css("padding-top")):i+=w,this.o.rtl)?(p=h-(t+o),this.picker.css({top:i,right:p,zIndex:v})):this.picker.css({top:i,left:t,zIndex:v}),this},_allow_update:!0,update:function(){if(!this._allow_update)return this;var u=this.dates.copy(),t=[],r=!1;return arguments.length?(n.each(arguments,n.proxy(function(n,i){i instanceof Date&&(i=this._local_to_utc(i));t.push(i)},this)),r=!0):(t=this.isInput?this.element.val():this.element.data("date")||this.inputField.val(),t=t&&this.o.multidate?t.split(this.o.multidateSeparator):[t],delete this.element.data().date),t=n.map(t,n.proxy(function(n){return i.parseDate(n,this.o.format,this.o.language,this.o.assumeNearbyYear)},this)),t=n.grep(t,n.proxy(function(n){return!this.dateWithinRange(n)||!n},this),!0),this.dates.replace(t),this.o.updateViewDate&&(this.viewDate=this.dates.length?new Date(this.dates.get(-1)):this.viewDate<this.o.startDate?new Date(this.o.startDate):this.viewDate>this.o.endDate?new Date(this.o.endDate):this.o.defaultViewDate),r?(this.setValue(),this.element.change()):this.dates.length&&String(u)!==String(this.dates)&&r&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&u.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var i=this.o.weekStart,t="<tr>";for(this.o.calendarWeeks&&(t+='<th class="cw">&#160;<\/th>');i<this.o.weekStart+7;)t+='<th class="dow',n.inArray(i,this.o.daysOfWeekDisabled)!==-1&&(t+=" disabled"),t+='">'+r[this.o.language].daysMin[i++%7]+"<\/th>";t+="<\/tr>";this.picker.find(".datepicker-days thead").append(t)}},fillMonths:function(){for(var t,i=this._utc_to_local(this.viewDate),u="",n=0;n<12;n++)t=i&&i.getMonth()===n?" focused":"",u+='<span class="month'+t+'">'+r[this.o.language].monthsShort[n]+"<\/span>";this.picker.find(".datepicker-months td").html(u)},setRange:function(t){t&&t.length?this.range=n.map(t,function(n){return n.valueOf()}):delete this.range;this.fill()},getClassNames:function(t){var i=[],r=this.viewDate.getUTCFullYear(),u=this.viewDate.getUTCMonth(),f=s();return t.getUTCFullYear()<r||t.getUTCFullYear()===r&&t.getUTCMonth()<u?i.push("old"):(t.getUTCFullYear()>r||t.getUTCFullYear()===r&&t.getUTCMonth()>u)&&i.push("new"),this.focusDate&&t.valueOf()===this.focusDate.valueOf()&&i.push("focused"),this.o.todayHighlight&&l(t,f)&&i.push("today"),this.dates.contains(t)!==-1&&i.push("active"),this.dateWithinRange(t)||i.push("disabled"),this.dateIsDisabled(t)&&i.push("disabled","disabled-date"),n.inArray(t.getUTCDay(),this.o.daysOfWeekHighlighted)!==-1&&i.push("highlighted"),this.range&&(t>this.range[0]&&t<this.range[this.range.length-1]&&i.push("range"),n.inArray(t.valueOf(),this.range)!==-1&&i.push("selected"),t.valueOf()===this.range[0]&&i.push("range-start"),t.valueOf()===this.range[this.range.length-1]&&i.push("range-end")),i},_fill_yearsView:function(i,r,u,f,e,o,s){for(var c,v,h,w="",l=u/10,b=this.picker.find(i),y=Math.floor(f/u)*u,p=y+9*l,k=Math.floor(this.viewDate.getFullYear()/l)*l,d=n.map(this.dates,function(n){return Math.floor(n.getUTCFullYear()/l)*l}),a=y-l;a<=p+l;a+=l)c=[r],v=null,a===y-l?c.push("old"):a===p+l&&c.push("new"),n.inArray(a,d)!==-1&&c.push("active"),(a<e||a>o)&&c.push("disabled"),a===k&&c.push("focused"),s!==n.noop&&(h=s(new Date(a,0,1)),h===t?h={}:"boolean"==typeof h?h={enabled:h}:"string"==typeof h&&(h={classes:h}),h.enabled===!1&&c.push("disabled"),h.classes&&(c=c.concat(h.classes.split(/\s+/))),h.tooltip&&(v=h.tooltip)),w+='<span class="'+c.join(" ")+'"'+(v?' title="'+v+'"':"")+">"+a+"<\/span>";b.find(".datepicker-switch").text(y+"-"+p);b.find("td").html(w)},fill:function(){var y,u,w=new Date(this.viewDate),o=w.getUTCFullYear(),d=w.getUTCMonth(),a=this.o.startDate!==-(1/0)?this.o.startDate.getUTCFullYear():-(1/0),ut=this.o.startDate!==-(1/0)?this.o.startDate.getUTCMonth():-(1/0),v=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,ft=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,et=r[this.o.language].today||r.en.today||"",ot=r[this.o.language].clear||r.en.clear||"",st=r[this.o.language].titleFormat||r.en.titleFormat,e,g,h,p,s,c,k,it,l,rt;if(!isNaN(o)&&!isNaN(d)){for(this.picker.find(".datepicker-days .datepicker-switch").text(i.formatDate(w,st,this.o.language)),this.picker.find("tfoot .today").text(et).css("display",this.o.todayBtn===!0||"linked"===this.o.todayBtn?"table-cell":"none"),this.picker.find("tfoot .clear").text(ot).css("display",this.o.clearBtn===!0?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display","string"==typeof this.o.title&&""!==this.o.title?"table-cell":"none"),this.updateNavArrows(),this.fillMonths(),e=f(o,d,0),g=e.getUTCDate(),e.setUTCDate(g-(e.getUTCDay()-this.o.weekStart+7)%7),h=new Date(e),e.getUTCFullYear()<100&&h.setUTCFullYear(e.getUTCFullYear()),h.setUTCDate(h.getUTCDate()+42),h=h.valueOf(),c=[];e.valueOf()<h;){if(p=e.getUTCDay(),p===this.o.weekStart&&(c.push("<tr>"),this.o.calendarWeeks)){var nt=new Date(+e+(this.o.weekStart-p-7)%7*864e5),tt=new Date(Number(nt)+(11-nt.getUTCDay())%7*864e5),b=new Date(Number(b=f(tt.getUTCFullYear(),0,1))+(11-b.getUTCDay())%7*864e5),ht=(tt-b)/6048e5+1;c.push('<td class="cw">'+ht+"<\/td>")}s=this.getClassNames(e);s.push("day");k=e.getUTCDate();this.o.beforeShowDay!==n.noop&&(u=this.o.beforeShowDay(this._utc_to_local(e)),u===t?u={}:"boolean"==typeof u?u={enabled:u}:"string"==typeof u&&(u={classes:u}),u.enabled===!1&&s.push("disabled"),u.classes&&(s=s.concat(u.classes.split(/\s+/))),u.tooltip&&(y=u.tooltip),u.content&&(k=u.content));s=n.isFunction(n.uniqueSort)?n.uniqueSort(s):n.unique(s);c.push('<td class="'+s.join(" ")+'"'+(y?' title="'+y+'"':"")+' data-date="'+e.getTime().toString()+'">'+k+"<\/td>");y=null;p===this.o.weekEnd&&c.push("<\/tr>");e.setUTCDate(e.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(c.join(""));it=r[this.o.language].monthsTitle||r.en.monthsTitle||"Months";l=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?it:o).end().find("tbody span").removeClass("active");(n.each(this.dates,function(n,t){t.getUTCFullYear()===o&&l.eq(t.getUTCMonth()).addClass("active")}),(o<a||o>v)&&l.addClass("disabled"),o===a&&l.slice(0,ut).addClass("disabled"),o===v&&l.slice(ft+1).addClass("disabled"),this.o.beforeShowMonth!==n.noop)&&(rt=this,n.each(l,function(i,r){var f=new Date(o,i,1),u=rt.o.beforeShowMonth(f);u===t?u={}:"boolean"==typeof u?u={enabled:u}:"string"==typeof u&&(u={classes:u});u.enabled!==!1||n(r).hasClass("disabled")||n(r).addClass("disabled");u.classes&&n(r).addClass(u.classes);u.tooltip&&n(r).prop("title",u.tooltip)}));this._fill_yearsView(".datepicker-years","year",10,o,a,v,this.o.beforeShowYear);this._fill_yearsView(".datepicker-decades","decade",100,o,a,v,this.o.beforeShowDecade);this._fill_yearsView(".datepicker-centuries","century",1e3,o,a,v,this.o.beforeShowCentury)}},updateNavArrows:function(){if(this._allow_update){var i,r,u=new Date(this.viewDate),t=u.getUTCFullYear(),f=u.getUTCMonth(),e=this.o.startDate!==-(1/0)?this.o.startDate.getUTCFullYear():-(1/0),s=this.o.startDate!==-(1/0)?this.o.startDate.getUTCMonth():-(1/0),o=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,h=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,n=1;switch(this.viewMode){case 4:n*=10;case 3:n*=10;case 2:n*=10;case 1:i=Math.floor(t/n)*n<e;r=Math.floor(t/n)*n+n>o;break;case 0:i=t<=e&&f<s;r=t>=o&&f>=h}this.picker.find(".prev").toggleClass("disabled",i);this.picker.find(".next").toggleClass("disabled",r)}},click:function(t){t.preventDefault();t.stopPropagation();var r,o,u,e;r=n(t.target);r.hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1);r.hasClass("today")&&!r.hasClass("day")&&(this.setViewMode(0),this._setDate(s(),"linked"===this.o.todayBtn?null:"view"));r.hasClass("clear")&&this.clearDates();r.hasClass("disabled")||(r.hasClass("month")||r.hasClass("year")||r.hasClass("decade")||r.hasClass("century"))&&(this.viewDate.setUTCDate(1),o=1,1===this.viewMode?(e=r.parent().find("span").index(r),u=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(e)):(e=0,u=Number(r.text()),this.viewDate.setUTCFullYear(u)),this._trigger(i.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(f(u,e,o)):(this.setViewMode(this.viewMode-1),this.fill()));this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus();delete this._focused_from},dayCellClick:function(t){var r=n(t.currentTarget),u=r.data("date"),i=new Date(u);this.o.updateViewDate&&(i.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),i.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate));this._setDate(i)},navArrowsClick:function(t){var u=n(t.currentTarget),r=u.hasClass("prev")?-1:1;0!==this.viewMode&&(r*=12*i.viewModes[this.viewMode].navStep);this.viewDate=this.moveMonth(this.viewDate,r);this._trigger(i.viewModes[this.viewMode].e,this.viewDate);this.fill()},_toggle_multidate:function(n){var t=this.dates.contains(n);if(n||this.dates.clear(),t!==-1?(this.o.multidate===!0||this.o.multidate>1||this.o.toggleActive)&&this.dates.remove(t):this.o.multidate===!1?(this.dates.clear(),this.dates.push(n)):this.dates.push(n),"number"==typeof this.o.multidate)for(;this.dates.length>this.o.multidate;)this.dates.remove(0)},_setDate:function(n,t){t&&"date"!==t||this._toggle_multidate(n&&new Date(n));(!t&&this.o.updateViewDate||"view"===t)&&(this.viewDate=n&&new Date(n));this.fill();this.setValue();t&&"view"===t||this._trigger("changeDate");this.inputField.trigger("change");!this.o.autoclose||t&&"date"!==t||this.hide()},moveDay:function(n,t){var i=new Date(n);return i.setUTCDate(n.getUTCDate()+t),i},moveWeek:function(n,t){return this.moveDay(n,7*t)},moveMonth:function(n,t){var f;if(!p(n))return this.o.defaultViewDate;if(!t)return n;var r,u,i=new Date(n.valueOf()),e=i.getUTCDate(),o=i.getUTCMonth(),s=Math.abs(t);if(t=t>0?1:-1,1===s)u=t===-1?function(){return i.getUTCMonth()===o}:function(){return i.getUTCMonth()!==r},r=o+t,i.setUTCMonth(r),r=(r+12)%12;else{for(f=0;f<s;f++)i=this.moveMonth(i,t);r=i.getUTCMonth();i.setUTCDate(e);u=function(){return r!==i.getUTCMonth()}}for(;u();)i.setUTCDate(--e),i.setUTCMonth(r);return i},moveYear:function(n,t){return this.moveMonth(n,12*t)},moveAvailableDate:function(n,t,i){do{if(n=this[i](n,t),!this.dateWithinRange(n))return!1;i="moveDay"}while(this.dateIsDisabled(n));return n},weekOfDateIsDisabled:function(t){return n.inArray(t.getUTCDay(),this.o.daysOfWeekDisabled)!==-1},dateIsDisabled:function(t){return this.weekOfDateIsDisabled(t)||n.grep(this.o.datesDisabled,function(n){return l(t,n)}).length>0},dateWithinRange:function(n){return n>=this.o.startDate&&n<=this.o.endDate},keydown:function(n){if(!this.picker.is(":visible"))return void(40!==n.keyCode&&27!==n.keyCode||(this.show(),n.stopPropagation()));var i,t,u=!1,r=this.focusDate||this.viewDate;switch(n.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide();n.preventDefault();n.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||7===this.o.daysOfWeekDisabled.length)break;i=37===n.keyCode||38===n.keyCode?-1:1;0===this.viewMode?n.ctrlKey?(t=this.moveAvailableDate(r,i,"moveYear"),t&&this._trigger("changeYear",this.viewDate)):n.shiftKey?(t=this.moveAvailableDate(r,i,"moveMonth"),t&&this._trigger("changeMonth",this.viewDate)):37===n.keyCode||39===n.keyCode?t=this.moveAvailableDate(r,i,"moveDay"):this.weekOfDateIsDisabled(r)||(t=this.moveAvailableDate(r,i,"moveWeek")):1===this.viewMode?(38!==n.keyCode&&40!==n.keyCode||(i*=4),t=this.moveAvailableDate(r,i,"moveMonth")):2===this.viewMode&&(38!==n.keyCode&&40!==n.keyCode||(i*=4),t=this.moveAvailableDate(r,i,"moveYear"));t&&(this.focusDate=this.viewDate=t,this.setValue(),this.fill(),n.preventDefault());break;case 13:if(!this.o.forceParse)break;r=this.focusDate||this.dates.get(-1)||this.viewDate;this.o.keyboardNavigation&&(this._toggle_multidate(r),u=!0);this.focusDate=null;this.viewDate=this.dates.get(-1)||this.viewDate;this.setValue();this.fill();this.picker.is(":visible")&&(n.preventDefault(),n.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null;this.viewDate=this.dates.get(-1)||this.viewDate;this.fill();this.hide()}u&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))},setViewMode:function(n){this.viewMode=n;this.picker.children("div").hide().filter(".datepicker-"+i.viewModes[this.viewMode].clsName).show();this.updateNavArrows();this._trigger("changeViewMode",new Date(this.viewDate))}};c=function(t,i){n.data(t,"datepicker",this);this.element=n(t);this.inputs=n.map(i.inputs,function(n){return n.jquery?n[0]:n});delete i.inputs;this.keepEmptyValues=i.keepEmptyValues;delete i.keepEmptyValues;o.call(n(this.inputs),i).on("changeDate",n.proxy(this.dateUpdated,this));this.pickers=n.map(this.inputs,function(t){return n.data(t,"datepicker")});this.updateDates()};c.prototype={updateDates:function(){this.dates=n.map(this.pickers,function(n){return n.getUTCDate()});this.updateRanges()},updateRanges:function(){var t=n.map(this.dates,function(n){return n.valueOf()});n.each(this.pickers,function(n,i){i.setRange(t)})},clearDates:function(){n.each(this.pickers,function(n,t){t.clearDates()})},dateUpdated:function(i){var u;if(!this.updating&&(this.updating=!0,u=n.data(i.target,"datepicker"),u!==t)){var r=u.getUTCDate(),s=this.keepEmptyValues,o=n.inArray(i.target,this.inputs),f=o-1,e=o+1,h=this.inputs.length;if(o!==-1){if(n.each(this.pickers,function(n,t){t.getUTCDate()||t!==u&&s||t.setUTCDate(r)}),r<this.dates[f])for(;f>=0&&r<this.dates[f];)this.pickers[f--].setUTCDate(r);else if(r>this.dates[e])for(;e<h&&r>this.dates[e];)this.pickers[e++].setUTCDate(r);this.updateDates();delete this.updating}}},destroy:function(){n.map(this.pickers,function(n){n.destroy()});n(this.inputs).off("changeDate",this.dateUpdated);delete this.element.data().datepicker},remove:h("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};v=n.fn.datepicker;o=function(i){var f=Array.apply(null,arguments),r;if(f.shift(),this.each(function(){var s=n(this),t=s.data("datepicker"),h="object"==typeof i&&i;if(!t){var l=w(this,"date"),a=n.extend({},e,l,h),v=b(a.language),o=n.extend({},e,v,l,h);s.hasClass("input-daterange")||o.inputs?(n.extend(o,{inputs:o.inputs||s.find("input").toArray()}),t=new c(this,o)):t=new u(this,o);s.data("datepicker",t)}"string"==typeof i&&"function"==typeof t[i]&&(r=t[i].apply(t,f))}),r===t||r instanceof u||r instanceof c)return this;if(this.length>1)throw new Error("Using only allowed for the collection of a single element ("+i+" function)");return r};n.fn.datepicker=o;e=n.fn.datepicker.defaults={assumeNearbyYear:!1,autoclose:!1,beforeShowDay:n.noop,beforeShowMonth:n.noop,beforeShowYear:n.noop,beforeShowDecade:n.noop,beforeShowCentury:n.noop,calendarWeeks:!1,clearBtn:!1,toggleActive:!1,daysOfWeekDisabled:[],daysOfWeekHighlighted:[],datesDisabled:[],endDate:1/0,forceParse:!0,format:"mm/dd/yyyy",keepEmptyValues:!1,keyboardNavigation:!0,language:"en",minViewMode:0,maxViewMode:4,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-(1/0),startView:0,todayBtn:!1,todayHighlight:!1,updateViewDate:!0,weekStart:0,disableTouchKeyboard:!1,enableOnReadonly:!0,showOnFocus:!0,zIndexOffset:10,container:"body",immediateUpdates:!1,title:"",templates:{leftArrow:"&#x00AB;",rightArrow:"&#x00BB;"},showWeekDays:!0};y=n.fn.datepicker.locale_opts=["format","rtl","weekStart"];n.fn.datepicker.Constructor=u;r=n.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear",titleFormat:"MM yyyy"}};i={viewModes:[{names:["days","month"],clsName:"days",e:"changeMonth"},{names:["months","year"],clsName:"months",e:"changeYear",navStep:1},{names:["years","decade"],clsName:"years",e:"changeDecade",navStep:10},{names:["decades","century"],clsName:"decades",e:"changeCentury",navStep:100},{names:["centuries","millennium"],clsName:"centuries",e:"changeMillennium",navStep:1e3}],validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,parseFormat:function(n){if("function"==typeof n.toValue&&"function"==typeof n.toDisplay)return n;var t=n.replace(this.validParts,"\0").split("\0"),i=n.match(this.validParts);if(!t||!t.length||!i||0===i.length)throw new Error("Invalid date format.");return{separators:t,parts:i}},parseDate:function(f,e,o,h){function et(n,t){return t===!0&&(t=10),n<100&&(n+=2e3,n>(new Date).getFullYear()+t&&(n-=100)),n}function tt(){var n=this.slice(0,l[c].length),t=l[c].slice(0,n.length);return n.toLowerCase()===t.toLowerCase()}var l,y,it,c,rt,ut,g,v,ft,d,w;if(!f)return t;if(f instanceof Date)return f;if("string"==typeof e&&(e=i.parseFormat(e)),e.toValue)return e.toValue(f,e,o);if(ut={d:"moveDay",m:"moveMonth",w:"moveWeek",y:"moveYear"},g={yesterday:"-1d",today:"+0d",tomorrow:"+1d"},f in g&&(f=g[f]),/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(f)){for(l=f.match(/([\-+]\d+)([dmwy])/gi),f=new Date,c=0;c<l.length;c++)y=l[c].match(/([\-+]\d+)([dmwy])/i),it=Number(y[1]),rt=ut[y[2].toLowerCase()],f=u.prototype[rt](f,it);return u.prototype._zero_utc_time(f)}l=f&&f.match(this.nonpunctuation)||[];var p,b,k={},nt=["yyyy","yy","M","MM","m","mm","d","dd"],a={yyyy:function(n,t){return n.setUTCFullYear(h?et(t,h):t)},m:function(n,t){if(isNaN(n))return n;for(t-=1;t<0;)t+=12;for(t%=12,n.setUTCMonth(t);n.getUTCMonth()!==t;)n.setUTCDate(n.getUTCDate()-1);return n},d:function(n,t){return n.setUTCDate(t)}};if(a.yy=a.yyyy,a.M=a.MM=a.mm=a.m,a.dd=a.d,f=s(),v=e.parts.slice(),l.length!==v.length&&(v=n(v).filter(function(t,i){return n.inArray(i,nt)!==-1}).toArray()),l.length===v.length){for(c=0,ft=v.length;c<ft;c++){if(p=parseInt(l[c],10),y=v[c],isNaN(p))switch(y){case"MM":b=n(r[o].months).filter(tt);p=n.inArray(b[0],r[o].months)+1;break;case"M":b=n(r[o].monthsShort).filter(tt);p=n.inArray(b[0],r[o].monthsShort)+1}k[y]=p}for(c=0;c<nt.length;c++)w=nt[c],w in k&&!isNaN(k[w])&&(d=new Date(f),a[w](d,k[w]),isNaN(d)||(f=d))}return f},formatDate:function(t,u,f){var e;if(!t)return"";if("string"==typeof u&&(u=i.parseFormat(u)),u.toDisplay)return u.toDisplay(t,u,f);e={d:t.getUTCDate(),D:r[f].daysShort[t.getUTCDay()],DD:r[f].days[t.getUTCDay()],m:t.getUTCMonth()+1,M:r[f].monthsShort[t.getUTCMonth()],MM:r[f].months[t.getUTCMonth()],yy:t.getUTCFullYear().toString().substring(2),yyyy:t.getUTCFullYear()};e.dd=(e.d<10?"0":"")+e.d;e.mm=(e.m<10?"0":"")+e.m;t=[];for(var s=n.extend([],u.separators),o=0,h=u.parts.length;o<=h;o++)s.length&&t.push(s.shift()),t.push(e[u.parts[o]]);return t.join("")},headTemplate:'<thead><tr><th colspan="7" class="datepicker-title"><\/th><\/tr><tr><th class="prev">'+e.templates.leftArrow+'<\/th><th colspan="5" class="datepicker-switch"><\/th><th class="next">'+e.templates.rightArrow+"<\/th><\/tr><\/thead>",contTemplate:'<tbody><tr><td colspan="7"><\/td><\/tr><\/tbody>',footTemplate:'<tfoot><tr><th colspan="7" class="today"><\/th><\/tr><tr><th colspan="7" class="clear"><\/th><\/tr><\/tfoot>'};i.template='<div class="datepicker"><div class="datepicker-days"><table class="table-condensed">'+i.headTemplate+"<tbody><\/tbody>"+i.footTemplate+'<\/table><\/div><div class="datepicker-months"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-years"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-decades"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-centuries"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+"<\/table><\/div><\/div>";n.fn.datepicker.DPGlobal=i;n.fn.datepicker.noConflict=function(){return n.fn.datepicker=v,this};n.fn.datepicker.version="1.8.0";n.fn.datepicker.deprecated=function(n){var t=window.console;t&&t.warn&&t.warn("DEPRECATED: "+n)};n(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(t){var i=n(this);i.data("datepicker")||(t.preventDefault(),o.call(i,"show"))});n(function(){o.call(n('[data-provide="datepicker-inline"]'))})}),function(n,t){typeof define=="function"&&define.amd?define(["jquery"],t):typeof exports=="object"?module.exports=t(require("jquery")):n.bootbox=t(n.jQuery)}(this,function init(n,t){function a(n){var t=o[f.locale];return t?t[n]:o.en[n]}function e(t,i,r){t.stopPropagation();t.preventDefault();var u=n.isFunction(r)&&r(t)===!1;u||i.modal("hide")}function v(n){var i,t=0;for(i in n)t++;return t}function r(t,i){var r=0;n.each(t,function(n,t){i(n,t,r++)})}function y(t){var i,u;if(typeof t!="object")throw new Error("Please supply an object of options");if(!t.message)throw new Error("Please specify a message");return t=n.extend({},f,t),t.buttons||(t.buttons={}),t.backdrop=t.backdrop?"static":!1,i=t.buttons,u=v(i),r(i,function(t,r,f){if(n.isFunction(r)&&(r=i[t]={callback:r}),n.type(r)!=="object")throw new Error("button with key "+t+" must be an object");r.label||(r.label=t);r.className||(r.className=u<=2&&f===u-1?"btn-primary":"btn-default")}),t}function p(n,t){var r=n.length,i={};if(r<1||r>2)throw new Error("Invalid argument length");return r===2||typeof n[0]=="string"?(i[t[0]]=n[0],i[t[1]]=n[1]):i=n[0],i}function s(t,i,r){return n.extend(!0,{},t,p(i,r))}function h(n,t,i,r){var u={className:"bootbox-"+n,buttons:c.apply(null,t)};return l(s(u,r,i),t)}function c(){for(var t={},n=0,i=arguments.length;n<i;n++){var r=arguments[n],u=r.toLowerCase(),f=r.toUpperCase();t[u]={label:a(f)}}return t}function l(n,i){var u={};return r(i,function(n,t){u[t]=!0}),r(n.buttons,function(n){if(u[n]===t)throw new Error("button key "+n+" is not allowed (options are "+i.join("\n")+")");}),n}var u={dialog:"<div class='bootbox modal' tabindex='-1' role='dialog'><div class='modal-dialog'><div tabindex='0' class='modal-content'><div class='modal-body'><div class='bootbox-body'><\/div><\/div><\/div><\/div><\/div>",header:"<div class='modal-header'><h4 class='modal-title'><\/h4><\/div>",footer:"<div class='modal-footer'><\/div>",closeButton:"<button type='button' class='bootbox-close-button close' data-dismiss='modal' aria-hidden='true'>&times;<\/button>",form:"<form class='bootbox-form'><\/form>",inputs:{text:"<input class='bootbox-input bootbox-input-text form-control' autocomplete=off type=text />",textarea:"<textarea class='bootbox-input bootbox-input-textarea form-control'><\/textarea>",email:"<input class='bootbox-input bootbox-input-email form-control' autocomplete='off' type='email' />",select:"<select class='bootbox-input bootbox-input-select form-control'><\/select>",checkbox:"<div class='checkbox'><label><input class='bootbox-input bootbox-input-checkbox' type='checkbox' /><\/label><\/div>",date:"<input class='bootbox-input bootbox-input-date form-control' autocomplete=off type='date' />",time:"<input class='bootbox-input bootbox-input-time form-control' autocomplete=off type='time' />",number:"<input class='bootbox-input bootbox-input-number form-control' autocomplete=off type='number' />",password:"<input class='bootbox-input bootbox-input-password form-control' autocomplete='off' type='password' />"}},f={locale:"en",backdrop:!0,animate:!0,className:null,closeButton:!0,show:!0,container:"body"},i={},o;return i.alert=function(){var t;if(t=h("alert",["ok"],["message","callback"],arguments),t.callback&&!n.isFunction(t.callback))throw new Error("alert requires callback property to be a function when provided");return t.buttons.ok.callback=t.onEscape=function(){return n.isFunction(t.callback)?t.callback():!0},i.dialog(t)},i.confirm=function(){var t;if(t=h("confirm",["cancel","confirm"],["message","callback"],arguments),t.buttons.cancel.callback=t.onEscape=function(){return t.callback(!1)},t.buttons.confirm.callback=function(){return t.callback(!0)},!n.isFunction(t.callback))throw new Error("confirm requires a callback");return i.dialog(t)},i.prompt=function(){var f,p,h,v,e,w,o,b,y,a,k;if(v=n(u.form),p={className:"bootbox-prompt",buttons:c("cancel","confirm"),value:"",inputType:"text"},f=l(s(p,arguments,["title","callback"]),["cancel","confirm"]),w=f.show===t?!0:f.show,b=["date","time","number"],y=document.createElement("input"),y.setAttribute("type",f.inputType),b[f.inputType]&&(f.inputType=y.type),f.message=v,f.buttons.cancel.callback=f.onEscape=function(){return f.callback(null)},f.buttons.confirm.callback=function(){var t,i;switch(f.inputType){case"text":case"textarea":case"email":case"select":case"date":case"time":case"number":case"password":t=e.val();break;case"checkbox":i=e.find("input:checked");t=[];r(i,function(i,r){t.push(n(r).val())})}return f.callback(t)},f.show=!1,!f.title)throw new Error("prompt requires a title");if(!n.isFunction(f.callback))throw new Error("prompt requires a callback");if(!u.inputs[f.inputType])throw new Error("invalid prompt type");e=n(u.inputs[f.inputType]);switch(f.inputType){case"text":case"textarea":case"email":case"date":case"time":case"number":case"password":e.val(f.value);break;case"select":if(a={},o=f.inputOptions||[],!o.length)throw new Error("prompt with select requires options");r(o,function(i,r){var u=e;if(r.value===t||r.text===t)throw new Error("given options in wrong format");r.group&&(a[r.group]||(a[r.group]=n("<optgroup/>").attr("label",r.group)),u=a[r.group]);u.append("<option value='"+r.value+"'>"+r.text+"<\/option>")});r(a,function(n,t){e.append(t)});e.val(f.value);break;case"checkbox":if(k=n.isArray(f.value)?f.value:[f.value],o=f.inputOptions||[],!o.length)throw new Error("prompt with checkbox requires options");if(!o[0].value||!o[0].text)throw new Error("given options in wrong format");e=n("<div/>");r(o,function(t,i){var o=n(u.inputs[f.inputType]);o.find("input").attr("value",i.value);o.find("label").append(i.text);r(k,function(n,t){t===i.value&&o.find("input").prop("checked",!0)});e.append(o)})}f.placeholder&&e.attr("placeholder",f.placeholder);f.pattern&&e.attr("pattern",f.pattern);v.append(e);v.on("submit",function(n){n.preventDefault();h.find(".btn-primary").click()});h=i.dialog(f);h.off("shown.bs.modal");h.on("shown.bs.modal",function(){e.focus()});return w===!0&&h.modal("show"),h},i.dialog=function(t){var h;t=y(t);var i=n(u.dialog),o=i.find(".modal-body"),c=t.buttons,s="",f={onEscape:t.onEscape};r(c,function(n,t){s+="<button data-bb-handler='"+n+"' type='button' class='btn "+t.className+"'>"+t.label+"<\/button>";f[n]=t.callback});o.find(".bootbox-body").html(t.message);t.animate===!0&&i.addClass("fade");t.className&&i.addClass(t.className);t.title&&o.before(u.header);t.closeButton&&(h=n(u.closeButton),t.title?i.find(".modal-header").prepend(h):h.css("margin-top","-10px").prependTo(o));t.title&&i.find(".modal-title").html(t.title);s.length&&(o.after(u.footer),i.find(".modal-footer").html(s));i.on("hidden.bs.modal",function(n){n.target===this&&i.remove()});i.on("shown.bs.modal",function(){i.find(".modal-content:first").focus()});i.on("escape.close.bb",function(n){f.onEscape&&e(n,i,f.onEscape)});i.on("click",".modal-footer button",function(t){var r=n(this).data("bb-handler");e(t,i,f[r])});i.on("click",".bootbox-close-button",function(n){e(n,i,f.onEscape)});i.on("keyup",function(n){n.which===27&&i.trigger("escape.close.bb")});return n(t.container).append(i),i.modal({backdrop:t.backdrop,keyboard:!1,show:!1}),t.show&&i.modal("show"),i},i.setDefaults=function(){var t={};arguments.length===2?t[arguments[0]]=arguments[1]:t=arguments[0];n.extend(f,t)},i.hideAll=function(){n(".bootbox").modal("hide")},o={br:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Sim"},da:{OK:"OK",CANCEL:"Annuller",CONFIRM:"Accepter"},de:{OK:"OK",CANCEL:"Abbrechen",CONFIRM:"Akzeptieren"},en:{OK:"OK",CANCEL:"Cancel",CONFIRM:"OK"},es:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Aceptar"},fi:{OK:"OK",CANCEL:"Peruuta",CONFIRM:"OK"},fr:{OK:"OK",CANCEL:"Annuler",CONFIRM:"D'accord"},he:{OK:"אישור",CANCEL:"ביטול",CONFIRM:"אישור"},it:{OK:"OK",CANCEL:"Annulla",CONFIRM:"Conferma"},lt:{OK:"Gerai",CANCEL:"Atšaukti",CONFIRM:"Patvirtinti"},lv:{OK:"Labi",CANCEL:"Atcelt",CONFIRM:"Apstiprināt"},nl:{OK:"OK",CANCEL:"Annuleren",CONFIRM:"Accepteren"},no:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},pl:{OK:"OK",CANCEL:"Anuluj",CONFIRM:"Potwierdź"},ru:{OK:"OK",CANCEL:"Отмена",CONFIRM:"Применить"},sv:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},tr:{OK:"Tamam",CANCEL:"İptal",CONFIRM:"Onayla"},zh_CN:{OK:"OK",CANCEL:"取消",CONFIRM:"确认"},zh_TW:{OK:"OK",CANCEL:"取消",CONFIRM:"確認"}},i.init=function(t){return init(t||n)},i});!function(n){void 0==n.fn.ajaxForm&&n.getScript(("https:"==document.location.protocol?"https://":"http://")+"malsup.github.io/jquery.form.js");var t={};t.fileapi=void 0!==n("<input type='file'/>").get(0).files;t.formdata=void 0!==window.FormData;n.fn.uploadFile=function(i){function p(){y||(y=!0,function n(){if(r.sequential||(r.sequentialCount=99999),0==f.length&&0==s.length)r.afterUploadAll&&r.afterUploadAll(u),y=!1;else{if(s.length<r.sequentialCount){var t=f.shift();void 0!=t&&(s.push(t),t.removeClass(u.formGroup),t.submit())}window.setTimeout(n,100)}}())}function g(t,i,r){r.on("dragenter",function(t){t.stopPropagation();t.preventDefault();n(this).addClass(i.dragDropHoverClass)});r.on("dragover",function(t){t.stopPropagation();t.preventDefault();var r=n(this);r.hasClass(i.dragDropContainerClass)&&!r.hasClass(i.dragDropHoverClass)&&r.addClass(i.dragDropHoverClass)});r.on("drop",function(r){r.preventDefault();n(this).removeClass(i.dragDropHoverClass);t.errorLog.html("");var u=r.originalEvent.dataTransfer.files;!i.multiple&&u.length>1?i.showError&&n("<div class='"+i.errorClass+"'>"+i.multiDragErrorStr+"<\/div>").appendTo(t.errorLog):0!=i.onSelect(u)&&l(i,t,u)});r.on("dragleave",function(){n(this).removeClass(i.dragDropHoverClass)});n(document).on("dragenter",function(n){n.stopPropagation();n.preventDefault()});n(document).on("dragover",function(t){t.stopPropagation();t.preventDefault();var r=n(this);r.hasClass(i.dragDropContainerClass)||r.removeClass(i.dragDropHoverClass)});n(document).on("drop",function(t){t.stopPropagation();t.preventDefault();n(this).removeClass(i.dragDropHoverClass)})}function c(n){var t=n/1024;return parseInt(t)>1024?(t/1024).toFixed(2)+" MB":t.toFixed(2)+" KB"}function w(t){for(var u,r=[],e=(r="string"==jQuery.type(t)?t.split("&"):n.param(t).split("&")).length,f=[],i=0;i<e;i++)r[i]=r[i].replace(/\+/g," "),u=r[i].split("="),f.push([decodeURIComponent(u[0]),decodeURIComponent(u[1])]);return f}function l(t,i,r){for(var h,e,f,l,o,v,y,u=0;u<r.length;u++)if(b(i,t,r[u].name))if(t.allowDuplicates||!nt(i,r[u].name))if(-1!=t.maxFileSize&&r[u].size>t.maxFileSize)t.showError&&n("<div class='"+t.errorClass+"'><b>"+r[u].name+"<\/b> "+t.sizeErrorStr+c(t.maxFileSize)+"<\/div>").appendTo(i.errorLog);else if(-1!=t.maxFileCount&&i.selectedFiles>=t.maxFileCount)t.showError&&n("<div class='"+t.errorClass+"'><b>"+r[u].name+"<\/b> "+t.maxFileCountErrorStr+t.maxFileCount+"<\/div>").appendTo(i.errorLog);else{i.selectedFiles++;i.existingFileNames.push(r[u].name);var p=n.extend({},t),s=new FormData,k=t.fileName.replace("[]","");if(s.append(k,r[u]),h=t.formData,h)for(e=w(h),f=0;f<e.length;f++)e[f]&&s.append(e[f][0],e[f][1]);p.fileData=s;l=new a(i,t);o="";o=t.showFileCounter?i.fileCounter+t.fileCounterStyle+r[u].name:r[u].name;t.showFileSize&&(o+=" ("+c(r[u].size)+")");l.filename.html(o);v=n("<form style='display:block; position:absolute;left: 150px;' class='"+i.formGroup+"' method='"+t.method+"' action='"+t.url+"' enctype='"+t.enctype+"'><\/form>");v.appendTo("body");y=[];y.push(r[u].name);d(v,p,l,y,i,r[u]);i.fileCounter++}else t.showError&&n("<div class='"+t.errorClass+"'><b>"+r[u].name+"<\/b> "+t.duplicateErrorStr+"<\/div>").appendTo(i.errorLog);else t.showError&&n("<div class='"+t.errorClass+"'><b>"+r[u].name+"<\/b> "+t.extErrorStr+t.allowedTypes+"<\/div>").appendTo(i.errorLog)}function b(n,t,i){var r=t.allowedTypes.toLowerCase().split(/[\s,]+/g),u=i.split(".").pop().toLowerCase();return!("*"!=t.allowedTypes&&jQuery.inArray(u,r)<0)}function nt(n,t){var u=!1,i;if(n.existingFileNames.length)for(i=0;i<n.existingFileNames.length;i++)(n.existingFileNames[i]==t||r.duplicateStrict&&n.existingFileNames[i].toLowerCase()==t.toLowerCase())&&(u=!0);return u}function h(n,t){var i,r;if(n.existingFileNames.length)for(i=0;i<t.length;i++)r=n.existingFileNames.indexOf(t[i]),-1!=r&&n.existingFileNames.splice(r,1)}function tt(n,t){if(n){t.show();var i=new FileReader;i.onload=function(n){t.attr("src",n.target.result)};i.readAsDataURL(n)}}function e(t,i){if(t.showFileCounter){var r=n(i.container).find(".ajax-file-upload-filename").length;i.fileCounter=r+1;n(i.container).find(".ajax-file-upload-filename").each(function(){var i=n(this).html().split(t.fileCounterStyle),u=(parseInt(i[0]),r+t.fileCounterStyle+i[1]);n(this).html(u);r--})}}function k(i,r,u,f){var h="ajax-upload-id-"+(new Date).getTime(),o=n("<form method='"+u.method+"' action='"+u.url+"' enctype='"+u.enctype+"'><\/form>"),c="<input type='file' id='"+h+"' name='"+u.fileName+"' accept='"+u.acceptFiles+"'/>",s;u.multiple&&(u.fileName.indexOf("[]")!=u.fileName.length-2&&(u.fileName+="[]"),c="<input type='file' id='"+h+"' name='"+u.fileName+"' accept='"+u.acceptFiles+"' multiple/>");s=n(c).appendTo(o);s.change(function(){var s,c,y,w,v,h,p;if(i.errorLog.html(""),u.allowedTypes.toLowerCase().split(","),s=[],this.files){for(h=0;h<this.files.length;h++)s.push(this.files[h].name);if(0==u.onSelect(this.files))return}else{if(c=n(this).val(),y=[],s.push(c),!b(i,u,c))return void(u.showError&&n("<div class='"+u.errorClass+"'><b>"+c+"<\/b> "+u.extErrorStr+u.allowedTypes+"<\/div>").appendTo(i.errorLog));if(y.push({name:c,size:"NA"}),0==u.onSelect(y))return}if(e(u,i),f.unbind("click"),o.hide(),k(i,r,u,f),o.addClass(r),u.serialize&&t.fileapi&&t.formdata)o.removeClass(r),w=this.files,o.remove(),l(u,i,w);else{for(v="",h=0;h<s.length;h++)v+=u.showFileCounter?i.fileCounter+u.fileCounterStyle+s[h]+"<br>":s[h]+"<br>",i.fileCounter++;if(-1!=u.maxFileCount&&i.selectedFiles+s.length>u.maxFileCount)return void(u.showError&&n("<div class='"+u.errorClass+"'><b>"+v+"<\/b> "+u.maxFileCountErrorStr+u.maxFileCount+"<\/div>").appendTo(i.errorLog));i.selectedFiles+=s.length;p=new a(i,u);p.filename.html(v);d(o,u,p,s,i,null)}});u.nestedForms?(o.css({margin:0,padding:0}),f.css({position:"relative",overflow:"hidden",cursor:"default"}),s.css({position:"absolute",cursor:"pointer",top:"0px",width:"100%",height:"100%",left:"0px","z-index":"100",opacity:"0.0",filter:"alpha(opacity=0)","-ms-filter":"alpha(opacity=0)","-khtml-opacity":"0.0","-moz-opacity":"0.0"}),o.appendTo(f)):(o.appendTo(n("body")),o.css({margin:0,padding:0,display:"block",position:"absolute",left:"-250px"}),-1!=navigator.appVersion.indexOf("MSIE ")?f.attr("for",h):f.click(function(){s.click()}))}function it(t,i){return this.statusbar=n("<div class='ajax-file-upload-statusbar'><\/div>").width(i.statusBarWidth),this.preview=n("<img class='ajax-file-upload-preview' />").width(i.previewWidth).height(i.previewHeight).appendTo(this.statusbar).hide(),this.filename=n("<div class='ajax-file-upload-filename'><\/div>").appendTo(this.statusbar),this.progressDiv=n("<div class='ajax-file-upload-progress'>").appendTo(this.statusbar).hide(),this.progressbar=n("<div class='ajax-file-upload-bar'><\/div>").appendTo(this.progressDiv),this.abort=n("<div>"+i.abortStr+"<\/div>").appendTo(this.statusbar).hide(),this.cancel=n("<div>"+i.cancelStr+"<\/div>").appendTo(this.statusbar).hide(),this.done=n("<div>"+i.doneStr+"<\/div>").appendTo(this.statusbar).hide(),this.download=n("<div>"+i.downloadStr+"<\/div>").appendTo(this.statusbar).hide(),this.del=n("<div>"+i.deleteStr+"<\/div>").appendTo(this.statusbar).hide(),this.abort.addClass("ajax-file-upload-red"),this.done.addClass("ajax-file-upload-green"),this.download.addClass("ajax-file-upload-green"),this.cancel.addClass("ajax-file-upload-red"),this.del.addClass("ajax-file-upload-red"),this}function a(t,i){var r=null;return(r=i.customProgressBar?new i.customProgressBar(t,i):new it(t,i)).abort.addClass(t.formGroup),r.abort.addClass(i.abortButtonClass),r.cancel.addClass(t.formGroup),r.cancel.addClass(i.cancelButtonClass),i.extraHTML&&(r.extraHTML=n("<div class='extrahtml'>"+i.extraHTML()+"<\/div>").insertAfter(r.filename)),"bottom"==i.uploadQueueOrder?n(t.container).append(r.statusbar):n(t.container).prepend(r.statusbar),r}function d(i,r,u,o,c,l){var a={cache:!1,contentType:!1,processData:!1,forceSync:!1,type:r.method,data:r.formData,formData:r.fileData,dataType:r.returnType,headers:r.headers,beforeSubmit:function(t,s,l){var a,v;if(0!=r.onSubmit.call(this,o)){if(r.dynamicFormData&&(a=w(r.dynamicFormData()),a))for(v=0;v<a.length;v++)a[v]&&(r.serialize&&void 0!=r.fileData?l.formData.append(a[v][0],a[v][1]):l.data[a[v][0]]=a[v][1]);return r.extraHTML&&n(u.extraHTML).find("input,select,textarea").each(function(){r.serialize&&void 0!=r.fileData?l.formData.append(n(this).attr("name"),n(this).val()):l.data[n(this).attr("name")]=n(this).val()}),!0}return u.statusbar.append("<div class='"+r.errorClass+"'>"+r.uploadErrorStr+"<\/div>"),u.cancel.show(),i.remove(),u.cancel.click(function(){f.splice(f.indexOf(i),1);h(c,o);u.statusbar.remove();r.onCancel.call(c,o,u);c.selectedFiles-=o.length;e(r,c)}),!1},beforeSend:function(n,i){for(var f in i.headers)n.setRequestHeader(f,i.headers[f]);u.progressDiv.show();u.cancel.hide();u.done.hide();r.showAbort&&(u.abort.show(),u.abort.click(function(){h(c,o);n.abort();c.selectedFiles-=o.length;r.onAbort.call(c,o,u)}));t.formdata?u.progressbar.width("1%"):u.progressbar.width("5%")},uploadProgress:function(n,t,i,f){f>98&&(f=98);var e=f+"%";f>1&&u.progressbar.width(e);r.showProgress&&(u.progressbar.html(e),u.progressbar.css("text-align","center"))},success:function(t,f,l){if(u.cancel.remove(),s.pop(),"json"==r.returnType&&"object"==n.type(t)&&t.hasOwnProperty(r.customErrorKeyStr)){u.abort.hide();var a=t[r.customErrorKeyStr];return r.onError.call(this,o,200,a,u),r.showStatusAfterError?(u.progressDiv.hide(),u.statusbar.append("<span class='"+r.errorClass+"'>ERROR: "+a+"<\/span>")):(u.statusbar.hide(),u.statusbar.remove()),c.selectedFiles-=o.length,void i.remove()}c.responses.push(t);u.progressbar.width("100%");r.showProgress&&(u.progressbar.html("100%"),u.progressbar.css("text-align","center"));u.abort.hide();r.onSuccess.call(this,o,t,l,u);r.showStatusAfterSuccess?(r.showDone?(u.done.show(),u.done.click(function(){u.statusbar.hide("slow");u.statusbar.remove()})):u.done.hide(),r.showDelete?(u.del.show(),u.del.click(function(){h(c,o);u.statusbar.hide().remove();r.deleteCallback&&r.deleteCallback.call(this,t,u);c.selectedFiles-=o.length;e(r,c)})):u.del.hide()):(u.statusbar.hide("slow"),u.statusbar.remove());r.showDownload&&(u.download.show(),u.download.click(function(){r.downloadCallback&&r.downloadCallback(t,u)}));i.remove()},error:function(n,t,f){u.cancel.remove();s.pop();u.abort.hide();"abort"==n.statusText?(u.statusbar.hide("slow").remove(),e(r,c)):(r.onError.call(this,o,t,f,u),r.showStatusAfterError?(u.progressDiv.hide(),u.statusbar.append("<span class='"+r.errorClass+"'>ERROR: "+f+"<\/span>")):(u.statusbar.hide(),u.statusbar.remove()),c.selectedFiles-=o.length);i.remove()}};r.showPreview&&null!=l&&"image"==l.type.toLowerCase().split("/").shift()&&tt(l,u.preview);r.autoSubmit?(i.ajaxForm(a),f.push(i),p()):(r.showCancel&&(u.cancel.show(),u.cancel.click(function(){f.splice(f.indexOf(i),1);h(c,o);i.remove();u.statusbar.remove();r.onCancel.call(c,o,u);c.selectedFiles-=o.length;e(r,c)})),i.ajaxForm(a))}var r=n.extend({url:"",method:"POST",enctype:"multipart/form-data",returnType:null,allowDuplicates:!0,duplicateStrict:!1,allowedTypes:"*",acceptFiles:"*",fileName:"file",formData:!1,dynamicFormData:!1,maxFileSize:-1,maxFileCount:-1,multiple:!0,dragDrop:!0,autoSubmit:!0,showCancel:!0,showAbort:!0,showDone:!1,showDelete:!1,showError:!0,showStatusAfterSuccess:!0,showStatusAfterError:!0,showFileCounter:!0,fileCounterStyle:"). ",showFileSize:!0,showProgress:!1,nestedForms:!0,showDownload:!1,onLoad:function(){},onSelect:function(){return!0},onSubmit:function(){},onSuccess:function(){},onError:function(){},onCancel:function(){},onAbort:function(){},downloadCallback:!1,deleteCallback:!1,afterUploadAll:!1,serialize:!0,sequential:!1,sequentialCount:2,customProgressBar:!1,abortButtonClass:"ajax-file-upload-abort",cancelButtonClass:"ajax-file-upload-cancel",dragDropContainerClass:"ajax-upload-dragdrop",dragDropHoverClass:"state-hover",errorClass:"ajax-file-upload-error",uploadButtonClass:"ajax-file-upload",dragDropStr:"<span><b>Drag &amp; Drop Files<\/b><\/span>",uploadStr:"Upload",abortStr:"Abort",cancelStr:"Cancel",deleteStr:"Delete",doneStr:"Done",multiDragErrorStr:"Multiple File Drag &amp; Drop is not allowed.",extErrorStr:"is not allowed. Allowed extensions: ",duplicateErrorStr:"is not allowed. File already exists.",sizeErrorStr:"is not allowed. Allowed Max size: ",uploadErrorStr:"Upload is not allowed",maxFileCountErrorStr:" is not allowed. Maximum allowed files are:",downloadStr:"Download",customErrorKeyStr:"jquery-upload-file-error",showQueueDiv:!1,statusBarWidth:400,dragdropWidth:400,showPreview:!1,previewHeight:"auto",previewWidth:"100%",extraHTML:!1,uploadQueueOrder:"top",headers:{}},i),v,u,o;this.fileCounter=1;this.selectedFiles=0;v="ajax-file-upload-"+(new Date).getTime();this.formGroup=v;this.errorLog=n("<div><\/div>");this.responses=[];this.existingFileNames=[];t.formdata||(r.dragDrop=!1);t.formdata&&1!==r.maxFileCount||(r.multiple=!1);n(this).html("");u=this;o=n("<div>"+r.uploadStr+"<\/div>");n(o).addClass(r.uploadButtonClass),function t(){if(n.fn.ajaxForm){if(r.dragDrop){var i=n('<div class="'+r.dragDropContainerClass+'" style="vertical-align:top;"><\/div>').width(r.dragdropWidth);n(u).append(i);n(i).append(o);n(i).append(n(r.dragDropStr));g(u,r,i)}else n(u).append(o);n(u).append(u.errorLog);u.container=r.showQueueDiv?n("#"+r.showQueueDiv):n("<div class='ajax-file-upload-container'><\/div>").insertAfter(n(u));r.onLoad.call(this,u);k(u,v,r,o)}else window.setTimeout(t,10)}();this.startUpload=function(){n("form").each(function(){n(this).hasClass(u.formGroup)&&f.push(n(this))});f.length>=1&&p()};this.getFileCount=function(){return u.selectedFiles};this.stopUpload=function(){n("."+r.abortButtonClass).each(function(){n(this).hasClass(u.formGroup)&&n(this).click()});n("."+r.cancelButtonClass).each(function(){n(this).hasClass(u.formGroup)&&n(this).click()})};this.cancelAll=function(){n("."+r.cancelButtonClass).each(function(){n(this).hasClass(u.formGroup)&&n(this).click()})};this.update=function(t){r=n.extend(r,t);t.hasOwnProperty("url")&&n("form").each(function(){n(this).attr("action",t.url)})};this.enqueueFile=function(n){n instanceof File&&l(r,u,[n])};this.reset=function(n){u.fileCounter=1;u.selectedFiles=0;u.errorLog.html("");0!=n&&u.container.html("")};this.remove=function(){u.container.html("");n(u).remove()};this.createProgress=function(n,t,i){var f=new a(this,r),o;return f.progressDiv.show(),f.progressbar.width("100%"),o="",o=r.showFileCounter?u.fileCounter+r.fileCounterStyle+n:n,r.showFileSize&&(o+=" ("+c(i)+")"),f.filename.html(o),u.fileCounter++,u.selectedFiles++,r.showPreview&&(f.preview.attr("src",t),f.preview.show()),r.showDownload&&(f.download.show(),f.download.click(function(){r.downloadCallback&&r.downloadCallback.call(u,[n],f)})),r.showDelete&&(f.del.show(),f.del.click(function(){f.statusbar.hide().remove();var t=[n];r.deleteCallback&&r.deleteCallback.call(this,t,f);u.selectedFiles-=1;e(r,u)})),f};this.getResponses=function(){return this.responses};var f=[],s=[],y=!1;return this}}(jQuery)