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.
Files changed (65) hide show
  1. data/README.rdoc +50 -0
  2. data/lib/date_time_picker/date_time_picker_helpers.rb +78 -0
  3. data/lib/date_time_picker.rb +6 -3
  4. data/test/.gitignore +2 -0
  5. data/test/Rakefile +7 -0
  6. data/test/app/assets/stylesheets/jquery-ui.css +418 -0
  7. data/test/app/controllers/application_controller.rb +5 -0
  8. data/test/app/views/application/1.html.erb +1 -0
  9. data/test/app/views/layouts/application.html.erb +12 -0
  10. data/test/config/application.rb +12 -0
  11. data/test/config/boot.rb +3 -0
  12. data/test/config/date_time_picker.yml +1 -0
  13. data/test/config/environment.rb +5 -0
  14. data/test/config/environments/test.rb +7 -0
  15. data/test/config/routes.rb +3 -0
  16. data/test/config.ru +4 -0
  17. data/test/script/rails +6 -0
  18. data/test/spec/application_spec.rb +13 -0
  19. data/test/spec/spec_helper.rb +5 -0
  20. data/vendor/assets/i18n/date_time_picker_ca.js +43 -0
  21. data/vendor/assets/i18n/date_time_picker_cs.js +43 -0
  22. data/vendor/assets/i18n/date_time_picker_de.js +43 -0
  23. data/vendor/assets/i18n/date_time_picker_el.js +42 -0
  24. data/vendor/assets/i18n/date_time_picker_es.js +42 -0
  25. data/vendor/assets/i18n/date_time_picker_et.js +42 -0
  26. data/vendor/assets/i18n/date_time_picker_fi.js +43 -0
  27. data/vendor/assets/i18n/date_time_picker_fr.js +45 -0
  28. data/vendor/assets/i18n/date_time_picker_gl.js +42 -0
  29. data/vendor/assets/i18n/date_time_picker_he.js +43 -0
  30. data/vendor/assets/i18n/date_time_picker_hu.js +43 -0
  31. data/vendor/assets/i18n/date_time_picker_id.js +42 -0
  32. data/vendor/assets/i18n/date_time_picker_it.js +43 -0
  33. data/vendor/assets/i18n/date_time_picker_ja.js +42 -0
  34. data/vendor/assets/i18n/date_time_picker_ko.js +42 -0
  35. data/vendor/assets/i18n/date_time_picker_lt.js +42 -0
  36. data/vendor/assets/i18n/date_time_picker_nl.js +42 -0
  37. data/vendor/assets/i18n/date_time_picker_no.js +43 -0
  38. data/vendor/assets/i18n/date_time_picker_pl.js +43 -0
  39. data/vendor/assets/i18n/date_time_picker_pt-BR.js +42 -0
  40. data/vendor/assets/i18n/date_time_picker_pt.js +41 -0
  41. data/vendor/assets/i18n/date_time_picker_ro.js +46 -0
  42. data/vendor/assets/i18n/date_time_picker_ru.js +42 -0
  43. data/vendor/assets/i18n/date_time_picker_sk.js +43 -0
  44. data/vendor/assets/i18n/date_time_picker_sv.js +43 -0
  45. data/vendor/assets/i18n/date_time_picker_tr.js +42 -0
  46. data/vendor/assets/i18n/date_time_picker_vi.js +43 -0
  47. data/vendor/assets/i18n/date_time_picker_zh-CN.js +43 -0
  48. data/vendor/assets/i18n/date_time_picker_zh-TW.js +43 -0
  49. data/vendor/assets/javascripts/date_time_picker.js +19 -0
  50. data/vendor/assets/javascripts/date_time_picker_all.js +1 -0
  51. data/vendor/assets/javascripts/jquery-ui-sliderAccess.js +85 -0
  52. data/vendor/assets/stylesheets/date_time_picker.css +1 -0
  53. data/vendor/assets/timepicker/jquery-ui-timepicker-addon.css +6 -0
  54. data/vendor/assets/timepicker/jquery-ui-timepicker-addon.js +1326 -0
  55. metadata +112 -23
  56. data/README +0 -0
  57. data/changelog +0 -18
  58. data/date_time_picker.gemspec +0 -36
  59. data/knownbugs +0 -18
  60. data/lib/date_time_picker/date_time_picker_helper.rb +0 -2
  61. data/roadmap +0 -17
  62. data/spec/lib/date_time_picker_spec.rb +0 -8
  63. data/spec/spec.opts +0 -2
  64. data/spec/spec_helper.rb +0 -26
  65. 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; }