diff --git a/DateTimePicker.jquery.json b/DateTimePicker.jquery.json index c48ce79..3023da0 100755 --- a/DateTimePicker.jquery.json +++ b/DateTimePicker.jquery.json @@ -29,7 +29,7 @@ "docs": "http://curioussolutions.github.io/DateTimePicker/", - "version": "0.1.29", + "version": "0.1.30", "licenses": [ { diff --git a/bower.json b/bower.json index af0171f..3f5721c 100644 --- a/bower.json +++ b/bower.json @@ -15,7 +15,7 @@ "input" ], - "version": "0.1.29", + "version": "0.1.30", "homepage": "http://curioussolutions.github.io/DateTimePicker/", diff --git a/demo/Mobile-TouchHold.htm b/demo/Mobile-TouchHold.htm new file mode 100644 index 0000000..59478c2 --- /dev/null +++ b/demo/Mobile-TouchHold.htm @@ -0,0 +1,74 @@ + + + + +
+ +Date :
+ + +Time :
+ + +DateTime :
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/DateTimePicker-ltie9.css b/dist/DateTimePicker-ltie9.css index 2dbb47d..4a02ad3 100755 --- a/dist/DateTimePicker-ltie9.css +++ b/dist/DateTimePicker-ltie9.css @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker-ltie9.js b/dist/DateTimePicker-ltie9.js index 2e5d75b..4b7ec7d 100755 --- a/dist/DateTimePicker-ltie9.js +++ b/dist/DateTimePicker-ltie9.js @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker-ltie9.min.css b/dist/DateTimePicker-ltie9.min.css index 463041e..4886052 100644 --- a/dist/DateTimePicker-ltie9.min.css +++ b/dist/DateTimePicker-ltie9.min.css @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker-ltie9.min.js b/dist/DateTimePicker-ltie9.min.js index 3ca3ed6..66d774a 100644 --- a/dist/DateTimePicker-ltie9.min.js +++ b/dist/DateTimePicker-ltie9.min.js @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker.css b/dist/DateTimePicker.css index 3e84085..98520cd 100755 --- a/dist/DateTimePicker.css +++ b/dist/DateTimePicker.css @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker.js b/dist/DateTimePicker.js index 8f20e69..0d5dcea 100644 --- a/dist/DateTimePicker.js +++ b/dist/DateTimePicker.js @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker @@ -62,6 +62,9 @@ $.DateTimePicker = $.DateTimePicker || { setValueInTextboxOnEveryClick: false, animationDuration: 400, + + touchHoldInterval: 300, // in Milliseconds + captureTouchHold: false, // capture Touch Hold Event isPopup: true, parentElement: "body", @@ -79,7 +82,7 @@ $.DateTimePicker = $.DateTimePicker || { formatHumanDate: null, // formatHumanDate(oDateTime, sMode, sFormat) parseDateTimeString: null, // parseDateTimeString(sDateTime, sMode, oInputField) - formatDateTimeString: null, // formatDateTimeString(oDateTime, sMode, oInputField) + formatDateTimeString: null // formatDateTimeString(oDateTime, sMode, oInputField) }, dataObject: // Temporary Variables For Calculation Specific to DateTimePicker Instance @@ -116,7 +119,11 @@ $.DateTimePicker = $.DateTimePicker || { iTabIndex: 0, bElemFocused: false, - bIs12Hour: false + bIs12Hour: false, + + sTouchButton: null, + iTouchStart: null, + oTimeInterval: null } }; @@ -1548,89 +1555,106 @@ $.cf = { // ---------------------------------------------------------------------------- - $(oDTP.element).find(".day .increment, .day .increment *").click(function(e) - { - oDTP.oData.iCurrentDay++; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".day .decrement, .day .decrement *").click(function(e) - { - oDTP.oData.iCurrentDay--; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".month .increment, .month .increment *").click(function(e) - { - oDTP.oData.iCurrentMonth++; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".month .decrement, .month .decrement *").click(function(e) - { - oDTP.oData.iCurrentMonth--; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".year .increment, .year .increment *").click(function(e) - { - oDTP.oData.iCurrentYear++; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".year .decrement, .year .decrement *").click(function(e) - { - oDTP.oData.iCurrentYear--; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".hour .increment, .hour .increment *").click(function(e) - { - oDTP.oData.iCurrentHour++; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".hour .decrement, .hour .decrement *").click(function(e) + if(oDTP.settings.captureTouchHold) { - oDTP.oData.iCurrentHour--; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".minutes .increment, .minutes .increment *").click(function(e) - { - oDTP.oData.iCurrentMinutes += oDTP.settings.minuteInterval; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".minutes .decrement, .minutes .decrement *").click(function(e) - { - oDTP.oData.iCurrentMinutes -= oDTP.settings.minuteInterval; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); + $(".dtpicker-cont *").on('touchstart touchmove touchend', function(e) + { + oDTP._clearIntervalForTouchEvents(); + }); - $(oDTP.element).find(".seconds .increment, .seconds .increment *").click(function(e) - { - oDTP.oData.iCurrentSeconds += oDTP.settings.secondsInterval; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); - - $(oDTP.element).find(".seconds .decrement, .seconds .decrement *").click(function(e) + oDTP._bindTouchEvents("day"); + oDTP._bindTouchEvents("month"); + oDTP._bindTouchEvents("year"); + oDTP._bindTouchEvents("hour"); + oDTP._bindTouchEvents("minutes"); + oDTP._bindTouchEvents("seconds"); + } + else { - oDTP.oData.iCurrentSeconds -= oDTP.settings.secondsInterval; - oDTP._setCurrentDate(); - oDTP._setOutputOnIncrementOrDecrement(); - }); + $(oDTP.element).find(".day .increment, .day .increment *").click(function(e) + { + oDTP.oData.iCurrentDay++; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".day .decrement, .day .decrement *").click(function(e) + { + oDTP.oData.iCurrentDay--; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".month .increment, .month .increment *").click(function(e) + { + oDTP.oData.iCurrentMonth++; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".month .decrement, .month .decrement *").click(function(e) + { + oDTP.oData.iCurrentMonth--; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".year .increment, .year .increment *").click(function(e) + { + oDTP.oData.iCurrentYear++; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".year .decrement, .year .decrement *").click(function(e) + { + oDTP.oData.iCurrentYear--; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".hour .increment, .hour .increment *").click(function(e) + { + oDTP.oData.iCurrentHour++; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".hour .decrement, .hour .decrement *").click(function(e) + { + oDTP.oData.iCurrentHour--; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".minutes .increment, .minutes .increment *").click(function(e) + { + oDTP.oData.iCurrentMinutes += oDTP.settings.minuteInterval; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".minutes .decrement, .minutes .decrement *").click(function(e) + { + oDTP.oData.iCurrentMinutes -= oDTP.settings.minuteInterval; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".seconds .increment, .seconds .increment *").click(function(e) + { + oDTP.oData.iCurrentSeconds += oDTP.settings.secondsInterval; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + + $(oDTP.element).find(".seconds .decrement, .seconds .decrement *").click(function(e) + { + oDTP.oData.iCurrentSeconds -= oDTP.settings.secondsInterval; + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + }); + } $(oDTP.element).find(".meridiem .dtpicker-compButton, .meridiem .dtpicker-compButton *").click(function(e) { @@ -1643,7 +1667,7 @@ $.cf = { { oDTP.oData.sCurrentMeridiem = "AM"; oDTP.oData.iCurrentHour -= 12; - } + } oDTP._setCurrentDate(); oDTP._setOutputOnIncrementOrDecrement(); }); @@ -1703,6 +1727,131 @@ $.cf = { return sElemValue; }, + + _bindTouchEvents: function(type) + { + var oDTP = this; + + $(oDTP.element).find("." + type + " .increment, ." + type + " .increment *").on('touchstart', function(e) + { + e.stopPropagation(); + if(!$.cf._isValid(oDTP.oData.sTouchButton)) + { + oDTP.oData.iTouchStart = (new Date()).getTime(); + oDTP.oData.sTouchButton = type + "-inc"; + + oDTP._setIntervalForTouchEvents(); + } + }); + + $(oDTP.element).find("." + type + " .increment, ." + type + " .increment *").on('touchend', function(e) + { + e.stopPropagation(); + oDTP._clearIntervalForTouchEvents(); + }); + + $(oDTP.element).find("." + type + " .decrement, ." + type + " .decrement *").on('touchstart', function(e) + { + e.stopPropagation(); + if(!$.cf._isValid(oDTP.oData.sTouchButton)) + { + oDTP.oData.iTouchStart = (new Date()).getTime(); + oDTP.oData.sTouchButton = type + "-dec"; + + oDTP._setIntervalForTouchEvents(); + } + }); + + $(oDTP.element).find("." + type + " .decrement, ." + type + " .decrement *").on('touchend', function(e) + { + e.stopPropagation(); + oDTP._clearIntervalForTouchEvents(); + }); + }, + + _setIntervalForTouchEvents: function() + { + var oDTP = this; + + if(!$.cf._isValid(oDTP.oData.oTimeInterval)) + { + var iDiff; + + oDTP.oData.oTimeInterval = setInterval(function() + { + iDiff = ((new Date()).getTime() - oDTP.oData.iTouchStart); + if(iDiff > oDTP.settings.touchHoldInterval && $.cf._isValid(oDTP.oData.sTouchButton)) + { + if(oDTP.oData.sTouchButton === "day-inc") + { + oDTP.oData.iCurrentDay++; + } + else if(oDTP.oData.sTouchButton === "day-dec") + { + oDTP.oData.iCurrentDay--; + } + else if(oDTP.oData.sTouchButton === "month-inc") + { + oDTP.oData.iCurrentMonth++; + } + else if(oDTP.oData.sTouchButton === "month-dec") + { + oDTP.oData.iCurrentMonth--; + } + else if(oDTP.oData.sTouchButton === "year-inc") + { + oDTP.oData.iCurrentYear++; + } + else if(oDTP.oData.sTouchButton === "year-dec") + { + oDTP.oData.iCurrentYear--; + } + else if(oDTP.oData.sTouchButton === "hour-inc") + { + oDTP.oData.iCurrentHour++; + } + else if(oDTP.oData.sTouchButton === "hour-dec") + { + oDTP.oData.iCurrentHour--; + } + else if(oDTP.oData.sTouchButton === "minute-inc") + { + oDTP.oData.iCurrentMinutes += oDTP.settings.minuteInterval; + } + else if(oDTP.oData.sTouchButton === "minute-dec") + { + oDTP.oData.iCurrentMinutes -= oDTP.settings.minuteInterval; + } + else if(oDTP.oData.sTouchButton === "second-inc") + { + oDTP.oData.iCurrentSeconds += oDTP.settings.secondsInterval; + } + else if(oDTP.oData.sTouchButton === "second-dec") + { + oDTP.oData.iCurrentSeconds -= oDTP.settings.secondsInterval; + } + + oDTP._setCurrentDate(); + oDTP._setOutputOnIncrementOrDecrement(); + + oDTP.oData.iTouchStart = (new Date()).getTime(); + } + }, oDTP.settings.touchHoldInterval); + } + }, + + _clearIntervalForTouchEvents: function() + { + var oDTP = this; + + clearInterval(oDTP.oData.oTimeInterval); + if($.cf._isValid(oDTP.oData.sTouchButton)) + { + oDTP.oData.sTouchButton = null; + oDTP.oData.iTouchStart = 0; + } + oDTP.oData.oTimeInterval = null; + }, //----------------------------------------------------------------- diff --git a/dist/DateTimePicker.min.css b/dist/DateTimePicker.min.css index ca12127..3c7eeda 100644 --- a/dist/DateTimePicker.min.css +++ b/dist/DateTimePicker.min.css @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker diff --git a/dist/DateTimePicker.min.js b/dist/DateTimePicker.min.js index 8d07225..9bdb6be 100644 --- a/dist/DateTimePicker.min.js +++ b/dist/DateTimePicker.min.js @@ -1,12 +1,12 @@ /* ----------------------------------------------------------------------------- jQuery DateTimePicker - Responsive flat design jQuery DateTime Picker plugin for Web & Mobile - Version 0.1.29 + Version 0.1.30 Copyright (c)2016 Curious Solutions LLP and Neha Kadam http://curioussolutions.github.io/DateTimePicker https://github.com/CuriousSolutions/DateTimePicker ----------------------------------------------------------------------------- */ -$.DateTimePicker=$.DateTimePicker||{name:"DateTimePicker",i18n:{},defaults:{mode:"date",defaultDate:null,dateSeparator:"-",timeSeparator:":",timeMeridiemSeparator:" ",dateTimeSeparator:" ",monthYearSeparator:" ",dateTimeFormat:"dd-MM-yyyy HH:mm",dateFormat:"dd-MM-yyyy",timeFormat:"HH:mm",maxDate:null,minDate:null,maxTime:null,minTime:null,maxDateTime:null,minDateTime:null,shortDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],fullDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],fullMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],labels:null,minuteInterval:1,roundOffMinutes:!0,secondsInterval:1,roundOffSeconds:!0,titleContentDate:"Set Date",titleContentTime:"Set Time",titleContentDateTime:"Set Date & Time",buttonsToDisplay:["HeaderCloseButton","SetButton","ClearButton"],setButtonContent:"Set",clearButtonContent:"Clear",incrementButtonContent:"+",decrementButtonContent:"-",setValueInTextboxOnEveryClick:!1,animationDuration:400,isPopup:!0,parentElement:"body",language:"",init:null,addEventHandlers:null,beforeShow:null,afterShow:null,beforeHide:null,afterHide:null,buttonClicked:null,settingValueOfElement:null,formatHumanDate:null,parseDateTimeString:null,formatDateTimeString:null},dataObject:{dCurrentDate:new Date,iCurrentDay:0,iCurrentMonth:0,iCurrentYear:0,iCurrentHour:0,iCurrentMinutes:0,iCurrentSeconds:0,sCurrentMeridiem:"",iMaxNumberOfDays:0,sDateFormat:"",sTimeFormat:"",sDateTimeFormat:"",dMinValue:null,dMaxValue:null,sArrInputDateFormats:[],sArrInputTimeFormats:[],sArrInputDateTimeFormats:[],bArrMatchFormat:[],bDateMode:!1,bTimeMode:!1,bDateTimeMode:!1,oInputElement:null,iTabIndex:0,bElemFocused:!1,bIs12Hour:!1}},$.cf={_isValid:function(a){return void 0!==a&&null!==a&&""!==a},_compare:function(a,b){var c=void 0!==a&&null!==a,d=void 0!==b&&null!==b;return c&&d&&a.toLowerCase()===b.toLowerCase()?!0:!1}},function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){"use strict";function b(b,c){this.element=b;var d="";d=a.cf._isValid(c)&&a.cf._isValid(c.language)?c.language:a.DateTimePicker.defaults.language,this.settings=a.extend({},a.DateTimePicker.defaults,a.DateTimePicker.i18n[d],c),this.options=c,this.oData=a.extend({},a.DateTimePicker.dataObject),this._defaults=a.DateTimePicker.defaults,this._name=a.DateTimePicker.name,this.init()}a.fn.DateTimePicker=function(c){var d,e,f=a(this).data(),g=f?Object.keys(f):[];if("string"!=typeof c)return this.each(function(){a.removeData(this,"plugin_DateTimePicker"),a.data(this,"plugin_DateTimePicker")||a.data(this,"plugin_DateTimePicker",new b(this,c))});if(a.cf._isValid(f))if("destroy"===c)if(g.length>0){for(d in g)if(e=g[d],-1!==e.search("plugin_DateTimePicker")){a(document).unbind("click.DateTimePicker"),a(document).unbind("keydown.DateTimePicker"),a(document).unbind("keyup.DateTimePicker"),a(this).children().remove(),a(this).removeData(),a(this).unbind(),a(this).removeClass("dtpicker-overlay dtpicker-mobile"),f=f[e],console.log("Destroyed DateTimePicker Object"),console.log(f);break}}else console.log("No DateTimePicker Object Defined For This Element");else if("object"===c)if(g.length>0){for(d in g)if(e=g[d],-1!==e.search("plugin_DateTimePicker"))return f[e]}else console.log("No DateTimePicker Object Defined For This Element")},b.prototype={init:function(){var b=this;b._setDateFormatArray(),b._setTimeFormatArray(),b._setDateTimeFormatArray(),b.settings.isPopup&&(b._createPicker(),a(b.element).addClass("dtpicker-mobile")),b.settings.init&&b.settings.init.call(b),b._addEventHandlersForInput()},_setDateFormatArray:function(){var a=this;a.oData.sArrInputDateFormats=[];var b="";b="dd"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b),b="MM"+a.settings.dateSeparator+"dd"+a.settings.dateSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b),b="yyyy"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"dd",a.oData.sArrInputDateFormats.push(b),b="dd"+a.settings.dateSeparator+"MMM"+a.settings.dateSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b),b="MM"+a.settings.monthYearSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b),b="MMM"+a.settings.monthYearSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b),b="MMMM"+a.settings.monthYearSeparator+"yyyy",a.oData.sArrInputDateFormats.push(b)},_setTimeFormatArray:function(){var a=this;a.oData.sArrInputTimeFormats=[];var b="";b="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss"+a.settings.timeMeridiemSeparator+"AA",a.oData.sArrInputTimeFormats.push(b),b="HH"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss",a.oData.sArrInputTimeFormats.push(b),b="hh"+a.settings.timeSeparator+"mm"+a.settings.timeMeridiemSeparator+"AA",a.oData.sArrInputTimeFormats.push(b),b="HH"+a.settings.timeSeparator+"mm",a.oData.sArrInputTimeFormats.push(b)},_setDateTimeFormatArray:function(){var a=this;a.oData.sArrInputDateTimeFormats=[];var b="",c="",d="";b="dd"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"yyyy",c="HH"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="MM"+a.settings.dateSeparator+"dd"+a.settings.dateSeparator+"yyyy",c="HH"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="MM"+a.settings.dateSeparator+"dd"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="yyyy"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"dd",c="HH"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="yyyy"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"dd",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MMM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MMM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeSeparator+"ss"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"yyyy",c="HH"+a.settings.timeSeparator+"mm",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="MM"+a.settings.dateSeparator+"dd"+a.settings.dateSeparator+"yyyy",c="HH"+a.settings.timeSeparator+"mm",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="MM"+a.settings.dateSeparator+"dd"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="yyyy"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"dd",c="HH"+a.settings.timeSeparator+"mm",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="yyyy"+a.settings.dateSeparator+"MM"+a.settings.dateSeparator+"dd",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MMM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d),b="dd"+a.settings.dateSeparator+"MMM"+a.settings.dateSeparator+"yyyy",c="hh"+a.settings.timeSeparator+"mm"+a.settings.timeMeridiemSeparator+"AA",d=b+a.settings.dateTimeSeparator+c,a.oData.sArrInputDateTimeFormats.push(d)},_matchFormat:function(b,c){var d=this;d.oData.bArrMatchFormat=[],d.oData.bDateMode=!1,d.oData.bTimeMode=!1,d.oData.bDateTimeMode=!1;var e,f=[];for(b=a.cf._isValid(b)?b:d.settings.mode,a.cf._compare(b,"date")?(c=a.cf._isValid(c)?c:d.oData.sDateFormat,d.oData.bDateMode=!0,f=d.oData.sArrInputDateFormats):a.cf._compare(b,"time")?(c=a.cf._isValid(c)?c:d.oData.sTimeFormat,d.oData.bTimeMode=!0,f=d.oData.sArrInputTimeFormats):a.cf._compare(b,"datetime")&&(c=a.cf._isValid(c)?c:d.oData.sDateTimeFormat,d.oData.bDateTimeMode=!0,f=d.oData.sArrInputDateTimeFormats),e=0;e