date_time_picker 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +50 -0
- data/lib/date_time_picker/date_time_picker_helpers.rb +78 -0
- data/lib/date_time_picker.rb +6 -3
- data/test/.gitignore +2 -0
- data/test/Rakefile +7 -0
- data/test/app/assets/stylesheets/jquery-ui.css +418 -0
- data/test/app/controllers/application_controller.rb +5 -0
- data/test/app/views/application/1.html.erb +1 -0
- data/test/app/views/layouts/application.html.erb +12 -0
- data/test/config/application.rb +12 -0
- data/test/config/boot.rb +3 -0
- data/test/config/date_time_picker.yml +1 -0
- data/test/config/environment.rb +5 -0
- data/test/config/environments/test.rb +7 -0
- data/test/config/routes.rb +3 -0
- data/test/config.ru +4 -0
- data/test/script/rails +6 -0
- data/test/spec/application_spec.rb +13 -0
- data/test/spec/spec_helper.rb +5 -0
- data/vendor/assets/i18n/date_time_picker_ca.js +43 -0
- data/vendor/assets/i18n/date_time_picker_cs.js +43 -0
- data/vendor/assets/i18n/date_time_picker_de.js +43 -0
- data/vendor/assets/i18n/date_time_picker_el.js +42 -0
- data/vendor/assets/i18n/date_time_picker_es.js +42 -0
- data/vendor/assets/i18n/date_time_picker_et.js +42 -0
- data/vendor/assets/i18n/date_time_picker_fi.js +43 -0
- data/vendor/assets/i18n/date_time_picker_fr.js +45 -0
- data/vendor/assets/i18n/date_time_picker_gl.js +42 -0
- data/vendor/assets/i18n/date_time_picker_he.js +43 -0
- data/vendor/assets/i18n/date_time_picker_hu.js +43 -0
- data/vendor/assets/i18n/date_time_picker_id.js +42 -0
- data/vendor/assets/i18n/date_time_picker_it.js +43 -0
- data/vendor/assets/i18n/date_time_picker_ja.js +42 -0
- data/vendor/assets/i18n/date_time_picker_ko.js +42 -0
- data/vendor/assets/i18n/date_time_picker_lt.js +42 -0
- data/vendor/assets/i18n/date_time_picker_nl.js +42 -0
- data/vendor/assets/i18n/date_time_picker_no.js +43 -0
- data/vendor/assets/i18n/date_time_picker_pl.js +43 -0
- data/vendor/assets/i18n/date_time_picker_pt-BR.js +42 -0
- data/vendor/assets/i18n/date_time_picker_pt.js +41 -0
- data/vendor/assets/i18n/date_time_picker_ro.js +46 -0
- data/vendor/assets/i18n/date_time_picker_ru.js +42 -0
- data/vendor/assets/i18n/date_time_picker_sk.js +43 -0
- data/vendor/assets/i18n/date_time_picker_sv.js +43 -0
- data/vendor/assets/i18n/date_time_picker_tr.js +42 -0
- data/vendor/assets/i18n/date_time_picker_vi.js +43 -0
- data/vendor/assets/i18n/date_time_picker_zh-CN.js +43 -0
- data/vendor/assets/i18n/date_time_picker_zh-TW.js +43 -0
- data/vendor/assets/javascripts/date_time_picker.js +19 -0
- data/vendor/assets/javascripts/date_time_picker_all.js +1 -0
- data/vendor/assets/javascripts/jquery-ui-sliderAccess.js +85 -0
- data/vendor/assets/stylesheets/date_time_picker.css +1 -0
- data/vendor/assets/timepicker/jquery-ui-timepicker-addon.css +6 -0
- data/vendor/assets/timepicker/jquery-ui-timepicker-addon.js +1326 -0
- metadata +112 -23
- data/README +0 -0
- data/changelog +0 -18
- data/date_time_picker.gemspec +0 -36
- data/knownbugs +0 -18
- data/lib/date_time_picker/date_time_picker_helper.rb +0 -2
- data/roadmap +0 -17
- data/spec/lib/date_time_picker_spec.rb +0 -8
- data/spec/spec.opts +0 -2
- data/spec/spec_helper.rb +0 -26
- data/tasks/date_time_picker_tasks.rake +0 -4
@@ -0,0 +1,19 @@
|
|
1
|
+
//= require jquery-ui-timepicker-addon
|
2
|
+
//= require jquery-ui-sliderAccess
|
3
|
+
|
4
|
+
$(function() {
|
5
|
+
var fns = ["datetimepicker", "datepicker", "timepicker"];
|
6
|
+
for (i=0; i<fns.length; i++) {
|
7
|
+
var fn = fns[i];
|
8
|
+
$("." + fn).each(function() {
|
9
|
+
var picker = $(this);
|
10
|
+
var options = $.parseJSON(picker.attr("data-options"));
|
11
|
+
var locale = picker.attr("data-locale");
|
12
|
+
if (locale != "en") {
|
13
|
+
$.datepicker.setDefaults($.datepicker.regional[locale]);
|
14
|
+
$.timepicker.setDefaults($.timepicker.regional[locale]);
|
15
|
+
}
|
16
|
+
picker[fn](options);
|
17
|
+
});
|
18
|
+
}
|
19
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
//= require_tree ../i18n
|
@@ -0,0 +1,85 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Slider Access
|
3
|
+
* By: Trent Richardson [http://trentrichardson.com]
|
4
|
+
* Version 0.2
|
5
|
+
* Last Modified: 12/02/2011
|
6
|
+
*
|
7
|
+
* Copyright 2011 Trent Richardson
|
8
|
+
* Dual licensed under the MIT and GPL licenses.
|
9
|
+
* http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
|
10
|
+
* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
|
11
|
+
*
|
12
|
+
*/
|
13
|
+
(function($){
|
14
|
+
|
15
|
+
$.fn.extend({
|
16
|
+
sliderAccess: function(options){
|
17
|
+
options = options || {};
|
18
|
+
options.touchonly = options.touchonly !== undefined? options.touchonly : true; // by default only show it if touch device
|
19
|
+
|
20
|
+
if(options.touchonly === true && !("ontouchend" in document))
|
21
|
+
return $(this);
|
22
|
+
|
23
|
+
return $(this).each(function(i,obj){
|
24
|
+
var $t = $(this),
|
25
|
+
o = $.extend({},{
|
26
|
+
where: 'after',
|
27
|
+
step: $t.slider('option','step'),
|
28
|
+
upIcon: 'ui-icon-plus',
|
29
|
+
downIcon: 'ui-icon-minus',
|
30
|
+
text: false,
|
31
|
+
upText: '+',
|
32
|
+
downText: '-',
|
33
|
+
buttonset: true,
|
34
|
+
buttonsetTag: 'span'
|
35
|
+
}, options),
|
36
|
+
$buttons = $('<'+ o.buttonsetTag +' class="ui-slider-access">'+
|
37
|
+
'<button data-icon="'+ o.downIcon +'" data-step="-'+ o.step +'">'+ o.downText +'</button>'+
|
38
|
+
'<button data-icon="'+ o.upIcon +'" data-step="'+ o.step +'">'+ o.upText +'</button>'+
|
39
|
+
'</'+ o.buttonsetTag +'>');
|
40
|
+
|
41
|
+
$buttons.children('button').each(function(j, jobj){
|
42
|
+
var $jt = $(this);
|
43
|
+
$jt.button({
|
44
|
+
text: o.text,
|
45
|
+
icons: { primary: $jt.data('icon') }
|
46
|
+
})
|
47
|
+
.click(function(e){
|
48
|
+
var step = $jt.data('step'),
|
49
|
+
curr = $t.slider('value'),
|
50
|
+
newval = curr += step*1,
|
51
|
+
minval = $t.slider('option','min'),
|
52
|
+
maxval = $t.slider('option','max');
|
53
|
+
|
54
|
+
e.preventDefault();
|
55
|
+
|
56
|
+
if(newval < minval || newval > maxval)
|
57
|
+
return;
|
58
|
+
|
59
|
+
$t.slider('value', newval);
|
60
|
+
|
61
|
+
$t.slider("option", "slide").call($t, null, { value: newval });
|
62
|
+
});
|
63
|
+
});
|
64
|
+
|
65
|
+
// before or after
|
66
|
+
$t[o.where]($buttons);
|
67
|
+
|
68
|
+
if(o.buttonset){
|
69
|
+
$buttons.removeClass('ui-corner-right').removeClass('ui-corner-left').buttonset();
|
70
|
+
$buttons.eq(0).addClass('ui-corner-left');
|
71
|
+
$buttons.eq(1).addClass('ui-corner-right');
|
72
|
+
}
|
73
|
+
|
74
|
+
// adjust the width so we don't break the original layout
|
75
|
+
var bOuterWidth = $buttons.css({
|
76
|
+
marginLeft: (o.where == 'after'? 10:0),
|
77
|
+
marginRight: (o.where == 'before'? 10:0)
|
78
|
+
}).outerWidth(true) + 5;
|
79
|
+
var tOuterWidth = $t.outerWidth(true);
|
80
|
+
$t.css('display','inline-block').width(tOuterWidth-bOuterWidth);
|
81
|
+
});
|
82
|
+
}
|
83
|
+
});
|
84
|
+
|
85
|
+
})(jQuery);
|
@@ -0,0 +1 @@
|
|
1
|
+
//= require jquery-ui-timepicker-addon
|
@@ -0,0 +1,6 @@
|
|
1
|
+
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
|
2
|
+
.ui-timepicker-div dl { text-align: left; }
|
3
|
+
.ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
|
4
|
+
.ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
|
5
|
+
.ui-timepicker-div td { font-size: 90%; }
|
6
|
+
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
|