diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/docs/footer.html | 4 | ||||
-rw-r--r-- | src/docs/header.html | 2 | ||||
-rw-r--r-- | src/docs/options.html | 9 | ||||
-rw-r--r-- | src/i18n/jquery-ui-timepicker-de.js | 2 | ||||
-rw-r--r-- | src/i18n/jquery-ui-timepicker-eu.js | 9 | ||||
-rw-r--r-- | src/i18n/jquery-ui-timepicker-vi.js | 10 | ||||
-rw-r--r-- | src/i18n/jquery-ui-timepicker-zh-CN.js | 2 | ||||
-rw-r--r-- | src/jquery-ui-timepicker-addon.js | 70 |
8 files changed, 85 insertions, 23 deletions
diff --git a/src/docs/footer.html b/src/docs/footer.html index 1dc3969..2a588b2 100644 --- a/src/docs/footer.html +++ b/src/docs/footer.html @@ -4,8 +4,8 @@ </div> - <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script> - <script type="text/javascript" src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script> + <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script> + <script type="text/javascript" src="http://code.jquery.com/ui/1.10.4/jquery-ui.min.js"></script> <script type="text/javascript" src="jquery-ui-timepicker-addon.js"></script> <script type="text/javascript" src="jquery-ui-sliderAccess.js"></script> diff --git a/src/docs/header.html b/src/docs/header.html index d509354..87a0836 100644 --- a/src/docs/header.html +++ b/src/docs/header.html @@ -38,7 +38,7 @@ .ebook .buyp a iframe{ margin-bottom: -5px; } </style> - <link rel="stylesheet" media="all" type="text/css" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" /> + <link rel="stylesheet" media="all" type="text/css" href="http://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css" /> <link rel="stylesheet" media="all" type="text/css" href="jquery-ui-timepicker-addon.css" /> </head> diff --git a/src/docs/options.html b/src/docs/options.html index 4c62358..3cecb5a 100644 --- a/src/docs/options.html +++ b/src/docs/options.html @@ -203,6 +203,9 @@ <dt>timeOnly</dt> <dd><em>Default: false</em> - Hide the datepicker and only provide a time interface.</dd> + <dt>timeOnlyShowDate</dt> + <dd><em>Default: false</em> - Show the date and time in the input, but only allow the timepicker.</dd> + <dt>onSelect</dt> <dd><em>Default: null</em> - Function to be called when a date is chosen or time has changed (parameters: datetimeText, datepickerInstance).</dd> @@ -236,6 +239,12 @@ <dt>maxDateTime</dt> <dd><em>Default: null</em> - Date object of the maximum datetime allowed. Also Available as maxDate.</dd> + <dt>minTime</dt> + <dd><em>Default: null</em> - String of the minimum time allowed. '8:00 am' will restrict to times after 8am</dd> + + <dt>maxTime</dt> + <dd><em>Default: null</em> - String of the maximum time allowed. '8:00 pm' will restrict to times before 8pm</dd> + <dt>parse</dt> <dd><em>Default: 'strict'</em> - How to parse the time string. Two methods are provided: 'strict' which must match the timeFormat exactly, and 'loose' which uses javascript's new Date(timeString) to guess the time. You may also pass in a function(timeFormat, timeString, options) to handle the parsing yourself, returning a simple object: <pre>{ diff --git a/src/i18n/jquery-ui-timepicker-de.js b/src/i18n/jquery-ui-timepicker-de.js index 286be73..a0ddf9f 100644 --- a/src/i18n/jquery-ui-timepicker-de.js +++ b/src/i18n/jquery-ui-timepicker-de.js @@ -2,7 +2,7 @@ /* Written by Marvin */ (function($) { $.timepicker.regional['de'] = { - timeOnlyTitle: 'Zeit Wählen', + timeOnlyTitle: 'Zeit wählen', timeText: 'Zeit', hourText: 'Stunde', minuteText: 'Minute', diff --git a/src/i18n/jquery-ui-timepicker-eu.js b/src/i18n/jquery-ui-timepicker-eu.js index 41ba5a7..8884e4a 100644 --- a/src/i18n/jquery-ui-timepicker-eu.js +++ b/src/i18n/jquery-ui-timepicker-eu.js @@ -1,14 +1,15 @@ -/* Basque trannslation for JQuery Timepicker Addon +/* Basque trannslation for JQuery Timepicker Addon */ /* Translated by Xabi Fer */ +/* Fixed by Asier Iturralde Sarasola - iametza interaktiboa */ (function($) { $.timepicker.regional['eu'] = { timeOnlyTitle: 'Aukeratu ordua', timeText: 'Ordua', hourText: 'Orduak', minuteText: 'Minutuak', - secondText: 'Segunduak', - millisecText: 'Milisegunduak', - microsecText: 'Mikrosegundotan', + secondText: 'Segundoak', + millisecText: 'Milisegundoak', + microsecText: 'Mikrosegundoak', timezoneText: 'Ordu-eremua', currentText: 'Orain', closeText: 'Itxi', diff --git a/src/i18n/jquery-ui-timepicker-vi.js b/src/i18n/jquery-ui-timepicker-vi.js index 48b05f1..60d712a 100644 --- a/src/i18n/jquery-ui-timepicker-vi.js +++ b/src/i18n/jquery-ui-timepicker-vi.js @@ -7,14 +7,14 @@ hourText: 'Giờ', minuteText: 'Phút', secondText: 'Giây', - millisecText: 'Phần nghìn giây', - microsecText: 'Miligiây', + millisecText: 'Mili giây', + microsecText: 'Micrô giây', timezoneText: 'Múi giờ', currentText: 'Hiện thời', closeText: 'Đóng', - timeFormat: 'H:m', - amNames: ['SA', 'AM', 'A'], - pmNames: ['CH', 'PM', 'P'], + timeFormat: 'HH:mm', + amNames: ['SA', 'S'], + pmNames: ['CH', 'C'], isRTL: false }; $.timepicker.setDefaults($.timepicker.regional['vi']); diff --git a/src/i18n/jquery-ui-timepicker-zh-CN.js b/src/i18n/jquery-ui-timepicker-zh-CN.js index 7488c04..e73ac3b 100644 --- a/src/i18n/jquery-ui-timepicker-zh-CN.js +++ b/src/i18n/jquery-ui-timepicker-zh-CN.js @@ -7,7 +7,7 @@ hourText: '小时', minuteText: '分钟', secondText: '秒钟', - millisecText: '微秒', + millisecText: '毫秒', microsecText: '微秒', timezoneText: '时区', currentText: '现在时间', diff --git a/src/jquery-ui-timepicker-addon.js b/src/jquery-ui-timepicker-addon.js index 71ec2cd..5c7a186 100644 --- a/src/jquery-ui-timepicker-addon.js +++ b/src/jquery-ui-timepicker-addon.js @@ -54,6 +54,7 @@ this._defaults = { // Global defaults for all the datetime picker instances showButtonPanel: true, timeOnly: false, + timeOnlyShowDate: false, showHour: null, showMinute: null, showSecond: null, @@ -84,6 +85,8 @@ microsecMax: 999, minDateTime: null, maxDateTime: null, + maxTime: null, + minTime: null, onSelect: null, hourGrid: 0, minuteGrid: 0, @@ -120,6 +123,8 @@ millisec_slider: null, microsec_slider: null, timezone_select: null, + maxTime: null, + minTime: null, hour: 0, minute: 0, second: 0, @@ -666,6 +671,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), @@ -674,23 +717,23 @@ microsecMax = parseInt((this._defaults.microsecMax - ((this._defaults.microsecMax - this._defaults.microsecMin) % this._defaults.stepMicrosec)), 10); if (this.hour_slider) { - this.control.options(this, this.hour_slider, 'hour', { min: this._defaults.hourMin, max: hourMax }); + this.control.options(this, this.hour_slider, 'hour', { min: this._defaults.hourMin, max: hourMax, step: this._defaults.stepHour }); this.control.value(this, this.hour_slider, 'hour', this.hour - (this.hour % this._defaults.stepHour)); } if (this.minute_slider) { - this.control.options(this, this.minute_slider, 'minute', { min: this._defaults.minuteMin, max: minMax }); + this.control.options(this, this.minute_slider, 'minute', { min: this._defaults.minuteMin, max: minMax, step: this._defaults.stepMinute }); this.control.value(this, this.minute_slider, 'minute', this.minute - (this.minute % this._defaults.stepMinute)); } if (this.second_slider) { - this.control.options(this, this.second_slider, 'second', { min: this._defaults.secondMin, max: secMax }); + this.control.options(this, this.second_slider, 'second', { min: this._defaults.secondMin, max: secMax, step: this._defaults.stepSecond }); this.control.value(this, this.second_slider, 'second', this.second - (this.second % this._defaults.stepSecond)); } if (this.millisec_slider) { - this.control.options(this, this.millisec_slider, 'millisec', { min: this._defaults.millisecMin, max: millisecMax }); + this.control.options(this, this.millisec_slider, 'millisec', { min: this._defaults.millisecMin, max: millisecMax, step: this._defaults.stepMillisec }); this.control.value(this, this.millisec_slider, 'millisec', this.millisec - (this.millisec % this._defaults.stepMillisec)); } if (this.microsec_slider) { - this.control.options(this, this.microsec_slider, 'microsec', { min: this._defaults.microsecMin, max: microsecMax }); + this.control.options(this, this.microsec_slider, 'microsec', { min: this._defaults.microsecMin, max: microsecMax, step: this._defaults.stepMicrosec }); this.control.value(this, this.microsec_slider, 'microsec', this.microsec - (this.microsec % this._defaults.stepMicrosec)); } } @@ -812,7 +855,7 @@ this.timeDefined = true; if (hasChanged) { this._updateDateTime(); - this.$input.focus(); + //this.$input.focus(); // may automatically open the picker on setDate } }, @@ -861,9 +904,9 @@ // return; //} - if (this._defaults.timeOnly === true) { + if (this._defaults.timeOnly === true && this._defaults.timeOnlyShowDate === false) { formattedDateTime = this.formattedTime; - } else if (this._defaults.timeOnly !== true && (this._defaults.alwaysSetTime || timeAvailable)) { + } else if ((this._defaults.timeOnly !== true && (this._defaults.alwaysSetTime || timeAvailable)) || (this._defaults.timeOnly === true && this._defaults.timeOnlyShowDate === true)) { formattedDateTime += this._defaults.separator + this.formattedTime + this._defaults.timeSuffix; } @@ -1348,7 +1391,7 @@ var inst = this._getInst($(id)[0]), tp_inst = this._get(inst, 'timepicker'); - if (tp_inst) { + if (tp_inst && inst.settings.showTimepicker) { tp_inst._limitMinMaxDateTime(inst, true); inst.inline = inst.stay_open = true; //This way the onSelect handler called from calendarpicker get the full dateTime @@ -2040,6 +2083,13 @@ end: {} // options for end picker }, options); + // for the mean time this fixes an issue with calling getDate with timepicker() + var timeOnly = false; + if(method === 'timepicker'){ + timeOnly = true; + method = 'datetimepicker'; + } + function checkDates(changed, other) { var startdt = startTime[method]('getDate'), enddt = endTime[method]('getDate'), @@ -2083,6 +2133,7 @@ } $.fn[method].call(startTime, $.extend({ + timeOnly: timeOnly, onClose: function (dateText, inst) { checkDates($(this), endTime); }, @@ -2091,6 +2142,7 @@ } }, options, options.start)); $.fn[method].call(endTime, $.extend({ + timeOnly: timeOnly, onClose: function (dateText, inst) { checkDates($(this), startTime); }, |