3
3
* By: Trent Richardson [http://trentrichardson.com]
4
4
* Version 1.0.0-dev
5
5
* Last Modified: 02/05/2012
6
- *
6
+ *
7
7
* Copyright 2012 Trent Richardson
8
8
* Dual licensed under the MIT and GPL licenses.
9
9
* http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
10
10
* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
11
- *
11
+ *
12
12
* HERES THE CSS:
13
13
* .ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
14
14
* .ui-timepicker-div dl { text-align: left; }
@@ -133,7 +133,7 @@ $.extend(Timepicker.prototype, {
133
133
_newInst : function ( $input , o ) {
134
134
var tp_inst = new Timepicker ( ) ,
135
135
inlineSettings = { } ;
136
-
136
+
137
137
for ( var attrName in this . _defaults ) {
138
138
var attrValue = $input . attr ( 'time:' + attrName ) ;
139
139
if ( attrValue ) {
@@ -163,8 +163,8 @@ $.extend(Timepicker.prototype, {
163
163
} ,
164
164
timepicker : tp_inst // add timepicker as a property of datepicker: $.datepicker._get(dp_inst, 'timepicker');
165
165
} ) ;
166
- tp_inst . amNames = $ . map ( tp_inst . _defaults . amNames , function ( val ) { return val . toUpperCase ( ) } ) ;
167
- tp_inst . pmNames = $ . map ( tp_inst . _defaults . pmNames , function ( val ) { return val . toUpperCase ( ) } ) ;
166
+ tp_inst . amNames = $ . map ( tp_inst . _defaults . amNames , function ( val ) { return val . toUpperCase ( ) ; } ) ;
167
+ tp_inst . pmNames = $ . map ( tp_inst . _defaults . pmNames , function ( val ) { return val . toUpperCase ( ) ; } ) ;
168
168
169
169
if ( tp_inst . _defaults . timezoneList === null ) {
170
170
var timezoneList = [ ] ;
@@ -188,7 +188,7 @@ $.extend(Timepicker.prototype, {
188
188
tp_inst . $altInput = $ ( o . altField )
189
189
. css ( { cursor : 'pointer' } )
190
190
. focus ( function ( ) { $input . trigger ( "focus" ) ; } ) ;
191
-
191
+
192
192
if ( tp_inst . _defaults . minDate == 0 || tp_inst . _defaults . minDateTime == 0 )
193
193
{
194
194
tp_inst . _defaults . minDate = new Date ( ) ;
@@ -197,7 +197,7 @@ $.extend(Timepicker.prototype, {
197
197
{
198
198
tp_inst . _defaults . maxDate = new Date ( ) ;
199
199
}
200
-
200
+
201
201
// datepicker needs minDate/maxDate, timepicker needs minDateTime/maxDateTime..
202
202
if ( tp_inst . _defaults . minDate !== undefined && tp_inst . _defaults . minDate instanceof Date )
203
203
tp_inst . _defaults . minDateTime = new Date ( tp_inst . _defaults . minDate . getTime ( ) ) ;
@@ -215,7 +215,7 @@ $.extend(Timepicker.prototype, {
215
215
//########################################################################
216
216
_addTimePicker : function ( dp_inst ) {
217
217
var currDT = ( this . $altInput && this . _defaults . altFieldTimeOnly ) ?
218
- this . $input . val ( ) + ' ' + this . $altInput . val ( ) :
218
+ this . $input . val ( ) + ' ' + this . $altInput . val ( ) :
219
219
this . $input . val ( ) ;
220
220
221
221
this . timeDefined = this . _parseTime ( currDT ) ;
@@ -249,7 +249,7 @@ $.extend(Timepicker.prototype, {
249
249
var specials = new RegExp ( "[.*+?|()\\[\\]{}\\\\]" , "g" ) ;
250
250
regstr = '^.{' + dp_dateFormat . length + ',}?' + this . _defaults . separator . replace ( specials , "\\$&" ) + regstr ;
251
251
}
252
-
252
+
253
253
treg = timeString . match ( new RegExp ( regstr , 'i' ) ) ;
254
254
255
255
if ( treg ) {
@@ -297,7 +297,7 @@ $.extend(Timepicker.prototype, {
297
297
}
298
298
this . timezone = tz ;
299
299
}
300
-
300
+
301
301
return true ;
302
302
303
303
}
@@ -314,7 +314,7 @@ $.extend(Timepicker.prototype, {
314
314
$ . merge ( markers , o . amNames ) ;
315
315
if ( o . pmNames )
316
316
$ . merge ( markers , o . pmNames ) ;
317
- markers = $ . map ( markers , function ( val ) { return val . replace ( / [ . * + ? | ( ) \[ \] { } \\ ] / g, '\\$&' ) } ) ;
317
+ markers = $ . map ( markers , function ( val ) { return val . replace ( / [ . * + ? | ( ) \[ \] { } \\ ] / g, '\\$&' ) ; } ) ;
318
318
return '(' + markers . join ( '|' ) + ')?' ;
319
319
} ,
320
320
@@ -364,7 +364,7 @@ $.extend(Timepicker.prototype, {
364
364
minuteGridSize = 0 ,
365
365
secondGridSize = 0 ,
366
366
millisecGridSize = 0 ,
367
- size ;
367
+ size = null ;
368
368
369
369
// Hours
370
370
html += '<dd class="ui_tpicker_hour"><div id="ui_tpicker_hour_' + dp_id + '"' +
@@ -472,7 +472,7 @@ $.extend(Timepicker.prototype, {
472
472
}
473
473
} ) ;
474
474
475
-
475
+
476
476
// Updated by Peter Medeiros:
477
477
// - Pass in Event and UI instance into slide function
478
478
this . minute_slider = $tp . find ( '#ui_tpicker_minute_' + dp_id ) . slider ( {
@@ -634,7 +634,7 @@ $.extend(Timepicker.prototype, {
634
634
this . minute_slider . bind ( 'slidestop' , onSelectDelegate ) ;
635
635
this . second_slider . bind ( 'slidestop' , onSelectDelegate ) ;
636
636
this . millisec_slider . bind ( 'slidestop' , onSelectDelegate ) ;
637
-
637
+
638
638
// slideAccess integration: http://trentrichardson.com/2011/11/11/jquery-ui-sliders-and-touch-accessibility/
639
639
if ( this . _defaults . addSliderAccess ) {
640
640
var sliderAccessArgs = this . _defaults . sliderAccessArgs ;
@@ -651,15 +651,15 @@ $.extend(Timepicker.prototype, {
651
651
oldMarginLeft = $g . css ( 'marginLeft' ) . toString ( ) . replace ( '%' , '' ) ,
652
652
newWidth = oldWidth - sliderAccessWidth ,
653
653
newMarginLeft = ( ( oldMarginLeft * newWidth ) / oldWidth ) + '%' ;
654
-
654
+
655
655
$g . css ( { width : newWidth , marginLeft : newMarginLeft } ) ;
656
656
} ) ;
657
657
}
658
658
}
659
659
} , 0 ) ;
660
660
}
661
661
// end slideAccess integration
662
-
662
+
663
663
}
664
664
} ,
665
665
@@ -770,7 +770,7 @@ $.extend(Timepicker.prototype, {
770
770
771
771
} ,
772
772
773
-
773
+
774
774
//########################################################################
775
775
// when a slider moves, set the internal time...
776
776
// on time change is also called when the time is updated in the text field
@@ -803,30 +803,30 @@ $.extend(Timepicker.prototype, {
803
803
|| ( this . ampm . length > 0
804
804
&& ( hour < 12 ) != ( $ . inArray ( this . ampm . toUpperCase ( ) , this . amNames ) !== - 1 ) )
805
805
|| timezone != this . timezone ) ;
806
-
806
+
807
807
if ( hasChanged ) {
808
808
809
809
if ( hour !== false ) this . hour = hour ;
810
810
if ( minute !== false ) this . minute = minute ;
811
811
if ( second !== false ) this . second = second ;
812
812
if ( millisec !== false ) this . millisec = millisec ;
813
813
if ( timezone !== false ) this . timezone = timezone ;
814
-
814
+
815
815
if ( ! this . inst ) this . inst = $ . datepicker . _getInst ( this . $input [ 0 ] ) ;
816
-
816
+
817
817
this . _limitMinMaxDateTime ( this . inst , true ) ;
818
818
}
819
819
if ( o . ampm ) this . ampm = ampm ;
820
-
820
+
821
821
//this._formatTime();
822
822
this . formattedTime = $ . datepicker . formatTime ( this . _defaults . timeFormat , this , this . _defaults ) ;
823
823
if ( this . $timeObj ) this . $timeObj . text ( this . formattedTime + o . timeSuffix ) ;
824
824
this . timeDefined = true ;
825
825
if ( hasChanged ) this . _updateDateTime ( ) ;
826
826
} ,
827
-
827
+
828
828
//########################################################################
829
- // call custom onSelect.
829
+ // call custom onSelect.
830
830
// bind to sliders slidestop, and grid click.
831
831
//########################################################################
832
832
_onSelectHandler : function ( ) {
@@ -845,7 +845,7 @@ $.extend(Timepicker.prototype, {
845
845
var tmptime = ( format || this . _defaults . timeFormat ) . toString ( ) ;
846
846
847
847
tmptime = $ . datepicker . formatTime ( tmptime , time , this . _defaults ) ;
848
-
848
+
849
849
if ( arguments . length ) return tmptime ;
850
850
else this . formattedTime = tmptime ;
851
851
} ,
@@ -883,7 +883,7 @@ $.extend(Timepicker.prototype, {
883
883
} else {
884
884
this . $input . val ( formattedDateTime ) ;
885
885
}
886
-
886
+
887
887
this . $input . trigger ( "change" ) ;
888
888
}
889
889
@@ -909,13 +909,12 @@ $.fn.extend({
909
909
//########################################################################
910
910
datetimepicker : function ( o ) {
911
911
o = o || { } ;
912
- var $input = this ,
913
912
tmp_args = arguments ;
914
913
915
914
if ( typeof ( o ) == 'string' ) {
916
- if ( o == 'getDate' )
915
+ if ( o == 'getDate' )
917
916
return $ . fn . datepicker . apply ( $ ( this [ 0 ] ) , tmp_args ) ;
918
- else
917
+ else
919
918
return this . each ( function ( ) {
920
919
var $t = $ ( this ) ;
921
920
$t . datepicker . apply ( $t , tmp_args ) ;
@@ -930,7 +929,7 @@ $.fn.extend({
930
929
} ) ;
931
930
932
931
//########################################################################
933
- // format the time all pretty...
932
+ // format the time all pretty...
934
933
// format = string format of the time
935
934
// time = a {}, not a Date() for timezones
936
935
// options = essentially the regional[].. amNames, pmNames, ampm
@@ -939,7 +938,7 @@ $.datepicker.formatTime = function(format, time, options) {
939
938
options = options || { } ;
940
939
options = $ . extend ( $ . timepicker . _defaults , options ) ;
941
940
time = $ . extend ( { hour :0 , minute :0 , second :0 , millisec :0 , timezone :'+0000' } , time ) ;
942
-
941
+
943
942
var tmptime = format ;
944
943
var ampmName = options [ 'amNames' ] [ 0 ] ;
945
944
@@ -975,7 +974,7 @@ $.datepicker.formatTime = function(format, time, options) {
975
974
976
975
tmptime = $ . trim ( tmptime ) ;
977
976
return tmptime ;
978
- }
977
+ } ;
979
978
980
979
//########################################################################
981
980
// the bad hack :/ override datepicker so it doesnt close on select
@@ -1015,9 +1014,9 @@ $.datepicker._updateDatepicker = function(inst) {
1015
1014
}
1016
1015
1017
1016
if ( typeof ( inst . stay_open ) !== 'boolean' || inst . stay_open === false ) {
1018
-
1017
+
1019
1018
this . _base_updateDatepicker ( inst ) ;
1020
-
1019
+
1021
1020
// Reload the time control when changing something in the input text field.
1022
1021
var tp_inst = this . _get ( inst , 'timepicker' ) ;
1023
1022
if ( tp_inst ) tp_inst . _addTimePicker ( inst ) ;
@@ -1055,7 +1054,7 @@ $.datepicker._doKeyPress = function(event) {
1055
1054
return event . ctrlKey || ( chr < ' ' || ! dateChars || datetimeChars . indexOf ( chr ) > - 1 ) ;
1056
1055
}
1057
1056
}
1058
-
1057
+
1059
1058
return $ . datepicker . _base_doKeyPress ( event ) ;
1060
1059
} ;
1061
1060
@@ -1102,7 +1101,7 @@ $.datepicker._gotoToday = function(id) {
1102
1101
tp_inst . timezone_select . val ( tzoffset ) ;
1103
1102
}
1104
1103
this . _setTime ( inst , now ) ;
1105
- $ ( '.ui-datepicker-today' , $dp ) . click ( ) ;
1104
+ $ ( '.ui-datepicker-today' , $dp ) . click ( ) ;
1106
1105
} ;
1107
1106
1108
1107
//#######################################################################################
@@ -1245,14 +1244,11 @@ $.datepicker.parseDate = function(format, value, settings) {
1245
1244
//#######################################################################################
1246
1245
// override formatDate to set date with time to the input
1247
1246
//#######################################################################################
1248
- $ . datepicker . _base_formatDate = $ . datepicker . _formatDate ;
1247
+ $ . datepicker . _base_formatDate = $ . datepicker . _formatDate ;
1249
1248
$ . datepicker . _formatDate = function ( inst , day , month , year ) {
1250
1249
var tp_inst = this . _get ( inst , 'timepicker' ) ;
1251
- if ( tp_inst )
1252
- {
1253
- if ( day )
1254
- var b = this . _base_formatDate ( inst , day , month , year ) ;
1255
- tp_inst . _updateDateTime ( inst ) ;
1250
+ if ( tp_inst ) {
1251
+ tp_inst . _updateDateTime ( inst ) ;
1256
1252
return tp_inst . $input . val ( ) ;
1257
1253
}
1258
1254
return this . _base_formatDate ( inst ) ;
@@ -1266,16 +1262,16 @@ $.datepicker._optionDatepicker = function(target, name, value) {
1266
1262
var inst = this . _getInst ( target ) ,
1267
1263
tp_inst = this . _get ( inst , 'timepicker' ) ;
1268
1264
if ( tp_inst ) {
1269
- var min , max , onselect ;
1265
+ var min = null , max = null , onselect = null ;
1270
1266
if ( typeof name == 'string' ) { // if min/max was set with the string
1271
- if ( name === 'minDate' || name === 'minDateTime' )
1267
+ if ( name === 'minDate' || name === 'minDateTime' )
1272
1268
min = value ;
1273
- else if ( name === 'maxDate' || name === 'maxDateTime' )
1269
+ else if ( name === 'maxDate' || name === 'maxDateTime' )
1274
1270
max = value ;
1275
- else if ( name === 'onSelect' )
1276
- onselect = value ;
1271
+ else if ( name === 'onSelect' )
1272
+ onselect = value ;
1277
1273
} else if ( typeof name == 'object' ) { //if min/max was set with the JSON
1278
- if ( name . minDate )
1274
+ if ( name . minDate )
1279
1275
min = name . minDate ;
1280
1276
else if ( name . minDateTime )
1281
1277
min = name . minDateTime ;
@@ -1284,24 +1280,23 @@ $.datepicker._optionDatepicker = function(target, name, value) {
1284
1280
else if ( name . maxDateTime )
1285
1281
max = name . maxDateTime ;
1286
1282
}
1287
- if ( min ) { //if min was set
1288
- if ( min == 0 )
1289
- min = new Date ( ) ;
1283
+ if ( min ) { //if min was set
1284
+ if ( min == 0 )
1285
+ min = new Date ( ) ;
1290
1286
else
1291
- min = new Date ( min ) ;
1292
-
1287
+ min = new Date ( min ) ;
1288
+
1293
1289
tp_inst . _defaults . minDate = min ;
1294
1290
tp_inst . _defaults . minDateTime = min ;
1295
- } else if ( max ) { //if max was set
1291
+ } else if ( max ) { //if max was set
1296
1292
if ( max == 0 )
1297
1293
max = new Date ( ) ;
1298
1294
else
1299
1295
max = new Date ( max ) ;
1300
1296
tp_inst . _defaults . maxDate = max ;
1301
1297
tp_inst . _defaults . maxDateTime = max ;
1302
- }
1303
- else if ( onselect )
1304
- tp_inst . _defaults . onSelect = onselect ;
1298
+ } else if ( onselect )
1299
+ tp_inst . _defaults . onSelect = onselect ;
1305
1300
}
1306
1301
if ( value === undefined )
1307
1302
return this . _base_optionDatepicker ( target , name ) ;
@@ -1323,4 +1318,3 @@ $.timepicker = new Timepicker(); // singleton instance
1323
1318
$ . timepicker . version = "1.0.0" ;
1324
1319
1325
1320
} ) ( jQuery ) ;
1326
-
0 commit comments