jquery-datetimepicker-rails 2.1.9.0 → 2.2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/assets/javascripts/jquery.datetimepicker.js +157 -53
- data/lib/jquery/datetimepicker/rails/version.rb +1 -1
- metadata +10 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e8fdc6e4aa30e5047e680d61072d5975a8c45bf
|
4
|
+
data.tar.gz: 9a6b03874766a70161cf6dfc06f5e843481c4866
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c194136e9202fcbb67a16ec04edcbc5d813cd033a776e96d97556cbb6375a832cb194676b10df18ea830beb3bb559b9dd6519e2cf0871289f4a5a2f72982cc65
|
7
|
+
data.tar.gz: 428b8663e8b8e395743e56db784fe9e46e31d0c77754b3ad71587701e4b382fe36cabc56b291508eb1fbfb5f638c61da19199faf710340962ceca902003d168e
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* @preserve jQuery DateTimePicker plugin v2.
|
2
|
+
* @preserve jQuery DateTimePicker plugin v2.2.2
|
3
3
|
* @homepage http://xdsoft.net/jqplugins/datetimepicker/
|
4
4
|
* (c) 2014, Chupurnov Valeriy.
|
5
5
|
*/
|
@@ -28,7 +28,7 @@
|
|
28
28
|
'Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'
|
29
29
|
],
|
30
30
|
dayOfWeek:[
|
31
|
-
"So
|
31
|
+
"So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"
|
32
32
|
]
|
33
33
|
},
|
34
34
|
nl:{ // Dutch
|
@@ -102,25 +102,61 @@
|
|
102
102
|
dayOfWeek: [
|
103
103
|
"Sön", "Mån", "Tis", "Ons", "Tor", "Fre", "Lör"
|
104
104
|
]
|
105
|
-
}
|
105
|
+
},
|
106
|
+
kr:{ // Korean
|
107
|
+
months: [
|
108
|
+
"1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월"
|
109
|
+
],
|
110
|
+
dayOfWeek: [
|
111
|
+
"일", "월", "화", "수", "목", "금", "토"
|
112
|
+
]
|
113
|
+
},
|
114
|
+
it:{ // Italian
|
115
|
+
months: [
|
116
|
+
"Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"
|
117
|
+
],
|
118
|
+
dayOfWeek: [
|
119
|
+
"Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"
|
120
|
+
]
|
121
|
+
},
|
122
|
+
da:{ // Dansk
|
123
|
+
months: [
|
124
|
+
"January", "Februar", "Marts", "April", "Maj", "Juni", "July", "August", "September", "Oktober", "November", "December"
|
125
|
+
],
|
126
|
+
dayOfWeek: [
|
127
|
+
"Søn", "Man", "Tir", "ons", "Tor", "Fre", "lør"
|
128
|
+
]
|
129
|
+
},
|
106
130
|
},
|
107
131
|
value:'',
|
108
|
-
lang:'en',
|
109
|
-
|
110
|
-
|
111
|
-
|
132
|
+
lang: 'en',
|
133
|
+
|
134
|
+
format: 'Y/m/d H:i',
|
135
|
+
formatTime: 'H:i',
|
136
|
+
formatDate: 'Y/m/d',
|
137
|
+
|
138
|
+
startDate: false, // new Date(), '1986/12/08', '-1970/01/05','-1970/01/05',
|
139
|
+
|
140
|
+
//fromUnixtime: false,
|
141
|
+
|
112
142
|
step:60,
|
143
|
+
|
113
144
|
closeOnDateSelect:0,
|
114
145
|
closeOnWithoutClick:true,
|
146
|
+
|
115
147
|
timepicker:true,
|
116
148
|
datepicker:true,
|
149
|
+
|
117
150
|
minDate:false,
|
118
151
|
maxDate:false,
|
119
152
|
minTime:false,
|
120
153
|
maxTime:false,
|
154
|
+
|
121
155
|
allowTimes:[],
|
122
156
|
opened:false,
|
157
|
+
initTime:true,
|
123
158
|
inline:false,
|
159
|
+
|
124
160
|
onSelectDate:function() {},
|
125
161
|
onSelectTime:function() {},
|
126
162
|
onChangeMonth:function() {},
|
@@ -128,31 +164,42 @@
|
|
128
164
|
onShow:function() {},
|
129
165
|
onClose:function() {},
|
130
166
|
onGenerate:function() {},
|
167
|
+
|
131
168
|
withoutCopyright:true,
|
169
|
+
|
132
170
|
inverseButton:false,
|
133
171
|
hours12:false,
|
134
172
|
next: 'xdsoft_next',
|
135
173
|
prev : 'xdsoft_prev',
|
136
174
|
dayOfWeekStart:0,
|
175
|
+
|
137
176
|
timeHeightInTimePicker:25,
|
138
177
|
timepickerScrollbar:true,
|
178
|
+
|
139
179
|
todayButton:true, // 2.1.0
|
140
180
|
defaultSelect:true, // 2.1.0
|
181
|
+
|
141
182
|
scrollMonth:true,
|
142
183
|
scrollTime:true,
|
143
184
|
scrollInput:true,
|
185
|
+
|
144
186
|
mask:false,
|
145
187
|
validateOnBlur:true,
|
146
|
-
allowBlank:
|
188
|
+
allowBlank:true,
|
189
|
+
|
147
190
|
yearStart:1950,
|
148
191
|
yearEnd:2050,
|
192
|
+
|
149
193
|
style:'',
|
150
194
|
id:'',
|
195
|
+
|
151
196
|
roundTime:'round', // ceil, floor
|
152
197
|
className:'',
|
198
|
+
|
153
199
|
weekends : [],
|
154
200
|
yearOffset:0
|
155
201
|
};
|
202
|
+
|
156
203
|
// fix for ie8
|
157
204
|
if ( !Array.prototype.indexOf ) {
|
158
205
|
Array.prototype.indexOf = function(obj, start) {
|
@@ -162,6 +209,7 @@
|
|
162
209
|
return -1;
|
163
210
|
}
|
164
211
|
};
|
212
|
+
|
165
213
|
$.fn.xdsoftScroller = function( _percent ) {
|
166
214
|
return this.each(function() {
|
167
215
|
var timeboxparent = $(this);
|
@@ -282,6 +330,7 @@
|
|
282
330
|
YKEY = 89,
|
283
331
|
ctrlDown = false,
|
284
332
|
options = ($.isPlainObject(opt)||!opt)?$.extend(true,{},default_options,opt):$.extend({},default_options),
|
333
|
+
|
285
334
|
createDateTimePicker = function( input ) {
|
286
335
|
var datetimepicker = $('<div '+(options.id?'id="'+options.id+'"':'')+' '+(options.style?'style="'+options.style+'"':'')+' class="xdsoft_datetimepicker xdsoft_noselect '+options.className+'"></div>'),
|
287
336
|
xdsoft_copyright = $('<div class="xdsoft_copyright"><a target="_blank" href="http://xdsoft.net/jqplugins/datetimepicker/">xdsoft.net</a></div>'),
|
@@ -310,6 +359,7 @@
|
|
310
359
|
mounth_picker
|
311
360
|
.find('.xdsoft_select')
|
312
361
|
.hide();
|
362
|
+
|
313
363
|
var select = $(this).find('.xdsoft_select').eq(0),
|
314
364
|
val = 0,
|
315
365
|
top = 0;
|
@@ -318,6 +368,7 @@
|
|
318
368
|
val = _xdsoft_datetime.currentTime[$(this).hasClass('xdsoft_month')?'getMonth':'getFullYear']();
|
319
369
|
|
320
370
|
select.show();
|
371
|
+
|
321
372
|
for(var items = select.find('div.xdsoft_option'),i = 0;i<items.length;i++) {
|
322
373
|
if( items.eq(i).data('value')==val ) {
|
323
374
|
break;
|
@@ -326,6 +377,7 @@
|
|
326
377
|
|
327
378
|
select.xdsoftScroller(top/(select.children()[0].offsetHeight-(select[0].clientHeight)));
|
328
379
|
event.stopPropagation();
|
380
|
+
|
329
381
|
return false;
|
330
382
|
});
|
331
383
|
|
@@ -339,7 +391,9 @@
|
|
339
391
|
.on('mousedown.xdsoft','.xdsoft_option',function( event ) {
|
340
392
|
if( _xdsoft_datetime&&_xdsoft_datetime.currentTime )
|
341
393
|
_xdsoft_datetime.currentTime[$(this).parent().parent().hasClass('xdsoft_monthselect')?'setMonth':'setFullYear']($(this).data('value'));
|
394
|
+
|
342
395
|
$(this).parent().parent().hide();
|
396
|
+
|
343
397
|
datetimepicker.trigger('xchange.xdsoft');
|
344
398
|
options.onChangeMonth&&options.onChangeMonth.call&&options.onChangeMonth.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));
|
345
399
|
});
|
@@ -363,10 +417,14 @@
|
|
363
417
|
options.prev = 'xdsoft_next';
|
364
418
|
}
|
365
419
|
|
366
|
-
if(
|
420
|
+
if( options.datepicker )
|
421
|
+
datepicker.addClass('active');
|
422
|
+
else
|
367
423
|
datepicker.removeClass('active');
|
368
|
-
|
369
|
-
if( options.
|
424
|
+
|
425
|
+
if( options.timepicker )
|
426
|
+
timepicker.addClass('active');
|
427
|
+
else
|
370
428
|
timepicker.removeClass('active');
|
371
429
|
|
372
430
|
if( options.value ){
|
@@ -381,17 +439,15 @@
|
|
381
439
|
|
382
440
|
if( !options.timepickerScrollbar )
|
383
441
|
scrollbar.hide();
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
timeOffset = tmpDate.getTime()+-1*(tmpDate.getTimezoneOffset())*60000;
|
388
|
-
options.minDate = new Date((_xdsoft_datetime.now()).getTime()-timeOffset).dateFormat( options.formatDate );
|
442
|
+
|
443
|
+
if( options.minDate && /^-(.*)$/.test(options.minDate) ){
|
444
|
+
options.minDate = _xdsoft_datetime.strToDateTime(options.minDate).dateFormat( options.formatDate );
|
389
445
|
}
|
390
|
-
|
391
|
-
|
392
|
-
options.maxDate =
|
446
|
+
|
447
|
+
if( options.maxDate && /^\+(.*)$/.test(options.maxDate) ) {
|
448
|
+
options.maxDate = _xdsoft_datetime.strToDateTime(options.maxDate).dateFormat( options.formatDate );
|
393
449
|
}
|
394
|
-
|
450
|
+
|
395
451
|
mounth_picker
|
396
452
|
.find('.xdsoft_today_button')
|
397
453
|
.css('visibility',!options.todayButton?'hidden':'visible');
|
@@ -439,8 +495,7 @@
|
|
439
495
|
input.off('keydown.xdsoft');
|
440
496
|
switch(true) {
|
441
497
|
case ( options.mask===true ):
|
442
|
-
|
443
|
-
//options.mask = options.mask.replace(/[0-9]/g,'_');
|
498
|
+
|
444
499
|
options.mask = options.format
|
445
500
|
.replace(/Y/g,'9999')
|
446
501
|
.replace(/F/g,'9999')
|
@@ -449,34 +504,41 @@
|
|
449
504
|
.replace(/H/g,'29')
|
450
505
|
.replace(/i/g,'59')
|
451
506
|
.replace(/s/g,'59');
|
507
|
+
|
452
508
|
case ( $.type(options.mask) == 'string' ):
|
509
|
+
|
453
510
|
if( !isValidValue( options.mask,input.val() ) )
|
454
511
|
input.val(options.mask.replace(/[0-9]/g,'_'));
|
455
512
|
|
456
513
|
input.on('keydown.xdsoft',function( event ) {
|
457
514
|
var val = this.value,
|
458
515
|
key = event.which;
|
516
|
+
|
459
517
|
switch(true) {
|
460
518
|
case (( key>=KEY0&&key<=KEY9 )||( key>=_KEY0&&key<=_KEY9 ))||(key==BACKSPACE||key==DEL):
|
461
519
|
var pos = getCaretPos(this),
|
462
520
|
digit = ( key!=BACKSPACE&&key!=DEL )?String.fromCharCode((_KEY0 <= key && key <= _KEY9)? key-KEY0 : key):'_';
|
521
|
+
|
463
522
|
if( (key==BACKSPACE||key==DEL)&&pos ) {
|
464
523
|
pos--;
|
465
524
|
digit='_';
|
466
525
|
}
|
526
|
+
|
467
527
|
while( /[^0-9_]/.test(options.mask.substr(pos,1))&&pos<options.mask.length&&pos>0 )
|
468
528
|
pos+=( key==BACKSPACE||key==DEL )?-1:1;
|
469
529
|
|
470
530
|
val = val.substr(0,pos)+digit+val.substr(pos+1);
|
471
|
-
if( $.trim(val)=='' )
|
531
|
+
if( $.trim(val)=='' ){
|
472
532
|
val = options.mask.replace(/[0-9]/g,'_');
|
473
|
-
else
|
533
|
+
}else{
|
474
534
|
if( pos==options.mask.length )
|
475
535
|
break;
|
476
|
-
|
536
|
+
}
|
537
|
+
|
477
538
|
pos+=(key==BACKSPACE||key==DEL)?0:1;
|
478
539
|
while( /[^0-9_]/.test(options.mask.substr(pos,1))&&pos<options.mask.length&&pos>0 )
|
479
540
|
pos+=(key==BACKSPACE||key==DEL)?-1:1;
|
541
|
+
|
480
542
|
if( isValidValue( options.mask,val ) ) {
|
481
543
|
this.value = val;
|
482
544
|
setCaretPos(this,pos);
|
@@ -566,7 +628,7 @@
|
|
566
628
|
};
|
567
629
|
|
568
630
|
_this.setCurrentTime = function( dTime) {
|
569
|
-
_this.currentTime = (typeof dTime == 'string')? _this.
|
631
|
+
_this.currentTime = (typeof dTime == 'string')? _this.strToDateTime(dTime) : _this.isValidDate(dTime) ? dTime: _this.now();
|
570
632
|
datetimepicker.trigger('xchange.xdsoft');
|
571
633
|
};
|
572
634
|
|
@@ -614,10 +676,18 @@
|
|
614
676
|
return month;
|
615
677
|
};
|
616
678
|
|
617
|
-
_this.
|
618
|
-
var
|
679
|
+
_this.strToDateTime = function( sDateTime ) {
|
680
|
+
var tmpDate = [],timeOffset,currentTime;
|
681
|
+
|
682
|
+
if( ( tmpDate = /^(\+|\-)(.*)$/.exec(sDateTime) ) && ( tmpDate[2]=Date.parseDate(tmpDate[2], options.formatDate) ) ) {
|
683
|
+
timeOffset = tmpDate[2].getTime()-1*(tmpDate[2].getTimezoneOffset())*60000;
|
684
|
+
currentTime = new Date((_xdsoft_datetime.now()).getTime()+parseInt(tmpDate[1]+'1')*timeOffset);
|
685
|
+
}else
|
686
|
+
currentTime = sDateTime?Date.parseDate(sDateTime, options.format):_this.now();
|
687
|
+
|
619
688
|
if( !_this.isValidDate(currentTime) )
|
620
689
|
currentTime = _this.now();
|
690
|
+
|
621
691
|
return currentTime;
|
622
692
|
};
|
623
693
|
|
@@ -705,9 +775,10 @@
|
|
705
775
|
datetimepicker
|
706
776
|
.on('xchange.xdsoft',function( event ) {
|
707
777
|
var table = '',
|
708
|
-
start = new Date(_xdsoft_datetime.currentTime.getFullYear(),_xdsoft_datetime.currentTime.getMonth(),1),
|
778
|
+
start = new Date(_xdsoft_datetime.currentTime.getFullYear(),_xdsoft_datetime.currentTime.getMonth(),1, 12, 0, 0),
|
709
779
|
i = 0,
|
710
780
|
today = _xdsoft_datetime.now();
|
781
|
+
|
711
782
|
while( start.getDay()!=options.dayOfWeekStart )
|
712
783
|
start.setDate(start.getDate()-1);
|
713
784
|
|
@@ -722,15 +793,19 @@
|
|
722
793
|
table+='</tr></thead>';
|
723
794
|
table+='<tbody><tr>';
|
724
795
|
var maxDate = false, minDate = false;
|
796
|
+
|
725
797
|
if( options.maxDate!==false ) {
|
726
798
|
maxDate = _xdsoft_datetime.strtodate(options.maxDate);
|
727
799
|
maxDate = new Date(maxDate.getFullYear(),maxDate.getMonth(),maxDate.getDate(),23,59,59,999);
|
728
800
|
}
|
801
|
+
|
729
802
|
if( options.minDate!==false ) {
|
730
803
|
minDate = _xdsoft_datetime.strtodate(options.minDate);
|
731
804
|
minDate = new Date(minDate.getFullYear(),minDate.getMonth(),minDate.getDate());
|
732
805
|
}
|
806
|
+
|
733
807
|
var d,y,m,classes = [];
|
808
|
+
|
734
809
|
while( i<_xdsoft_datetime.currentTime.getDaysInMonth()||start.getDay()!=options.dayOfWeekStart||_xdsoft_datetime.currentTime.getMonth()==start.getMonth() ) {
|
735
810
|
classes = [];
|
736
811
|
i++;
|
@@ -788,8 +863,13 @@
|
|
788
863
|
classes = [];
|
789
864
|
if( (options.maxTime!==false&&_xdsoft_datetime.strtotime(options.maxTime).getTime()<now.getTime())||(options.minTime!==false&&_xdsoft_datetime.strtotime(options.minTime).getTime()>now.getTime()))
|
790
865
|
classes.push('xdsoft_disabled');
|
791
|
-
if( (options.defaultSelect||datetimepicker.data('changed')) && parseInt(_xdsoft_datetime.currentTime.getHours())==parseInt(h)&&(options.step>59||Math[options.roundTime](_xdsoft_datetime.currentTime.getMinutes()/options.step)*options.step==parseInt(m)))
|
792
|
-
|
866
|
+
if( (options.initTime||options.defaultSelect||datetimepicker.data('changed')) && parseInt(_xdsoft_datetime.currentTime.getHours())==parseInt(h)&&(options.step>59||Math[options.roundTime](_xdsoft_datetime.currentTime.getMinutes()/options.step)*options.step==parseInt(m))) {
|
867
|
+
if( options.defaultSelect||datetimepicker.data('changed')) {
|
868
|
+
classes.push('xdsoft_current');
|
869
|
+
} else if( options.initTime ) {
|
870
|
+
classes.push('xdsoft_init_time');
|
871
|
+
}
|
872
|
+
}
|
793
873
|
if( parseInt(today.getHours())==parseInt(h)&&parseInt(today.getMinutes())==parseInt(m))
|
794
874
|
classes.push('xdsoft_today');
|
795
875
|
time+= '<div class="xdsoft_time '+classes.join(' ')+'" data-hour="'+h+'" data-minute="'+m+'">'+now.dateFormat(options.formatTime)+'</div>';
|
@@ -830,16 +910,26 @@
|
|
830
910
|
event.stopPropagation();
|
831
911
|
})
|
832
912
|
.on('afterOpen.xdsoft',function() {
|
833
|
-
if( options.timepicker
|
834
|
-
var
|
835
|
-
|
836
|
-
|
837
|
-
if( (
|
838
|
-
|
839
|
-
|
840
|
-
|
913
|
+
if( options.timepicker ) {
|
914
|
+
var classType;
|
915
|
+
if( timebox.find('.xdsoft_current').length ) {
|
916
|
+
classType = '.xdsoft_current';
|
917
|
+
} else if( timebox.find('.xdsoft_init_time').length ) {
|
918
|
+
classType = '.xdsoft_init_time';
|
919
|
+
}
|
920
|
+
|
921
|
+
if( classType ) {
|
922
|
+
var pheight = timeboxparent[0].clientHeight,
|
923
|
+
height = timebox[0].offsetHeight,
|
924
|
+
top = timebox.find(classType).index()*options.timeHeightInTimePicker+1;
|
925
|
+
if( (height-pheight)<top )
|
926
|
+
top = height-pheight;
|
927
|
+
timebox.css('marginTop','-'+parseInt(top)+'px');
|
928
|
+
timeboxparent.trigger('scroll_element.xdsoft_scroller',[parseInt(top)/(height-pheight)]);
|
929
|
+
}
|
841
930
|
}
|
842
931
|
});
|
932
|
+
|
843
933
|
var timerclick = 0;
|
844
934
|
calendar
|
845
935
|
.on('click.xdsoft','td',function() {
|
@@ -850,8 +940,8 @@
|
|
850
940
|
return false;
|
851
941
|
|
852
942
|
currentTime.setFullYear( $this.data('year') );
|
853
|
-
currentTime.setDate( $this.data('date') );
|
854
943
|
currentTime.setMonth( $this.data('month') );
|
944
|
+
currentTime.setDate( $this.data('date') );
|
855
945
|
datetimepicker.trigger('select.xdsoft',[currentTime]);
|
856
946
|
|
857
947
|
input.val( _xdsoft_datetime.str() );
|
@@ -924,8 +1014,11 @@
|
|
924
1014
|
|
925
1015
|
datetimepicker
|
926
1016
|
.on('changedatetime.xdsoft',function() {
|
927
|
-
if( options.onChangeDateTime&&options.onChangeDateTime.call )
|
928
|
-
|
1017
|
+
if( options.onChangeDateTime&&options.onChangeDateTime.call ) {
|
1018
|
+
var $input = datetimepicker.data('input');
|
1019
|
+
options.onChangeDateTime.call(datetimepicker, _xdsoft_datetime.currentTime, $input);
|
1020
|
+
$input.trigger('change');
|
1021
|
+
}
|
929
1022
|
})
|
930
1023
|
.on('generate.xdsoft',function() {
|
931
1024
|
if( options.onGenerate&&options.onGenerate.call )
|
@@ -953,6 +1046,8 @@
|
|
953
1046
|
var offset = datetimepicker.data('input').offset(), top = offset.top+datetimepicker.data('input')[0].offsetHeight-1, left = offset.left;
|
954
1047
|
if( top+datetimepicker[0].offsetHeight>$(window).height()+$(window).scrollTop() )
|
955
1048
|
top = offset.top-datetimepicker[0].offsetHeight+1;
|
1049
|
+
if (top < 0)
|
1050
|
+
top = 0;
|
956
1051
|
if( left+datetimepicker[0].offsetWidth>$(window).width() )
|
957
1052
|
left = offset.left-datetimepicker[0].offsetWidth+datetimepicker.data('input')[0].offsetWidth;
|
958
1053
|
datetimepicker.css({
|
@@ -999,14 +1094,23 @@
|
|
999
1094
|
|
1000
1095
|
datetimepicker.data('xdsoft_datetime',_xdsoft_datetime);
|
1001
1096
|
datetimepicker.setOptions(options);
|
1002
|
-
|
1003
|
-
|
1004
|
-
|
1005
|
-
|
1006
|
-
|
1007
|
-
|
1008
|
-
|
1009
|
-
|
1097
|
+
|
1098
|
+
function getCurrentValue(){
|
1099
|
+
var ct = options.value?options.value:(input&&input.val&&input.val())?input.val():'';
|
1100
|
+
|
1101
|
+
if( ct && _xdsoft_datetime.isValidDate(ct = Date.parseDate(ct, options.format)) ) {
|
1102
|
+
datetimepicker.data('changed',true);
|
1103
|
+
}else
|
1104
|
+
ct = '';
|
1105
|
+
|
1106
|
+
if( !ct && options.startDate!==false ){
|
1107
|
+
ct = _xdsoft_datetime.strToDateTime(options.startDate);
|
1108
|
+
}
|
1109
|
+
|
1110
|
+
return ct?ct:0;
|
1111
|
+
}
|
1112
|
+
|
1113
|
+
_xdsoft_datetime.setCurrentTime( getCurrentValue() );
|
1010
1114
|
|
1011
1115
|
datetimepicker.trigger('afterOpen.xdsoft');
|
1012
1116
|
|
@@ -1019,7 +1123,8 @@
|
|
1019
1123
|
timer = setTimeout(function() {
|
1020
1124
|
if( input.is(':disabled')||input.is(':hidden')||!input.is(':visible') )
|
1021
1125
|
return;
|
1022
|
-
_xdsoft_datetime.setCurrentTime((
|
1126
|
+
_xdsoft_datetime.setCurrentTime(getCurrentValue());
|
1127
|
+
|
1023
1128
|
datetimepicker.trigger('open.xdsoft');
|
1024
1129
|
},100);
|
1025
1130
|
})
|
@@ -1107,8 +1212,7 @@
|
|
1107
1212
|
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
|
1108
1213
|
* details.
|
1109
1214
|
*/
|
1110
|
-
Date.parseFunctions={count:0};Date.parseRegexes=[];Date.formatFunctions={count:0};Date.prototype.dateFormat=function(format)
|
1111
|
-
|
1215
|
+
Date.parseFunctions={count:0};Date.parseRegexes=[];Date.formatFunctions={count:0};Date.prototype.dateFormat=function(format){if(format=='unixtime')return parseInt(this.getTime()/1000);if(Date.formatFunctions[format]==null){Date.createNewFormat(format)}var func=Date.formatFunctions[format];return this[func]()};Date.createNewFormat=function(format){var funcName="format"+Date.formatFunctions.count++;Date.formatFunctions[format]=funcName;var code="Date.prototype."+funcName+" = function() {return ";var special=false;var ch='';for(var i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true}else if(special){special=false;code+="'"+String.escape(ch)+"' + "}else{code+=Date.getFormatCode(ch)}}eval(code.substring(0,code.length-3)+";}")};Date.getFormatCode=function(character){switch(character){case"d":return"String.leftPad(this.getDate(), 2, '0') + ";case"D":return"Date.dayNames[this.getDay()].substring(0, 3) + ";case"j":return"this.getDate() + ";case"l":return"Date.dayNames[this.getDay()] + ";case"S":return"this.getSuffix() + ";case"w":return"this.getDay() + ";case"z":return"this.getDayOfYear() + ";case"W":return"this.getWeekOfYear() + ";case"F":return"Date.monthNames[this.getMonth()] + ";case"m":return"String.leftPad(this.getMonth() + 1, 2, '0') + ";case"M":return"Date.monthNames[this.getMonth()].substring(0, 3) + ";case"n":return"(this.getMonth() + 1) + ";case"t":return"this.getDaysInMonth() + ";case"L":return"(this.isLeapYear() ? 1 : 0) + ";case"Y":return"this.getFullYear() + ";case"y":return"('' + this.getFullYear()).substring(2, 4) + ";case"a":return"(this.getHours() < 12 ? 'am' : 'pm') + ";case"A":return"(this.getHours() < 12 ? 'AM' : 'PM') + ";case"g":return"((this.getHours() %12) ? this.getHours() % 12 : 12) + ";case"G":return"this.getHours() + ";case"h":return"String.leftPad((this.getHours() %12) ? this.getHours() % 12 : 12, 2, '0') + ";case"H":return"String.leftPad(this.getHours(), 2, '0') + ";case"i":return"String.leftPad(this.getMinutes(), 2, '0') + ";case"s":return"String.leftPad(this.getSeconds(), 2, '0') + ";case"O":return"this.getGMTOffset() + ";case"T":return"this.getTimezone() + ";case"Z":return"(this.getTimezoneOffset() * -60) + ";default:return"'"+String.escape(character)+"' + "}};Date.parseDate=function(input,format){if(format=='unixtime')return new Date(!isNaN(parseInt(input))?parseInt(input)*1000:0);if(Date.parseFunctions[format]==null){Date.createParser(format)}var func=Date.parseFunctions[format];return Date[func](input)};Date.createParser=function(format){var funcName="parse"+Date.parseFunctions.count++;var regexNum=Date.parseRegexes.length;var currentGroup=1;Date.parseFunctions[format]=funcName;var code="Date."+funcName+" = function(input) {\n"+"var y = -1, m = -1, d = -1, h = -1, i = -1, s = -1;\n"+"var d = new Date();\n"+"y = d.getFullYear();\n"+"m = d.getMonth();\n"+"d = d.getDate();\n"+"var results = input.match(Date.parseRegexes["+regexNum+"]);\n"+"if (results && results.length > 0) {";var regex="";var special=false;var ch='';for(var i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true}else if(special){special=false;regex+=String.escape(ch)}else{obj=Date.formatCodeToRegex(ch,currentGroup);currentGroup+=obj.g;regex+=obj.s;if(obj.g&&obj.c){code+=obj.c}}}code+="if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && s >= 0)\n"+"{return new Date(y, m, d, h, i, s);}\n"+"else if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0)\n"+"{return new Date(y, m, d, h, i);}\n"+"else if (y > 0 && m >= 0 && d > 0 && h >= 0)\n"+"{return new Date(y, m, d, h);}\n"+"else if (y > 0 && m >= 0 && d > 0)\n"+"{return new Date(y, m, d);}\n"+"else if (y > 0 && m >= 0)\n"+"{return new Date(y, m);}\n"+"else if (y > 0)\n"+"{return new Date(y);}\n"+"}return null;}";Date.parseRegexes[regexNum]=new RegExp("^"+regex+"$");eval(code)};Date.formatCodeToRegex=function(character,currentGroup){switch(character){case"D":return{g:0,c:null,s:"(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)"};case"j":case"d":return{g:1,c:"d = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{1,2})"};case"l":return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"};case"S":return{g:0,c:null,s:"(?:st|nd|rd|th)"};case"w":return{g:0,c:null,s:"\\d"};case"z":return{g:0,c:null,s:"(?:\\d{1,3})"};case"W":return{g:0,c:null,s:"(?:\\d{2})"};case"F":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+currentGroup+"].substring(0, 3)], 10);\n",s:"("+Date.monthNames.join("|")+")"};case"M":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+currentGroup+"]], 10);\n",s:"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)"};case"n":case"m":return{g:1,c:"m = parseInt(results["+currentGroup+"], 10) - 1;\n",s:"(\\d{1,2})"};case"t":return{g:0,c:null,s:"\\d{1,2}"};case"L":return{g:0,c:null,s:"(?:1|0)"};case"Y":return{g:1,c:"y = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{4})"};case"y":return{g:1,c:"var ty = parseInt(results["+currentGroup+"], 10);\n"+"y = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"};case"a":return{g:1,c:"if (results["+currentGroup+"] == 'am') {\n"+"if (h == 12) { h = 0; }\n"+"} else { if (h < 12) { h += 12; }}",s:"(am|pm)"};case"A":return{g:1,c:"if (results["+currentGroup+"] == 'AM') {\n"+"if (h == 12) { h = 0; }\n"+"} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"};case"g":case"G":case"h":case"H":return{g:1,c:"h = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{1,2})"};case"i":return{g:1,c:"i = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{2})"};case"s":return{g:1,c:"s = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{2})"};case"O":return{g:0,c:null,s:"[+-]\\d{4}"};case"T":return{g:0,c:null,s:"[A-Z]{3}"};case"Z":return{g:0,c:null,s:"[+-]\\d{1,5}"};default:return{g:0,c:null,s:String.escape(character)}}};Date.prototype.getTimezone=function(){return this.toString().replace(/^.*? ([A-Z]{3}) [0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3")};Date.prototype.getGMTOffset=function(){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")+String.leftPad(Math.abs(this.getTimezoneOffset())%60,2,"0")};Date.prototype.getDayOfYear=function(){var num=0;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(var i=0;i<this.getMonth();++i){num+=Date.daysInMonth[i]}return num+this.getDate()-1};Date.prototype.getWeekOfYear=function(){var now=this.getDayOfYear()+(4-this.getDay());var jan1=new Date(this.getFullYear(),0,1);var then=(7-jan1.getDay()+4);document.write(then);return String.leftPad(((now-then)/7)+1,2,"0")};Date.prototype.isLeapYear=function(){var year=this.getFullYear();return((year&3)==0&&(year%100||(year%400==0&&year)))};Date.prototype.getFirstDayOfMonth=function(){var day=(this.getDay()-(this.getDate()-1))%7;return(day<0)?(day+7):day};Date.prototype.getLastDayOfMonth=function(){var day=(this.getDay()+(Date.daysInMonth[this.getMonth()]-this.getDate()))%7;return(day<0)?(day+7):day};Date.prototype.getDaysInMonth=function(){Date.daysInMonth[1]=this.isLeapYear()?29:28;return Date.daysInMonth[this.getMonth()]};Date.prototype.getSuffix=function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}};String.escape=function(string){return string.replace(/('|\\)/g,"\\$1")};String.leftPad=function(val,size,ch){var result=new String(val);if(ch==null){ch=" "}while(result.length<size){result=ch+result}return result};Date.daysInMonth=[31,28,31,30,31,30,31,31,30,31,30,31];Date.monthNames=["January","February","March","April","May","June","July","August","September","October","November","December"];Date.dayNames=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];Date.y2kYear=50;Date.monthNumbers={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11};Date.patterns={ISO8601LongPattern:"Y-m-d H:i:s",ISO8601ShortPattern:"Y-m-d",ShortDatePattern:"n/j/Y",LongDatePattern:"l, F d, Y",FullDateTimePattern:"l, F d, Y g:i:s A",MonthDayPattern:"F d",ShortTimePattern:"g:i A",LongTimePattern:"g:i:s A",SortableDateTimePattern:"Y-m-d\\TH:i:s",UniversalSortableDateTimePattern:"Y-m-d H:i:sO",YearMonthPattern:"F, Y"};
|
1112
1216
|
//https://github.com/brandonaaron/jquery-mousewheel/blob/master/jquery.mousewheel.js
|
1113
1217
|
/*
|
1114
1218
|
* Copyright (c) 2013 Brandon Aaron (http://brandonaaron.net)
|
metadata
CHANGED
@@ -1,41 +1,41 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jquery-datetimepicker-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrey Novikov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-04-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ~>
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
description: A date and time picker for jQuery and Rails
|
@@ -45,7 +45,7 @@ executables: []
|
|
45
45
|
extensions: []
|
46
46
|
extra_rdoc_files: []
|
47
47
|
files:
|
48
|
-
-
|
48
|
+
- .gitignore
|
49
49
|
- Gemfile
|
50
50
|
- LICENSE.txt
|
51
51
|
- README.md
|
@@ -66,17 +66,17 @@ require_paths:
|
|
66
66
|
- lib
|
67
67
|
required_ruby_version: !ruby/object:Gem::Requirement
|
68
68
|
requirements:
|
69
|
-
- -
|
69
|
+
- - '>='
|
70
70
|
- !ruby/object:Gem::Version
|
71
71
|
version: '0'
|
72
72
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- -
|
74
|
+
- - '>='
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '0'
|
77
77
|
requirements: []
|
78
78
|
rubyforge_project:
|
79
|
-
rubygems_version: 2.2.
|
79
|
+
rubygems_version: 2.2.2
|
80
80
|
signing_key:
|
81
81
|
specification_version: 4
|
82
82
|
summary: This gem packages the datetimepicker jQuery plugin for Rails 3.1+ asset pipeline
|