summaryrefslogtreecommitdiffstats
path: root/src/jquery-ui-timepicker-addon.js
diff options
context:
space:
mode:
authorbodrick <cmotch@gmail.com>2014-02-12 15:05:48 -0500
committerbodrick <cmotch@gmail.com>2014-02-12 15:05:48 -0500
commit6e463ea22c1211bd9059c02dc380d58ea61f90b7 (patch)
treea1c120c5b0683615ca172877ad6b4443a4606ae7 /src/jquery-ui-timepicker-addon.js
parent8cda2ddd84203cc4995d569ce42ea6f1b94b1f2e (diff)
downloadjQuery-Timepicker-Addon-6e463ea22c1211bd9059c02dc380d58ea61f90b7.zip
jQuery-Timepicker-Addon-6e463ea22c1211bd9059c02dc380d58ea61f90b7.tar.gz
jQuery-Timepicker-Addon-6e463ea22c1211bd9059c02dc380d58ea61f90b7.tar.bz2
Added new options to specify minTime and maxTime
Added two new options so that minimum time and maximum time can be specified when selecting times. Very much different than the minDate/maxDate in that the time is restricted each day to the values specified.
Diffstat (limited to 'src/jquery-ui-timepicker-addon.js')
-rw-r--r--src/jquery-ui-timepicker-addon.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/jquery-ui-timepicker-addon.js b/src/jquery-ui-timepicker-addon.js
index 974e46a..6dfcdcc 100644
--- a/src/jquery-ui-timepicker-addon.js
+++ b/src/jquery-ui-timepicker-addon.js
@@ -84,6 +84,8 @@
microsecMax: 999,
minDateTime: null,
maxDateTime: null,
+ maxTime: null,
+ minTime: null,
onSelect: null,
hourGrid: 0,
minuteGrid: 0,
@@ -120,6 +122,8 @@
millisec_slider: null,
microsec_slider: null,
timezone_select: null,
+ maxTime: null,
+ minTime: null,
hour: 0,
minute: 0,
second: 0,
@@ -666,6 +670,44 @@
}
}
+ if (dp_inst.settings.minTime!==null) {
+ var tempMinTime=new Date("01/01/1970 " + dp_inst.settings.minTime);
+ if (this.hour<tempMinTime.getHours()) {
+ this.hour=this._defaults.hourMin=tempMinTime.getHours();
+ this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
+ } else if (this.hour===tempMinTime.getHours() && this.minute<tempMinTime.getMinutes()) {
+ this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
+ } else {
+ if (this._defaults.hourMin<tempMinTime.getHours()) {
+ this._defaults.hourMin=tempMinTime.getHours();
+ this._defaults.minuteMin=tempMinTime.getMinutes();
+ } else if (this._defaults.hourMin===tempMinTime.getHours()===this.hour && this._defaults.minuteMin<tempMinTime.getMinutes()) {
+ this._defaults.minuteMin=tempMinTime.getMinutes();
+ } else {
+ this._defaults.minuteMin=0;
+ }
+ }
+ }
+
+ if (dp_inst.settings.maxTime!==null) {
+ var tempMaxTime=new Date("01/01/1970 " + dp_inst.settings.maxTime);
+ if (this.hour>tempMaxTime.getHours()) {
+ this.hour=this._defaults.hourMax=tempMaxTime.getHours();
+ this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
+ } else if (this.hour===tempMaxTime.getHours() && this.minute>tempMaxTime.getMinutes()) {
+ this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
+ } else {
+ if (this._defaults.hourMax>tempMaxTime.getHours()) {
+ this._defaults.hourMax=tempMaxTime.getHours();
+ this._defaults.minuteMax=tempMaxTime.getMinutes();
+ } else if (this._defaults.hourMax===tempMaxTime.getHours()===this.hour && this._defaults.minuteMax>tempMaxTime.getMinutes()) {
+ this._defaults.minuteMax=tempMaxTime.getMinutes();
+ } else {
+ this._defaults.minuteMax=59;
+ }
+ }
+ }
+
if (adjustSliders !== undefined && adjustSliders === true) {
var hourMax = parseInt((this._defaults.hourMax - ((this._defaults.hourMax - this._defaults.hourMin) % this._defaults.stepHour)), 10),
minMax = parseInt((this._defaults.minuteMax - ((this._defaults.minuteMax - this._defaults.minuteMin) % this._defaults.stepMinute)), 10),