| 1 |
- !function(e){"use strict";if("function"==typeof define&&define.amd)define(["jquery","moment"],e);else if("object"==typeof exports)module.exports=e(require("jquery"),require("moment"));else{if("undefined"==typeof jQuery)throw"bootstrap-datetimepicker requires jQuery to be loaded first";if("undefined"==typeof moment)throw"bootstrap-datetimepicker requires Moment.js to be loaded first";e(jQuery,moment)}}((function(e,t){"use strict";if(!t)throw new Error("bootstrap-datetimepicker requires Moment.js to be loaded first");function a(a,n){function r(){return void 0!==t.tz&&void 0!==n.timeZone&&null!==n.timeZone&&""!==n.timeZone}function i(e){var a;return a=null==e?t():t.isDate(e)||t.isMoment(e)?t(e):r()?t.tz(e,B,n.useStrict,n.timeZone):t(e,B,n.useStrict),r()&&a.tz(n.timeZone),a}function o(e){if("string"!=typeof e||1<e.length)throw new TypeError("isEnabled expects a single character string parameter");switch(e){case"y":return-1!==q.indexOf("Y");case"M":return-1!==q.indexOf("M");case"d":return-1!==q.toLowerCase().indexOf("d");case"h":case"H":return-1!==q.toLowerCase().indexOf("h");case"m":return-1!==q.indexOf("m");case"s":return-1!==q.indexOf("s");default:return!1}}function s(){return o("h")||o("m")||o("s")}function d(){return o("y")||o("M")||o("d")}function l(){var t,a,r,i=e("<div>").addClass("bootstrap-datetimepicker-widget dropdown-menu"),l=e("<div>").addClass("datepicker").append((a=e("<thead>").append(e("<tr>").append(e("<th>").addClass("prev").attr("data-action","previous").append(e("<span>").addClass(n.icons.previous))).append(e("<th>").addClass("picker-switch").attr("data-action","pickerSwitch").attr("colspan",n.calendarWeeks?"6":"5")).append(e("<th>").addClass("next").attr("data-action","next").append(e("<span>").addClass(n.icons.next)))),r=e("<tbody>").append(e("<tr>").append(e("<td>").attr("colspan",n.calendarWeeks?"8":"7"))),[e("<div>").addClass("datepicker-days").append(e("<table>").addClass("table-condensed").append(a).append(e("<tbody>"))),e("<div>").addClass("datepicker-months").append(e("<table>").addClass("table-condensed").append(a.clone()).append(r.clone())),e("<div>").addClass("datepicker-years").append(e("<table>").addClass("table-condensed").append(a.clone()).append(r.clone())),e("<div>").addClass("datepicker-decades").append(e("<table>").addClass("table-condensed").append(a.clone()).append(r.clone()))])),p=e("<div>").addClass("timepicker").append(function(){var t,a,r,i=e("<div>").addClass("timepicker-hours").append(e("<table>").addClass("table-condensed")),s=e("<div>").addClass("timepicker-minutes").append(e("<table>").addClass("table-condensed")),d=e("<div>").addClass("timepicker-seconds").append(e("<table>").addClass("table-condensed")),l=[(t=e("<tr>"),a=e("<tr>"),r=e("<tr>"),o("h")&&(t.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.incrementHour}).addClass("btn").attr("data-action","incrementHours").append(e("<span>").addClass(n.icons.up)))),a.append(e("<td>").append(e("<span>").addClass("timepicker-hour").attr({"data-time-component":"hours",title:n.tooltips.pickHour}).attr("data-action","showHours"))),r.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.decrementHour}).addClass("btn").attr("data-action","decrementHours").append(e("<span>").addClass(n.icons.down))))),o("m")&&(o("h")&&(t.append(e("<td>").addClass("separator")),a.append(e("<td>").addClass("separator").html(":")),r.append(e("<td>").addClass("separator"))),t.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.incrementMinute}).addClass("btn").attr("data-action","incrementMinutes").append(e("<span>").addClass(n.icons.up)))),a.append(e("<td>").append(e("<span>").addClass("timepicker-minute").attr({"data-time-component":"minutes",title:n.tooltips.pickMinute}).attr("data-action","showMinutes"))),r.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.decrementMinute}).addClass("btn").attr("data-action","decrementMinutes").append(e("<span>").addClass(n.icons.down))))),o("s")&&(o("m")&&(t.append(e("<td>").addClass("separator")),a.append(e("<td>").addClass("separator").html(":")),r.append(e("<td>").addClass("separator"))),t.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.incrementSecond}).addClass("btn").attr("data-action","incrementSeconds").append(e("<span>").addClass(n.icons.up)))),a.append(e("<td>").append(e("<span>").addClass("timepicker-second").attr({"data-time-component":"seconds",title:n.tooltips.pickSecond}).attr("data-action","showSeconds"))),r.append(e("<td>").append(e("<a>").attr({href:"#",tabindex:"-1",title:n.tooltips.decrementSecond}).addClass("btn").attr("data-action","decrementSeconds").append(e("<span>").addClass(n.icons.down))))),Y||(t.append(e("<td>").addClass("separator")),a.append(e("<td>").append(e("<button>").addClass("btn btn-primary").attr({"data-action":"togglePeriod",tabindex:"-1",title:n.tooltips.togglePeriod}))),r.append(e("<td>").addClass("separator"))),e("<div>").addClass("timepicker-picker").append(e("<table>").addClass("table-condensed").append([t,a,r])))];return o("h")&&l.push(i),o("m")&&l.push(s),o("s")&&l.push(d),l}()),c=e("<ul>").addClass("list-unstyled"),u=e("<li>").addClass("picker-switch"+(n.collapse?" accordion-toggle":"")).append((t=[],n.showTodayButton&&t.push(e("<td>").append(e("<a>").attr({"data-action":"today",title:n.tooltips.today}).append(e("<span>").addClass(n.icons.today)))),!n.sideBySide&&d()&&s()&&t.push(e("<td>").append(e("<a>").attr({"data-action":"togglePicker",title:n.tooltips.selectTime}).append(e("<span>").addClass(n.icons.time)))),n.showClear&&t.push(e("<td>").append(e("<a>").attr({"data-action":"clear",title:n.tooltips.clear}).append(e("<span>").addClass(n.icons.clear)))),n.showClose&&t.push(e("<td>").append(e("<a>").attr({"data-action":"close",title:n.tooltips.close}).append(e("<span>").addClass(n.icons.close)))),e("<table>").addClass("table-condensed").append(e("<tbody>").append(e("<tr>").append(t)))));return n.inline&&i.removeClass("dropdown-menu"),Y&&i.addClass("usetwentyfour"),o("s")&&!Y&&i.addClass("wider"),n.sideBySide&&d()&&s()?(i.addClass("timepicker-sbs"),"top"===n.toolbarPlacement&&i.append(u),i.append(e("<div>").addClass("row").append(l.addClass("col-md-6")).append(p.addClass("col-md-6"))),"bottom"===n.toolbarPlacement&&i.append(u),i):("top"===n.toolbarPlacement&&c.append(u),d()&&c.append(e("<li>").addClass(n.collapse&&s()?"collapse in":"").append(l)),"default"===n.toolbarPlacement&&c.append(u),s()&&c.append(e("<li>").addClass(n.collapse&&d()?"collapse":"").append(p)),"bottom"===n.toolbarPlacement&&c.append(u),i.append(c))}function p(){var t,r=(z||a).position(),i=(z||a).offset(),o=n.widgetPositioning.vertical,s=n.widgetPositioning.horizontal;if(n.widgetParent)t=n.widgetParent.append(N);else if(a.is("input"))t=a.after(N).parent();else{if(n.inline)return void(t=a.append(N));(t=a).children().first().after(N)}if("auto"===o&&(o=i.top+1.5*N.height()>=e(window).height()+e(window).scrollTop()&&N.height()+a.outerHeight()<i.top?"top":"bottom"),"auto"===s&&(s=t.width()<i.left+N.outerWidth()/2&&i.left+N.outerWidth()>e(window).width()?"right":"left"),"top"===o?N.addClass("top").removeClass("bottom"):N.addClass("bottom").removeClass("top"),"right"===s?N.addClass("pull-right"):N.removeClass("pull-right"),"static"===t.css("position")&&(t=t.parents().filter((function(){return"static"!==e(this).css("position")})).first()),0===t.length)throw new Error("datetimepicker component should be placed within a non-static positioned container");N.css({top:"top"===o?"auto":r.top+a.outerHeight(),bottom:"top"===o?t.outerHeight()-(t===a?0:r.top):"auto",left:"left"===s?t===a?0:r.left:"auto",right:"left"===s?"auto":t.outerWidth()-a.outerWidth()-(t===a?0:r.left)})}function c(e){"dp.change"===e.type&&(e.date&&e.date.isSame(e.oldDate)||!e.date&&!e.oldDate)||a.trigger(e)}function u(e){"y"===e&&(e="YYYY"),c({type:"dp.update",change:e,viewDate:H.clone()})}function f(e){N&&(e&&(j=Math.max(V,Math.min(3,j+e))),N.find(".datepicker > div").hide().filter(".datepicker-"+Z[j].clsName).show())}function h(t,a){var r,i,o,s;if(t.isValid()&&!(n.disabledDates&&"d"===a&&(r=t,!0===n.disabledDates[r.format("YYYY-MM-DD")])||n.enabledDates&&"d"===a&&(i=t,!0!==n.enabledDates[i.format("YYYY-MM-DD")])||n.minDate&&t.isBefore(n.minDate,a)||n.maxDate&&t.isAfter(n.maxDate,a)||n.daysOfWeekDisabled&&"d"===a&&-1!==n.daysOfWeekDisabled.indexOf(t.day())||n.disabledHours&&("h"===a||"m"===a||"s"===a)&&(o=t,!0===n.disabledHours[o.format("H")])||n.enabledHours&&("h"===a||"m"===a||"s"===a)&&(s=t,!0!==n.enabledHours[s.format("H")]))){if(n.disabledTimeIntervals&&("h"===a||"m"===a||"s"===a)){var d=!1;if(e.each(n.disabledTimeIntervals,(function(){if(t.isBetween(this[0],this[1]))return!(d=!0)})),d)return}return 1}}function m(){var a,r,o,s=N.find(".datepicker-days"),l=s.find("th"),p=[],u=[];if(d()){for(l.eq(0).find("span").attr("title",n.tooltips.prevMonth),l.eq(1).attr("title",n.tooltips.selectMonth),l.eq(2).find("span").attr("title",n.tooltips.nextMonth),s.find(".disabled").removeClass("disabled"),l.eq(1).text(H.format(n.dayViewHeaderFormat)),h(H.clone().subtract(1,"M"),"M")||l.eq(0).addClass("disabled"),h(H.clone().add(1,"M"),"M")||l.eq(2).addClass("disabled"),a=H.clone().startOf("M").startOf("w").startOf("d"),o=0;o<42;o++)0===a.weekday()&&(r=e("<tr>"),n.calendarWeeks&&r.append('<td class="cw">'+a.week()+"</td>"),p.push(r)),u=["day"],a.isBefore(H,"M")&&u.push("old"),a.isAfter(H,"M")&&u.push("new"),a.isSame(E,"d")&&!W&&u.push("active"),h(a,"d")||u.push("disabled"),a.isSame(i(),"d")&&u.push("today"),0!==a.day()&&6!==a.day()||u.push("weekend"),c({type:"dp.classify",date:a,classNames:u}),r.append('<td data-action="selectDay" data-day="'+a.format("L")+'" class="'+u.join(" ")+'">'+a.date()+"</td>"),a.add(1,"d");var f,m,y;s.find("tbody").empty().append(p),m=(f=N.find(".datepicker-months")).find("th"),y=f.find("tbody").find("span"),m.eq(0).find("span").attr("title",n.tooltips.prevYear),m.eq(1).attr("title",n.tooltips.selectYear),m.eq(2).find("span").attr("title",n.tooltips.nextYear),f.find(".disabled").removeClass("disabled"),h(H.clone().subtract(1,"y"),"y")||m.eq(0).addClass("disabled"),m.eq(1).text(H.year()),h(H.clone().add(1,"y"),"y")||m.eq(2).addClass("disabled"),y.removeClass("active"),E.isSame(H,"y")&&!W&&y.eq(E.month()).addClass("active"),y.each((function(t){h(H.clone().month(t),"M")||e(this).addClass("disabled")})),function(){var e=N.find(".datepicker-years"),t=e.find("th"),a=H.clone().subtract(5,"y"),r=H.clone().add(6,"y"),i="";for(t.eq(0).find("span").attr("title",n.tooltips.prevDecade),t.eq(1).attr("title",n.tooltips.selectDecade),t.eq(2).find("span").attr("title",n.tooltips.nextDecade),e.find(".disabled").removeClass("disabled"),n.minDate&&n.minDate.isAfter(a,"y")&&t.eq(0).addClass("disabled"),t.eq(1).text(a.year()+"-"+r.year()),n.maxDate&&n.maxDate.isBefore(r,"y")&&t.eq(2).addClass("disabled");!a.isAfter(r,"y");)i+='<span data-action="selectYear" class="year'+(a.isSame(E,"y")&&!W?" active":"")+(h(a,"y")?"":" disabled")+'">'+a.year()+"</span>",a.add(1,"y");e.find("td").html(i)}(),function(){var e,a=N.find(".datepicker-decades"),r=a.find("th"),i=t({y:H.year()-H.year()%100-1}),o=i.clone().add(100,"y"),s=i.clone(),d=!1,l=!1,p="";for(r.eq(0).find("span").attr("title",n.tooltips.prevCentury),r.eq(2).find("span").attr("title",n.tooltips.nextCentury),a.find(".disabled").removeClass("disabled"),(i.isSame(t({y:1900}))||n.minDate&&n.minDate.isAfter(i,"y"))&&r.eq(0).addClass("disabled"),r.eq(1).text(i.year()+"-"+o.year()),(i.isSame(t({y:2e3}))||n.maxDate&&n.maxDate.isBefore(o,"y"))&&r.eq(2).addClass("disabled");!i.isAfter(o,"y");)e=i.year()+12,d=n.minDate&&n.minDate.isAfter(i,"y")&&n.minDate.year()<=e,l=n.maxDate&&n.maxDate.isAfter(i,"y")&&n.maxDate.year()<=e,p+='<span data-action="selectDecade" class="decade'+(E.isAfter(i)&&E.year()<=e?" active":"")+(h(i,"y")||d||l?"":" disabled")+'" data-selection="'+(i.year()+6)+'">'+(i.year()+1)+" - "+(i.year()+12)+"</span>",i.add(12,"y");p+="<span></span><span></span><span></span>",a.find("td").html(p),r.eq(1).text(s.year()+1+"-"+i.year())}()}}function y(){N&&(m(),function(){var t,a,r=N.find(".timepicker span[data-time-component]");Y||(t=N.find(".timepicker [data-action=togglePeriod]"),a=E.clone().add(12<=E.hours()?-12:12,"h"),t.text(E.format("A")),h(a,"h")?t.removeClass("disabled"):t.addClass("disabled")),r.filter("[data-time-component=hours]").text(E.format(Y?"HH":"hh")),r.filter("[data-time-component=minutes]").text(E.format("mm")),r.filter("[data-time-component=seconds]").text(E.format("ss")),function(){var t=N.find(".timepicker-hours table"),a=H.clone().startOf("d"),n=[],r=e("<tr>");for(11<H.hour()&&!Y&&a.hour(12);a.isSame(H,"d")&&(Y||H.hour()<12&&a.hour()<12||11<H.hour());)a.hour()%4==0&&(r=e("<tr>"),n.push(r)),r.append('<td data-action="selectHour" class="hour'+(h(a,"h")?"":" disabled")+'">'+a.format(Y?"HH":"hh")+"</td>"),a.add(1,"h");t.empty().append(n)}(),function(){for(var t=N.find(".timepicker-minutes table"),a=H.clone().startOf("h"),r=[],i=e("<tr>"),o=1===n.stepping?5:n.stepping;H.isSame(a,"h");)a.minute()%(4*o)==0&&(i=e("<tr>"),r.push(i)),i.append('<td data-action="selectMinute" class="minute'+(h(a,"m")?"":" disabled")+'">'+a.format("mm")+"</td>"),a.add(o,"m");t.empty().append(r)}(),function(){for(var t=N.find(".timepicker-seconds table"),a=H.clone().startOf("m"),n=[],r=e("<tr>");H.isSame(a,"m");)a.second()%20==0&&(r=e("<tr>"),n.push(r)),r.append('<td data-action="selectSecond" class="second'+(h(a,"s")?"":" disabled")+'">'+a.format("ss")+"</td>"),a.add(5,"s");t.empty().append(n)}()}())}function g(e){var t=W?null:E;if(!e)return W=!0,I.val(""),a.data("date",""),c({type:"dp.change",date:!1,oldDate:t}),void y();if(e=e.clone().locale(n.locale),r()&&e.tz(n.timeZone),1!==n.stepping)for(e.minutes(Math.round(e.minutes()/n.stepping)*n.stepping).seconds(0);n.minDate&&e.isBefore(n.minDate);)e.add(n.stepping,"minutes");h(e)?(H=(E=e).clone(),I.val(E.format(q)),a.data("date",E.format(q)),W=!1,y(),c({type:"dp.change",date:E.clone(),oldDate:t})):(n.keepInvalid?c({type:"dp.change",date:e,oldDate:t}):I.val(W?"":E.format(q)),c({type:"dp.error",date:e,oldDate:t}))}function b(){var t=!1;return N?(N.find(".collapse").each((function(){var a=e(this).data("collapse");return!a||!a.transitioning||!(t=!0)})),t||(z&&z.hasClass("btn")&&z.toggleClass("active"),N.hide(),e(window).off("resize",p),N.off("click","[data-action]"),N.off("mousedown",!1),N.remove(),N=!1,c({type:"dp.hide",date:E.clone()}),I.blur(),H=E.clone()),L):L}function w(){g(null)}function v(e){return void 0===n.parseInputDate?(!t.isMoment(e)||e instanceof Date)&&(e=i(e)):e=n.parseInputDate(e),e}function k(t){return e(t.currentTarget).is(".disabled")||X[e(t.currentTarget).data("action")].apply(L,arguments),!1}function D(){var t;return I.prop("disabled")||!n.ignoreReadonly&&I.prop("readonly")||N||(void 0!==I.val()&&0!==I.val().trim().length?g(v(I.val().trim())):W&&n.useCurrent&&(n.inline||I.is("input")&&0===I.val().trim().length)&&(t=i(),"string"==typeof n.useCurrent&&(t={year:function(e){return e.month(0).date(1).hours(0).seconds(0).minutes(0)},month:function(e){return e.date(1).hours(0).seconds(0).minutes(0)},day:function(e){return e.hours(0).seconds(0).minutes(0)},hour:function(e){return e.seconds(0).minutes(0)},minute:function(e){return e.seconds(0)}}[n.useCurrent](t)),g(t)),N=l(),function(){var t=e("<tr>"),a=H.clone().startOf("w").startOf("d");for(!0===n.calendarWeeks&&t.append(e("<th>").addClass("cw").text("#"));a.isBefore(H.clone().endOf("w"));)t.append(e("<th>").addClass("dow").text(a.format("dd"))),a.add(1,"d");N.find(".datepicker-days thead").append(t)}(),function(){for(var t=[],a=H.clone().startOf("y").startOf("d");a.isSame(H,"y");)t.push(e("<span>").attr("data-action","selectMonth").addClass("month").text(a.format("MMM"))),a.add(1,"M");N.find(".datepicker-months td").empty().append(t)}(),N.find(".timepicker-hours").hide(),N.find(".timepicker-minutes").hide(),N.find(".timepicker-seconds").hide(),y(),f(),e(window).on("resize",p),N.on("click","[data-action]",k),N.on("mousedown",!1),z&&z.hasClass("btn")&&z.toggleClass("active"),p(),N.show(),n.focusOnShow&&!I.is(":focus")&&I.focus(),c({type:"dp.show"})),L}function C(){return(N?b:D)()}function x(e){var t,a,r,i,o=null,s=[],d={},l=e.which;for(t in K[l]="p",K)K.hasOwnProperty(t)&&"p"===K[t]&&(s.push(t),parseInt(t,10)!==l&&(d[t]=!0));for(t in n.keyBinds)if(n.keyBinds.hasOwnProperty(t)&&"function"==typeof n.keyBinds[t]&&(r=t.split(" ")).length===s.length&&J[l]===r[r.length-1]){for(i=!0,a=r.length-2;0<=a;a--)if(!(J[r[a]]in d)){i=!1;break}if(i){o=n.keyBinds[t];break}}o&&(o.call(L,N),e.stopPropagation(),e.preventDefault())}function T(e){K[e.which]="r",e.stopPropagation(),e.preventDefault()}function M(t){var a=e(t.target).val().trim();return g(a?v(a):null),t.stopImmediatePropagation(),!1}function S(t){var a={};return e.each(t,(function(){var e=v(this);e.isValid()&&(a[e.format("YYYY-MM-DD")]=!0)})),!!Object.keys(a).length&&a}function O(t){var a={};return e.each(t,(function(){a[this]=!0})),!!Object.keys(a).length&&a}function P(){var e=n.format||"L LT";q=e.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,(function(e){return(E.localeData().longDateFormat(e)||e).replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,(function(e){return E.localeData().longDateFormat(e)||e}))})),(B=n.extraFormats?n.extraFormats.slice():[]).indexOf(e)<0&&B.indexOf(q)<0&&B.push(q),Y=q.toLowerCase().indexOf("a")<1&&q.replace(/\[.*?\]/g,"").indexOf("h")<1,o("y")&&(V=2),o("M")&&(V=1),o("d")&&(V=0),j=Math.max(V,j),W||g(E)}var E,H,I,Y,q,B,j,A,F,L={},W=!0,z=!1,N=!1,V=0,Z=[{clsName:"days",navFnc:"M",navStep:1},{clsName:"months",navFnc:"y",navStep:1},{clsName:"years",navFnc:"y",navStep:10},{clsName:"decades",navFnc:"y",navStep:100}],R=["days","months","years","decades"],Q=["top","bottom","auto"],U=["left","right","auto"],G=["default","top","bottom"],J={up:38,38:"up",down:40,40:"down",left:37,37:"left",right:39,39:"right",tab:9,9:"tab",escape:27,27:"escape",enter:13,13:"enter",pageUp:33,33:"pageUp",pageDown:34,34:"pageDown",shift:16,16:"shift",control:17,17:"control",space:32,32:"space",t:84,84:"t",delete:46,46:"delete"},K={},X={next:function(){var e=Z[j].navFnc;H.add(Z[j].navStep,e),m(),u(e)},previous:function(){var e=Z[j].navFnc;H.subtract(Z[j].navStep,e),m(),u(e)},pickerSwitch:function(){f(1)},selectMonth:function(t){var a=e(t.target).closest("tbody").find("span").index(e(t.target));H.month(a),j===V?(g(E.clone().year(H.year()).month(H.month())),n.inline||b()):(f(-1),m()),u("M")},selectYear:function(t){var a=parseInt(e(t.target).text(),10)||0;H.year(a),j===V?(g(E.clone().year(H.year())),n.inline||b()):(f(-1),m()),u("YYYY")},selectDecade:function(t){var a=parseInt(e(t.target).data("selection"),10)||0;H.year(a),j===V?(g(E.clone().year(H.year())),n.inline||b()):(f(-1),m()),u("YYYY")},selectDay:function(t){var a=H.clone();e(t.target).is(".old")&&a.subtract(1,"M"),e(t.target).is(".new")&&a.add(1,"M"),g(a.date(parseInt(e(t.target).text(),10))),s()||n.keepOpen||n.inline||b()},incrementHours:function(){var e=E.clone().add(1,"h");h(e,"h")&&g(e)},incrementMinutes:function(){var e=E.clone().add(n.stepping,"m");h(e,"m")&&g(e)},incrementSeconds:function(){var e=E.clone().add(1,"s");h(e,"s")&&g(e)},decrementHours:function(){var e=E.clone().subtract(1,"h");h(e,"h")&&g(e)},decrementMinutes:function(){var e=E.clone().subtract(n.stepping,"m");h(e,"m")&&g(e)},decrementSeconds:function(){var e=E.clone().subtract(1,"s");h(e,"s")&&g(e)},togglePeriod:function(){g(E.clone().add(12<=E.hours()?-12:12,"h"))},togglePicker:function(t){var a,r=e(t.target),i=r.closest("ul"),o=i.find(".in"),s=i.find(".collapse:not(.in)");if(o&&o.length){if((a=o.data("collapse"))&&a.transitioning)return;o.collapse?(o.collapse("hide"),s.collapse("show")):(o.removeClass("in"),s.addClass("in")),r.is("span")?r.toggleClass(n.icons.time+" "+n.icons.date):r.find("span").toggleClass(n.icons.time+" "+n.icons.date)}},showPicker:function(){N.find(".timepicker > div:not(.timepicker-picker)").hide(),N.find(".timepicker .timepicker-picker").show()},showHours:function(){N.find(".timepicker .timepicker-picker").hide(),N.find(".timepicker .timepicker-hours").show()},showMinutes:function(){N.find(".timepicker .timepicker-picker").hide(),N.find(".timepicker .timepicker-minutes").show()},showSeconds:function(){N.find(".timepicker .timepicker-picker").hide(),N.find(".timepicker .timepicker-seconds").show()},selectHour:function(t){var a=parseInt(e(t.target).text(),10);Y||(12<=E.hours()?12!==a&&(a+=12):12===a&&(a=0)),g(E.clone().hours(a)),X.showPicker.call(L)},selectMinute:function(t){g(E.clone().minutes(parseInt(e(t.target).text(),10))),X.showPicker.call(L)},selectSecond:function(t){g(E.clone().seconds(parseInt(e(t.target).text(),10))),X.showPicker.call(L)},clear:w,today:function(){var e=i();h(e,"d")&&g(e)},close:b};if(L.destroy=function(){b(),I.off({change:M,blur,keydown:x,keyup:T,focus:n.allowInputToggle?b:""}),a.is("input")?I.off({focus:D}):z&&(z.off("click",C),z.off("mousedown",!1)),a.removeData("DateTimePicker"),a.removeData("date")},L.toggle=C,L.show=D,L.hide=b,L.disable=function(){return b(),z&&z.hasClass("btn")&&z.addClass("disabled"),I.prop("disabled",!0),L},L.enable=function(){return z&&z.hasClass("btn")&&z.removeClass("disabled"),I.prop("disabled",!1),L},L.ignoreReadonly=function(e){if(0===arguments.length)return n.ignoreReadonly;if("boolean"!=typeof e)throw new TypeError("ignoreReadonly () expects a boolean parameter");return n.ignoreReadonly=e,L},L.options=function(t){if(0===arguments.length)return e.extend(!0,{},n);if(!(t instanceof Object))throw new TypeError("options() options parameter should be an object");return e.extend(!0,n,t),e.each(n,(function(e,t){if(void 0===L[e])throw new TypeError("option "+e+" is not recognized!");L[e](t)})),L},L.date=function(e){if(0===arguments.length)return W?null:E.clone();if(!(null===e||"string"==typeof e||t.isMoment(e)||e instanceof Date))throw new TypeError("date() parameter must be one of [null, string, moment or Date]");return g(null===e?null:v(e)),L},L.format=function(e){if(0===arguments.length)return n.format;if("string"!=typeof e&&("boolean"!=typeof e||!1!==e))throw new TypeError("format() expects a string or boolean:false parameter "+e);return n.format=e,q&&P(),L},L.timeZone=function(e){if(0===arguments.length)return n.timeZone;if("string"!=typeof e)throw new TypeError("newZone() expects a string parameter");return n.timeZone=e,L},L.dayViewHeaderFormat=function(e){if(0===arguments.length)return n.dayViewHeaderFormat;if("string"!=typeof e)throw new TypeError("dayViewHeaderFormat() expects a string parameter");return n.dayViewHeaderFormat=e,L},L.extraFormats=function(e){if(0===arguments.length)return n.extraFormats;if(!1!==e&&!(e instanceof Array))throw new TypeError("extraFormats() expects an array or false parameter");return n.extraFormats=e,B&&P(),L},L.disabledDates=function(t){if(0===arguments.length)return n.disabledDates?e.extend({},n.disabledDates):n.disabledDates;if(!t)return n.disabledDates=!1,y(),L;if(!(t instanceof Array))throw new TypeError("disabledDates() expects an array parameter");return n.disabledDates=S(t),n.enabledDates=!1,y(),L},L.enabledDates=function(t){if(0===arguments.length)return n.enabledDates?e.extend({},n.enabledDates):n.enabledDates;if(!t)return n.enabledDates=!1,y(),L;if(!(t instanceof Array))throw new TypeError("enabledDates() expects an array parameter");return n.enabledDates=S(t),n.disabledDates=!1,y(),L},L.daysOfWeekDisabled=function(e){if(0===arguments.length)return n.daysOfWeekDisabled.splice(0);if("boolean"==typeof e&&!e)return n.daysOfWeekDisabled=!1,y(),L;if(!(e instanceof Array))throw new TypeError("daysOfWeekDisabled() expects an array parameter");if(n.daysOfWeekDisabled=e.reduce((function(e,t){return 6<(t=parseInt(t,10))||t<0||isNaN(t)||-1===e.indexOf(t)&&e.push(t),e}),[]).sort(),n.useCurrent&&!n.keepInvalid){for(var t=0;!h(E,"d");){if(E.add(1,"d"),31===t)throw"Tried 31 times to find a valid date";t++}g(E)}return y(),L},L.maxDate=function(e){if(0===arguments.length)return n.maxDate?n.maxDate.clone():n.maxDate;if("boolean"==typeof e&&!1===e)return n.maxDate=!1,y(),L;"string"==typeof e&&("now"!==e&&"moment"!==e||(e=i()));var t=v(e);if(!t.isValid())throw new TypeError("maxDate() Could not parse date parameter: "+e);if(n.minDate&&t.isBefore(n.minDate))throw new TypeError("maxDate() date parameter is before options.minDate: "+t.format(q));return n.maxDate=t,n.useCurrent&&!n.keepInvalid&&E.isAfter(e)&&g(n.maxDate),H.isAfter(t)&&(H=t.clone().subtract(n.stepping,"m")),y(),L},L.minDate=function(e){if(0===arguments.length)return n.minDate?n.minDate.clone():n.minDate;if("boolean"==typeof e&&!1===e)return n.minDate=!1,y(),L;"string"==typeof e&&("now"!==e&&"moment"!==e||(e=i()));var t=v(e);if(!t.isValid())throw new TypeError("minDate() Could not parse date parameter: "+e);if(n.maxDate&&t.isAfter(n.maxDate))throw new TypeError("minDate() date parameter is after options.maxDate: "+t.format(q));return n.minDate=t,n.useCurrent&&!n.keepInvalid&&E.isBefore(e)&&g(n.minDate),H.isBefore(t)&&(H=t.clone().add(n.stepping,"m")),y(),L},L.defaultDate=function(e){if(0===arguments.length)return n.defaultDate?n.defaultDate.clone():n.defaultDate;if(!e)return n.defaultDate=!1,L;"string"==typeof e&&(e="now"===e||"moment"===e?i():i(e));var t=v(e);if(!t.isValid())throw new TypeError("defaultDate() Could not parse date parameter: "+e);if(!h(t))throw new TypeError("defaultDate() date passed is invalid according to component setup validations");return n.defaultDate=t,(n.defaultDate&&n.inline||""===I.val().trim())&&g(n.defaultDate),L},L.locale=function(e){if(0===arguments.length)return n.locale;if(!t.localeData(e))throw new TypeError("locale() locale "+e+" is not loaded from moment locales!");return n.locale=e,E.locale(n.locale),H.locale(n.locale),q&&P(),N&&(b(),D()),L},L.stepping=function(e){return 0===arguments.length?n.stepping:(e=parseInt(e,10),(isNaN(e)||e<1)&&(e=1),n.stepping=e,L)},L.useCurrent=function(e){var t=["year","month","day","hour","minute"];if(0===arguments.length)return n.useCurrent;if("boolean"!=typeof e&&"string"!=typeof e)throw new TypeError("useCurrent() expects a boolean or string parameter");if("string"==typeof e&&-1===t.indexOf(e.toLowerCase()))throw new TypeError("useCurrent() expects a string parameter of "+t.join(", "));return n.useCurrent=e,L},L.collapse=function(e){if(0===arguments.length)return n.collapse;if("boolean"!=typeof e)throw new TypeError("collapse() expects a boolean parameter");return n.collapse===e||(n.collapse=e,N&&(b(),D())),L},L.icons=function(t){if(0===arguments.length)return e.extend({},n.icons);if(!(t instanceof Object))throw new TypeError("icons() expects parameter to be an Object");return e.extend(n.icons,t),N&&(b(),D()),L},L.tooltips=function(t){if(0===arguments.length)return e.extend({},n.tooltips);if(!(t instanceof Object))throw new TypeError("tooltips() expects parameter to be an Object");return e.extend(n.tooltips,t),N&&(b(),D()),L},L.useStrict=function(e){if(0===arguments.length)return n.useStrict;if("boolean"!=typeof e)throw new TypeError("useStrict() expects a boolean parameter");return n.useStrict=e,L},L.sideBySide=function(e){if(0===arguments.length)return n.sideBySide;if("boolean"!=typeof e)throw new TypeError("sideBySide() expects a boolean parameter");return n.sideBySide=e,N&&(b(),D()),L},L.viewMode=function(e){if(0===arguments.length)return n.viewMode;if("string"!=typeof e)throw new TypeError("viewMode() expects a string parameter");if(-1===R.indexOf(e))throw new TypeError("viewMode() parameter must be one of ("+R.join(", ")+") value");return n.viewMode=e,j=Math.max(R.indexOf(e),V),f(),L},L.toolbarPlacement=function(e){if(0===arguments.length)return n.toolbarPlacement;if("string"!=typeof e)throw new TypeError("toolbarPlacement() expects a string parameter");if(-1===G.indexOf(e))throw new TypeError("toolbarPlacement() parameter must be one of ("+G.join(", ")+") value");return n.toolbarPlacement=e,N&&(b(),D()),L},L.widgetPositioning=function(t){if(0===arguments.length)return e.extend({},n.widgetPositioning);if("[object Object]"!=={}.toString.call(t))throw new TypeError("widgetPositioning() expects an object variable");if(t.horizontal){if("string"!=typeof t.horizontal)throw new TypeError("widgetPositioning() horizontal variable must be a string");if(t.horizontal=t.horizontal.toLowerCase(),-1===U.indexOf(t.horizontal))throw new TypeError("widgetPositioning() expects horizontal parameter to be one of ("+U.join(", ")+")");n.widgetPositioning.horizontal=t.horizontal}if(t.vertical){if("string"!=typeof t.vertical)throw new TypeError("widgetPositioning() vertical variable must be a string");if(t.vertical=t.vertical.toLowerCase(),-1===Q.indexOf(t.vertical))throw new TypeError("widgetPositioning() expects vertical parameter to be one of ("+Q.join(", ")+")");n.widgetPositioning.vertical=t.vertical}return y(),L},L.calendarWeeks=function(e){if(0===arguments.length)return n.calendarWeeks;if("boolean"!=typeof e)throw new TypeError("calendarWeeks() expects parameter to be a boolean value");return n.calendarWeeks=e,y(),L},L.showTodayButton=function(e){if(0===arguments.length)return n.showTodayButton;if("boolean"!=typeof e)throw new TypeError("showTodayButton() expects a boolean parameter");return n.showTodayButton=e,N&&(b(),D()),L},L.showClear=function(e){if(0===arguments.length)return n.showClear;if("boolean"!=typeof e)throw new TypeError("showClear() expects a boolean parameter");return n.showClear=e,N&&(b(),D()),L},L.widgetParent=function(t){if(0===arguments.length)return n.widgetParent;if("string"==typeof t&&(t=e(t)),null!==t&&"string"!=typeof t&&!(t instanceof e))throw new TypeError("widgetParent() expects a string or a jQuery object parameter");return n.widgetParent=t,N&&(b(),D()),L},L.keepOpen=function(e){if(0===arguments.length)return n.keepOpen;if("boolean"!=typeof e)throw new TypeError("keepOpen() expects a boolean parameter");return n.keepOpen=e,L},L.focusOnShow=function(e){if(0===arguments.length)return n.focusOnShow;if("boolean"!=typeof e)throw new TypeError("focusOnShow() expects a boolean parameter");return n.focusOnShow=e,L},L.inline=function(e){if(0===arguments.length)return n.inline;if("boolean"!=typeof e)throw new TypeError("inline() expects a boolean parameter");return n.inline=e,L},L.clear=function(){return w(),L},L.keyBinds=function(e){return 0===arguments.length?n.keyBinds:(n.keyBinds=e,L)},L.getMoment=function(e){return i(e)},L.debug=function(e){if("boolean"!=typeof e)throw new TypeError("debug() expects a boolean parameter");return n.debug=e,L},L.allowInputToggle=function(e){if(0===arguments.length)return n.allowInputToggle;if("boolean"!=typeof e)throw new TypeError("allowInputToggle() expects a boolean parameter");return n.allowInputToggle=e,L},L.showClose=function(e){if(0===arguments.length)return n.showClose;if("boolean"!=typeof e)throw new TypeError("showClose() expects a boolean parameter");return n.showClose=e,L},L.keepInvalid=function(e){if(0===arguments.length)return n.keepInvalid;if("boolean"!=typeof e)throw new TypeError("keepInvalid() expects a boolean parameter");return n.keepInvalid=e,L},L.datepickerInput=function(e){if(0===arguments.length)return n.datepickerInput;if("string"!=typeof e)throw new TypeError("datepickerInput() expects a string parameter");return n.datepickerInput=e,L},L.parseInputDate=function(e){if(0===arguments.length)return n.parseInputDate;if("function"!=typeof e)throw new TypeError("parseInputDate() sholud be as function");return n.parseInputDate=e,L},L.disabledTimeIntervals=function(t){if(0===arguments.length)return n.disabledTimeIntervals?e.extend({},n.disabledTimeIntervals):n.disabledTimeIntervals;if(!t)return n.disabledTimeIntervals=!1,y(),L;if(!(t instanceof Array))throw new TypeError("disabledTimeIntervals() expects an array parameter");return n.disabledTimeIntervals=t,y(),L},L.disabledHours=function(t){if(0===arguments.length)return n.disabledHours?e.extend({},n.disabledHours):n.disabledHours;if(!t)return n.disabledHours=!1,y(),L;if(!(t instanceof Array))throw new TypeError("disabledHours() expects an array parameter");if(n.disabledHours=O(t),n.enabledHours=!1,n.useCurrent&&!n.keepInvalid){for(var a=0;!h(E,"h");){if(E.add(1,"h"),24===a)throw"Tried 24 times to find a valid date";a++}g(E)}return y(),L},L.enabledHours=function(t){if(0===arguments.length)return n.enabledHours?e.extend({},n.enabledHours):n.enabledHours;if(!t)return n.enabledHours=!1,y(),L;if(!(t instanceof Array))throw new TypeError("enabledHours() expects an array parameter");if(n.enabledHours=O(t),n.disabledHours=!1,n.useCurrent&&!n.keepInvalid){for(var a=0;!h(E,"h");){if(E.add(1,"h"),24===a)throw"Tried 24 times to find a valid date";a++}g(E)}return y(),L},L.viewDate=function(e){if(0===arguments.length)return H.clone();if(!e)return H=E.clone(),L;if(!("string"==typeof e||t.isMoment(e)||e instanceof Date))throw new TypeError("viewDate() parameter must be one of [string, moment or Date]");return H=v(e),u(),L},a.is("input"))I=a;else if(0===(I=a.find(n.datepickerInput)).length)I=a.find("input");else if(!I.is("input"))throw new Error('CSS class "'+n.datepickerInput+'" cannot be applied to non input element');if(a.hasClass("input-group")&&(z=0===a.find(".datepickerbutton").length?a.find(".input-group-addon"):a.find(".datepickerbutton")),!n.inline&&!I.is("input"))throw new Error("Could not initialize DateTimePicker without an input element");return E=i(),H=E.clone(),e.extend(!0,n,(F={},(A=a.is("input")||n.inline?a.data():a.find("input").data()).dateOptions&&A.dateOptions instanceof Object&&(F=e.extend(!0,F,A.dateOptions)),e.each(n,(function(e){var t="date"+e.charAt(0).toUpperCase()+e.slice(1);void 0!==A[t]&&(F[e]=A[t])})),F)),L.options(n),P(),I.on({change:M,blur:n.debug?"":b,keydown:x,keyup:T,focus:n.allowInputToggle?D:""}),a.is("input")?I.on({focus:D}):z&&(z.on("click",C),z.on("mousedown",!1)),I.prop("disabled")&&L.disable(),I.is("input")&&0!==I.val().trim().length?g(v(I.val().trim())):n.defaultDate&&void 0===I.attr("placeholder")&&g(n.defaultDate),n.inline&&D(),L}return e.fn.datetimepicker=function(t){t=t||{};var n,r=Array.prototype.slice.call(arguments,1),i=!0;if("object"==typeof t)return this.each((function(){var n,r=e(this);r.data("DateTimePicker")||(n=e.extend(!0,{},e.fn.datetimepicker.defaults,t),r.data("DateTimePicker",a(r,n)))}));if("string"==typeof t)return this.each((function(){var a=e(this).data("DateTimePicker");if(!a)throw new Error('bootstrap-datetimepicker("'+t+'") method was called on an element that is not using DateTimePicker');n=a[t].apply(a,r),i=n===a})),i||-1<e.inArray(t,["destroy","hide","show","toggle"])?this:n;throw new TypeError("Invalid arguments for DateTimePicker: "+t)},e.fn.datetimepicker.defaults={timeZone:"",format:!1,dayViewHeaderFormat:"MMMM YYYY",extraFormats:!1,stepping:1,minDate:!1,maxDate:!1,useCurrent:!0,collapse:!0,locale:t.locale(),defaultDate:!1,disabledDates:!1,enabledDates:!1,icons:{time:"glyphicon glyphicon-time",date:"glyphicon glyphicon-calendar",up:"glyphicon glyphicon-chevron-up",down:"glyphicon glyphicon-chevron-down",previous:"glyphicon glyphicon-chevron-left",next:"glyphicon glyphicon-chevron-right",today:"glyphicon glyphicon-screenshot",clear:"glyphicon glyphicon-trash",close:"glyphicon glyphicon-remove"},tooltips:{today:"Go to today",clear:"Clear selection",close:"Close the picker",selectMonth:"Select Month",prevMonth:"Previous Month",nextMonth:"Next Month",selectYear:"Select Year",prevYear:"Previous Year",nextYear:"Next Year",selectDecade:"Select Decade",prevDecade:"Previous Decade",nextDecade:"Next Decade",prevCentury:"Previous Century",nextCentury:"Next Century",pickHour:"Pick Hour",incrementHour:"Increment Hour",decrementHour:"Decrement Hour",pickMinute:"Pick Minute",incrementMinute:"Increment Minute",decrementMinute:"Decrement Minute",pickSecond:"Pick Second",incrementSecond:"Increment Second",decrementSecond:"Decrement Second",togglePeriod:"Toggle Period",selectTime:"Select Time"},useStrict:!1,sideBySide:!1,daysOfWeekDisabled:!1,calendarWeeks:!1,viewMode:"days",toolbarPlacement:"default",showTodayButton:!1,showClear:!1,showClose:!1,widgetPositioning:{horizontal:"auto",vertical:"auto"},widgetParent:null,ignoreReadonly:!1,keepOpen:!1,focusOnShow:!0,inline:!1,keepInvalid:!1,datepickerInput:".datepickerinput",keyBinds:{up:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")?this.date(t.clone().subtract(7,"d")):this.date(t.clone().add(this.stepping(),"m"))}},down:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")?this.date(t.clone().add(7,"d")):this.date(t.clone().subtract(this.stepping(),"m"))}else this.show()},"control up":function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")?this.date(t.clone().subtract(1,"y")):this.date(t.clone().add(1,"h"))}},"control down":function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")?this.date(t.clone().add(1,"y")):this.date(t.clone().subtract(1,"h"))}},left:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")&&this.date(t.clone().subtract(1,"d"))}},right:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")&&this.date(t.clone().add(1,"d"))}},pageUp:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")&&this.date(t.clone().subtract(1,"M"))}},pageDown:function(e){if(e){var t=this.date()||this.getMoment();e.find(".datepicker").is(":visible")&&this.date(t.clone().add(1,"M"))}},enter:function(){this.hide()},escape:function(){this.hide()},"control space":function(e){e&&e.find(".timepicker").is(":visible")&&e.find('.btn[data-action="togglePeriod"]').click()},t:function(){this.date(this.getMoment())},delete:function(){this.clear()}},debug:!1,allowInputToggle:!1,disabledTimeIntervals:!1,disabledHours:!1,enabledHours:!1,viewDate:!1},e.fn.datetimepicker}));
|