bootstrap-datepicker-rails 1.1.1.1 → 1.1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +4 -1
- data/lib/bootstrap-datepicker-rails/version.rb +1 -1
- data/vendor/assets/javascripts/bootstrap-datepicker/core.js +108 -8
- data/vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.ka.js +15 -0
- data/vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.no.js +15 -0
- data/vendor/assets/stylesheets/bootstrap-datepicker.css +35 -3
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b67a9a4c167106a71d123da7fdb4d9af7a6981ab
|
4
|
+
data.tar.gz: 0aef8cc2bb241b679be539b9c7fd901b984ec837
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ac1397143b71e79d2b9a1417fa4b601cab910fa7f8a88bd064826f6d950ee28befc9180394db4cc2d9579bc330c0d3d811a1df6b825e8be943b2a9a34ab1bf52
|
7
|
+
data.tar.gz: 334ea55637203e1f56b5f3467e0a35b23d3b647eb3a3809d8f36eb55c4774a882e5a6d3cc152372dd9e82c5d281a2194cd545074ce6f475095174d607c094843
|
data/Rakefile
CHANGED
@@ -15,7 +15,7 @@ task :update do
|
|
15
15
|
system("git status")
|
16
16
|
|
17
17
|
puts "\n"
|
18
|
-
puts "bootstrap-datepicker version: #{JSON.parse(File.read('./bootstrap-datepicker-src/
|
18
|
+
puts "bootstrap-datepicker version: #{JSON.parse(File.read('./bootstrap-datepicker-src/bower.json'))['version']}"
|
19
19
|
puts "bootstrap-datepicker-rails version: #{BootstrapDatepickerRails::Rails::VERSION}"
|
20
20
|
end
|
21
21
|
|
@@ -31,4 +31,7 @@ task :publish => :build do
|
|
31
31
|
system("git tag #{BootstrapDatepickerRails::Rails::VERSION}") unless tags =~ /#{BootstrapDatepickerRails::Rails::VERSION}/
|
32
32
|
system("gem push bootstrap-datepicker-rails-#{BootstrapDatepickerRails::Rails::VERSION}.gem")
|
33
33
|
system("git push --tags")
|
34
|
+
end
|
35
|
+
|
36
|
+
task :release => :publish do
|
34
37
|
end
|
@@ -20,6 +20,8 @@
|
|
20
20
|
|
21
21
|
(function( $ ) {
|
22
22
|
|
23
|
+
var $window = $(window);
|
24
|
+
|
23
25
|
function UTCDate(){
|
24
26
|
return new Date(Date.UTC.apply(Date, arguments));
|
25
27
|
}
|
@@ -28,6 +30,7 @@
|
|
28
30
|
return UTCDate(today.getUTCFullYear(), today.getUTCMonth(), today.getUTCDate());
|
29
31
|
}
|
30
32
|
|
33
|
+
|
31
34
|
// Picker object
|
32
35
|
|
33
36
|
var Datepicker = function(element, options) {
|
@@ -137,12 +140,20 @@
|
|
137
140
|
o.weekStart %= 7;
|
138
141
|
o.weekEnd = ((o.weekStart + 6) % 7);
|
139
142
|
|
140
|
-
var format = DPGlobal.parseFormat(o.format)
|
143
|
+
var format = DPGlobal.parseFormat(o.format);
|
141
144
|
if (o.startDate !== -Infinity) {
|
142
|
-
|
145
|
+
if (!!o.startDate) {
|
146
|
+
o.startDate = DPGlobal.parseDate(o.startDate, format, o.language);
|
147
|
+
} else {
|
148
|
+
o.startDate = -Infinity;
|
149
|
+
}
|
143
150
|
}
|
144
151
|
if (o.endDate !== Infinity) {
|
145
|
-
|
152
|
+
if (!!o.endDate) {
|
153
|
+
o.endDate = DPGlobal.parseDate(o.endDate, format, o.language);
|
154
|
+
} else {
|
155
|
+
o.endDate = Infinity;
|
156
|
+
}
|
146
157
|
}
|
147
158
|
|
148
159
|
o.daysOfWeekDisabled = o.daysOfWeekDisabled||[];
|
@@ -151,6 +162,38 @@
|
|
151
162
|
o.daysOfWeekDisabled = $.map(o.daysOfWeekDisabled, function (d) {
|
152
163
|
return parseInt(d, 10);
|
153
164
|
});
|
165
|
+
|
166
|
+
var plc = String(o.orientation).toLowerCase().split(/\s+/g),
|
167
|
+
_plc = o.orientation.toLowerCase();
|
168
|
+
plc = $.grep(plc, function(word){
|
169
|
+
return (/^auto|left|right|top|bottom$/).test(word);
|
170
|
+
});
|
171
|
+
o.orientation = {x: 'auto', y: 'auto'};
|
172
|
+
if (!_plc || _plc === 'auto')
|
173
|
+
; // no action
|
174
|
+
else if (plc.length === 1){
|
175
|
+
switch(plc[0]){
|
176
|
+
case 'top':
|
177
|
+
case 'bottom':
|
178
|
+
o.orientation.y = plc[0];
|
179
|
+
break;
|
180
|
+
case 'left':
|
181
|
+
case 'right':
|
182
|
+
o.orientation.x = plc[0];
|
183
|
+
break;
|
184
|
+
}
|
185
|
+
}
|
186
|
+
else {
|
187
|
+
_plc = $.grep(plc, function(word){
|
188
|
+
return (/^left|right$/).test(word);
|
189
|
+
});
|
190
|
+
o.orientation.x = _plc[0] || 'auto';
|
191
|
+
|
192
|
+
_plc = $.grep(plc, function(word){
|
193
|
+
return (/^top|bottom$/).test(word);
|
194
|
+
});
|
195
|
+
o.orientation.y = _plc[0] || 'auto';
|
196
|
+
}
|
154
197
|
},
|
155
198
|
_events: [],
|
156
199
|
_secondaryEvents: [],
|
@@ -350,14 +393,63 @@
|
|
350
393
|
|
351
394
|
place: function(){
|
352
395
|
if(this.isInline) return;
|
396
|
+
var calendarWidth = this.picker.outerWidth(),
|
397
|
+
calendarHeight = this.picker.outerHeight(),
|
398
|
+
visualPadding = 10,
|
399
|
+
windowWidth = $window.width(),
|
400
|
+
windowHeight = $window.height();
|
401
|
+
|
353
402
|
var zIndex = parseInt(this.element.parents().filter(function() {
|
354
403
|
return $(this).css('z-index') != 'auto';
|
355
404
|
}).first().css('z-index'))+10;
|
356
405
|
var offset = this.component ? this.component.parent().offset() : this.element.offset();
|
357
406
|
var height = this.component ? this.component.outerHeight(true) : this.element.outerHeight(true);
|
407
|
+
var width = this.component ? this.component.outerWidth(true) : this.element.outerWidth(true);
|
408
|
+
var left = offset.left,
|
409
|
+
top = offset.top;
|
410
|
+
|
411
|
+
this.picker.removeClass(
|
412
|
+
'datepicker-orient-top datepicker-orient-bottom '+
|
413
|
+
'datepicker-orient-right datepicker-orient-left'
|
414
|
+
);
|
415
|
+
|
416
|
+
if (this.o.orientation.x !== 'auto') {
|
417
|
+
this.picker.addClass('datepicker-orient-' + this.o.orientation.x);
|
418
|
+
if (this.o.orientation.x === 'right')
|
419
|
+
left -= calendarWidth - width;
|
420
|
+
}
|
421
|
+
// auto x orientation is best-placement: if it crosses a window
|
422
|
+
// edge, fudge it sideways
|
423
|
+
else {
|
424
|
+
// Default to left
|
425
|
+
this.picker.addClass('datepicker-orient-left');
|
426
|
+
if (offset.left < 0)
|
427
|
+
left -= offset.left - visualPadding;
|
428
|
+
else if (offset.left + calendarWidth > windowWidth)
|
429
|
+
left = windowWidth - calendarWidth - visualPadding;
|
430
|
+
}
|
431
|
+
|
432
|
+
// auto y orientation is best-situation: top or bottom, no fudging,
|
433
|
+
// decision based on which shows more of the calendar
|
434
|
+
var yorient = this.o.orientation.y,
|
435
|
+
top_overflow, bottom_overflow;
|
436
|
+
if (yorient === 'auto') {
|
437
|
+
top_overflow = 0 + offset.top - calendarHeight;
|
438
|
+
bottom_overflow = windowHeight - (offset.top + height + calendarHeight);
|
439
|
+
if (Math.max(top_overflow, bottom_overflow) === bottom_overflow)
|
440
|
+
yorient = 'top';
|
441
|
+
else
|
442
|
+
yorient = 'bottom';
|
443
|
+
}
|
444
|
+
this.picker.addClass('datepicker-orient-' + yorient);
|
445
|
+
if (yorient === 'top')
|
446
|
+
top += height;
|
447
|
+
else
|
448
|
+
top -= calendarHeight + parseInt(this.picker.css('padding'));
|
449
|
+
|
358
450
|
this.picker.css({
|
359
|
-
top:
|
360
|
-
left:
|
451
|
+
top: top,
|
452
|
+
left: left,
|
361
453
|
zIndex: zIndex
|
362
454
|
});
|
363
455
|
},
|
@@ -616,10 +708,13 @@
|
|
616
708
|
switch(this.viewMode){
|
617
709
|
case 0:
|
618
710
|
this.viewDate = this.moveMonth(this.viewDate, dir);
|
711
|
+
this._trigger('changeMonth', this.viewDate);
|
619
712
|
break;
|
620
713
|
case 1:
|
621
714
|
case 2:
|
622
715
|
this.viewDate = this.moveYear(this.viewDate, dir);
|
716
|
+
if (this.viewMode === 1)
|
717
|
+
this._trigger('changeYear', this.viewDate);
|
623
718
|
break;
|
624
719
|
}
|
625
720
|
this.fill();
|
@@ -716,9 +811,9 @@
|
|
716
811
|
}
|
717
812
|
if (element) {
|
718
813
|
element.change();
|
719
|
-
|
720
|
-
|
721
|
-
|
814
|
+
}
|
815
|
+
if (this.o.autoclose && (!which || which == 'date')) {
|
816
|
+
this.hide();
|
722
817
|
}
|
723
818
|
},
|
724
819
|
|
@@ -791,9 +886,11 @@
|
|
791
886
|
if (e.ctrlKey){
|
792
887
|
newDate = this.moveYear(this.date, dir);
|
793
888
|
newViewDate = this.moveYear(this.viewDate, dir);
|
889
|
+
this._trigger('changeYear', this.viewDate);
|
794
890
|
} else if (e.shiftKey){
|
795
891
|
newDate = this.moveMonth(this.date, dir);
|
796
892
|
newViewDate = this.moveMonth(this.viewDate, dir);
|
893
|
+
this._trigger('changeMonth', this.viewDate);
|
797
894
|
} else {
|
798
895
|
newDate = new Date(this.date);
|
799
896
|
newDate.setUTCDate(this.date.getUTCDate() + dir);
|
@@ -816,9 +913,11 @@
|
|
816
913
|
if (e.ctrlKey){
|
817
914
|
newDate = this.moveYear(this.date, dir);
|
818
915
|
newViewDate = this.moveYear(this.viewDate, dir);
|
916
|
+
this._trigger('changeYear', this.viewDate);
|
819
917
|
} else if (e.shiftKey){
|
820
918
|
newDate = this.moveMonth(this.date, dir);
|
821
919
|
newViewDate = this.moveMonth(this.viewDate, dir);
|
920
|
+
this._trigger('changeMonth', this.viewDate);
|
822
921
|
} else {
|
823
922
|
newDate = new Date(this.date);
|
824
923
|
newDate.setUTCDate(this.date.getUTCDate() + dir * 7);
|
@@ -1008,6 +1107,7 @@
|
|
1008
1107
|
keyboardNavigation: true,
|
1009
1108
|
language: 'en',
|
1010
1109
|
minViewMode: 0,
|
1110
|
+
orientation: "auto",
|
1011
1111
|
rtl: false,
|
1012
1112
|
startDate: -Infinity,
|
1013
1113
|
startView: 0,
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/**
|
2
|
+
* Georgian translation for bootstrap-datepicker
|
3
|
+
* Levan Melikishvili <levani0101@yahoo.com>
|
4
|
+
*/
|
5
|
+
;(function($){
|
6
|
+
$.fn.datepicker.dates['ka'] = {
|
7
|
+
days: ["კვირა", "ორშაბათი", "სამშაბათი", "ოთხშაბათი", "ხუთშაბათი", "პარასკევი", "შაბათი", "კვირა"],
|
8
|
+
daysShort: ["კვი", "ორშ", "სამ", "ოთხ", "ხუთ", "პარ", "შაბ", "კვი"],
|
9
|
+
daysMin: ["კვ", "ორ", "სა", "ოთ", "ხუ", "პა", "შა", "კვ"],
|
10
|
+
months: ["იანვარი", "თებერვალი", "მარტი", "აპრილი", "მაისი", "ივნისი", "ივლისი", "აგვისტო", "სექტემბერი", "ოქტომები", "ნოემბერი", "დეკემბერი"],
|
11
|
+
monthsShort: ["იან", "თებ", "მარ", "აპრ", "მაი", "ივნ", "ივლ", "აგვ", "სექ", "ოქტ", "ნოე", "დეკ"],
|
12
|
+
today: "დღეს",
|
13
|
+
clear: "გასუფთავება"
|
14
|
+
};
|
15
|
+
}(jQuery));
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/**
|
2
|
+
* Norwegian translation for bootstrap-datepicker
|
3
|
+
**/
|
4
|
+
;(function($){
|
5
|
+
$.fn.datepicker.dates['no'] = {
|
6
|
+
days: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
|
7
|
+
daysShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
|
8
|
+
daysMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
|
9
|
+
months: ['Januar','Februar','Mars','April','Mai','Juni','Juli','August','September','Oktober','November','Desember'],
|
10
|
+
monthsShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Des'],
|
11
|
+
today: 'I dag',
|
12
|
+
clear: 'Nullstill',
|
13
|
+
weekStart: 0
|
14
|
+
};
|
15
|
+
}(jQuery));
|
@@ -37,10 +37,9 @@
|
|
37
37
|
border-left: 7px solid transparent;
|
38
38
|
border-right: 7px solid transparent;
|
39
39
|
border-bottom: 7px solid #ccc;
|
40
|
+
border-top: 0;
|
40
41
|
border-bottom-color: rgba(0, 0, 0, 0.2);
|
41
42
|
position: absolute;
|
42
|
-
top: -7px;
|
43
|
-
left: 6px;
|
44
43
|
}
|
45
44
|
.datepicker-dropdown:after {
|
46
45
|
content: '';
|
@@ -48,10 +47,37 @@
|
|
48
47
|
border-left: 6px solid transparent;
|
49
48
|
border-right: 6px solid transparent;
|
50
49
|
border-bottom: 6px solid #ffffff;
|
50
|
+
border-top: 0;
|
51
51
|
position: absolute;
|
52
|
-
|
52
|
+
}
|
53
|
+
.datepicker-dropdown.datepicker-orient-left:before {
|
54
|
+
left: 6px;
|
55
|
+
}
|
56
|
+
.datepicker-dropdown.datepicker-orient-left:after {
|
53
57
|
left: 7px;
|
54
58
|
}
|
59
|
+
.datepicker-dropdown.datepicker-orient-right:before {
|
60
|
+
right: 6px;
|
61
|
+
}
|
62
|
+
.datepicker-dropdown.datepicker-orient-right:after {
|
63
|
+
right: 7px;
|
64
|
+
}
|
65
|
+
.datepicker-dropdown.datepicker-orient-top:before {
|
66
|
+
top: -7px;
|
67
|
+
}
|
68
|
+
.datepicker-dropdown.datepicker-orient-top:after {
|
69
|
+
top: -6px;
|
70
|
+
}
|
71
|
+
.datepicker-dropdown.datepicker-orient-bottom:before {
|
72
|
+
bottom: -7px;
|
73
|
+
border-bottom: 0;
|
74
|
+
border-top: 7px solid #999;
|
75
|
+
}
|
76
|
+
.datepicker-dropdown.datepicker-orient-bottom:after {
|
77
|
+
bottom: -6px;
|
78
|
+
border-bottom: 0;
|
79
|
+
border-top: 6px solid #ffffff;
|
80
|
+
}
|
55
81
|
.datepicker > div {
|
56
82
|
display: none;
|
57
83
|
}
|
@@ -66,6 +92,12 @@
|
|
66
92
|
}
|
67
93
|
.datepicker table {
|
68
94
|
margin: 0;
|
95
|
+
-webkit-touch-callout: none;
|
96
|
+
-webkit-user-select: none;
|
97
|
+
-khtml-user-select: none;
|
98
|
+
-moz-user-select: none;
|
99
|
+
-ms-user-select: none;
|
100
|
+
user-select: none;
|
69
101
|
}
|
70
102
|
.datepicker td,
|
71
103
|
.datepicker th {
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bootstrap-datepicker-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.1.
|
4
|
+
version: 1.1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gonzalo Rodríguez-Baltanás Díaz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -173,6 +173,7 @@ files:
|
|
173
173
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.is.js
|
174
174
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.it.js
|
175
175
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.ja.js
|
176
|
+
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.ka.js
|
176
177
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.kr.js
|
177
178
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.lt.js
|
178
179
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.lv.js
|
@@ -180,6 +181,7 @@ files:
|
|
180
181
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.ms.js
|
181
182
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.nb.js
|
182
183
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.nl.js
|
184
|
+
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.no.js
|
183
185
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.pl.js
|
184
186
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.pt-BR.js
|
185
187
|
- vendor/assets/javascripts/bootstrap-datepicker/locales/bootstrap-datepicker.pt.js
|