hobo_bootstrap_ui 2.0.0.pre7 → 2.0.0.pre8
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.
- data/README.md +4 -18
- data/VERSION +1 -1
- data/hobo_bootstrap_ui.gemspec +1 -0
- data/lib/hobo_bootstrap_ui.rb +6 -0
- data/taglibs/bootstrap_datepicker.dryml +58 -0
- data/taglibs/overrides.dryml +10 -0
- data/vendor/assets/javascripts/hobo-bootstrap-ui/bootstrap-datepicker.js +3 -0
- data/vendor/assets/javascripts/hobo_bootstrap_ui.js +1 -1
- data/vendor/assets/stylesheets/hobo_bootstrap_ui.css +3 -2
- metadata +21 -2
data/README.md
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
Additional UI tags for the [hobo_bootstrap theme](https://github.com/Hobo/hobo_bootstrap). Some of these tags are wrappers for the [bootstrap javascript components](twitter.github.com/bootstrap/javascript.html). Others are useful tags that are built on top of those javascript components.
|
2
|
-
|
3
|
-
This plugin also includes an implementation of `<search-results-container>`, replacing the one in `hobo_jquery_ui`.
|
1
|
+
Additional UI tags for the [hobo_bootstrap theme](https://github.com/Hobo/hobo_bootstrap). Some of these tags are wrappers for the [bootstrap javascript components](twitter.github.com/bootstrap/javascript.html). Others are useful tags that are built on top of those javascript components. It pulls in the [bootstrap-datepicker-rails gem](https://github.com/Nerian/bootstrap-datepicker-rails), and can augment or replace the [hobo_jquery_ui](/plugins/hobo_jquery_ui) theme.
|
4
2
|
|
5
3
|
## Installation
|
6
4
|
|
@@ -12,22 +10,10 @@ This plugin also includes an implementation of `<search-results-container>`, rep
|
|
12
10
|
|
13
11
|
## Versus hobo_jquery_ui
|
14
12
|
|
15
|
-
|
16
|
-
|
17
|
-
At the moment, you can use hobo_bootstrap_ui instead of hobo_jquery_ui if you don't mind the loss of tags such as `<name-one>`.
|
18
|
-
|
19
|
-
hobo_bootstrap_ui and hobo_jquery_ui may both be used in the same Hobo application. In the case of a conflict, the plugin loaded last will be used. `<search-results-container>` is the only current conflict, although hopefully we get bootstrap replacements for `<name-one>` and `<input for="Date">` soon.
|
20
|
-
|
21
|
-
At the momemt, Hobo requires jQuery-UI even if hobo_jquery_ui is not used. We do plan on removing that dependency soon.
|
22
|
-
|
23
|
-
## TODO
|
24
|
-
|
25
|
-
* replace `show` and `hide` in hjq.js to make jQuery-UI optional
|
26
|
-
|
27
|
-
* implement `name-one` using bootstrap typeahead so that a Hobo application without hobo_jquery_ui is Hobo 1.3 compatible
|
28
|
-
|
29
|
-
* implement replacements for the remainder of hobo_jquery_ui's tags.
|
13
|
+
You can use hobo_bootstrap_ui instead of hobo_jquery_ui if you don't mind the loss of tags such as `<sortable-collection>`.
|
30
14
|
|
15
|
+
Alternatively, hobo_bootstrap_ui and hobo_jquery_ui may both be used in the same Hobo application. In the case of overlap, the plugin loaded last will be used. Both plugins provide implementations of `<search-results-container>`, `<name-one>` and `<input for="Date">`. Both plugins have these tags available with non-shadowed names: `<name-one-bootstrap>` and `<bootstrap-datepicker>` for this gem.
|
31
16
|
|
17
|
+
If you use hobo_bootstrap_ui without hobo_jquery_ui, you can also remove jQuery-UI from your `app/assets/javascripts/application.js` as well as associated stylesheets. If you do this you will lose the ability to position the AJAX spinner and to use hide and show effects during part AJAX.
|
32
18
|
|
33
19
|
[1]: https://github.com/Hobo/hobo_bootstrap_ui/raw/master/screenshots/select_one_or_new.png
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.0.0.
|
1
|
+
2.0.0.pre8
|
data/hobo_bootstrap_ui.gemspec
CHANGED
@@ -12,6 +12,7 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.description = 'Additional UI tags for the hobo_bootstrap theme'
|
13
13
|
|
14
14
|
s.add_runtime_dependency('hobo_bootstrap', "~> 2.0.0.pre1")
|
15
|
+
s.add_runtime_dependency('bootstrap-datepicker-rails')
|
15
16
|
|
16
17
|
s.files = `git ls-files -x #{name}/* -z`.split("\0")
|
17
18
|
|
data/lib/hobo_bootstrap_ui.rb
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
# Sub dependencies written in the gemspec are not loaded by default:
|
2
|
+
# http://stackoverflow.com/questions/6960078
|
3
|
+
# We need to require them here, so we can load the JS from bootstrap
|
4
|
+
|
5
|
+
require 'bootstrap-datepicker-rails'
|
6
|
+
|
1
7
|
module HoboBootstrapUi
|
2
8
|
|
3
9
|
VERSION = File.read(File.expand_path('../../VERSION', __FILE__)).strip
|
@@ -0,0 +1,58 @@
|
|
1
|
+
<!--
|
2
|
+
This is the [Bootstrap Datepicker](https://github.com/Nerian/bootstrap-datepicker-rails).
|
3
|
+
|
4
|
+
You can config some options. For example, to change the date format, language and weekstart you can add this to your front_site.dryml:
|
5
|
+
|
6
|
+
<def tag="input" for="Date">
|
7
|
+
<bootstrap-datepicker dateFormat="dd-mm-yyyy" language="es" weekstart="1" merge />
|
8
|
+
</def>
|
9
|
+
|
10
|
+
If you do not specify the format, it will attempt to convert I18n.t(:"date.formats.default") from strftime format into the format that the Bootstrap Datepicker likes. Take into account that it's not exactly the same as jquery_ui: year "2000" is represented by "yyyy" instead of "yy".
|
11
|
+
|
12
|
+
Another alternative to do the same is "extend. It's useful when you want to use "bootstrap-datepicker" directly in a form:
|
13
|
+
|
14
|
+
<extend tag="bootstrap-datepicker">
|
15
|
+
<old-bootstrap-datepicker dateFormat="dd-mm-yyyy" language="es" weekstart="1" merge/>
|
16
|
+
</extend>
|
17
|
+
|
18
|
+
-->
|
19
|
+
|
20
|
+
<def tag="bootstrap-datepicker" attrs="name, value">
|
21
|
+
<%
|
22
|
+
options, attrs = attributes.partition_hash(['format', 'weekstart', 'language', 'autoclose'])
|
23
|
+
|
24
|
+
options["autoclose"] ||= "true"
|
25
|
+
options["format"] ||= begin
|
26
|
+
d=I18n.t(:"date.formats.default")
|
27
|
+
{"%Y" => "yyyy",
|
28
|
+
"%y" => "yy",
|
29
|
+
"%m" => "mm",
|
30
|
+
"%_m" => "m",
|
31
|
+
"%-m" => "m",
|
32
|
+
"%B" => "MM",
|
33
|
+
"%^B" => "MM",
|
34
|
+
"%b" => "M",
|
35
|
+
"%^b" => "M",
|
36
|
+
"%h" => "M",
|
37
|
+
"%d" => "dd",
|
38
|
+
"%-d" => "d",
|
39
|
+
"%j" => "oo",
|
40
|
+
"%D" => "mm/dd/yy",
|
41
|
+
"%F" => "yy-mm-dd",
|
42
|
+
"%x" => "mm/dd/yy"}.each {|rb, js| d.gsub!(rb,js)}
|
43
|
+
d
|
44
|
+
end
|
45
|
+
|
46
|
+
if this && value.nil? && this.class == Date
|
47
|
+
value = I18n.l(this)
|
48
|
+
end
|
49
|
+
|
50
|
+
%>
|
51
|
+
<input name="#{name}" value="&value" type="text" class="bootstrap-datepicker"
|
52
|
+
data-date-format="#{options['format']}"
|
53
|
+
data-date-weekstart="#{options['weekstart']}"
|
54
|
+
data-date-autoclose="#{options['autoclose']}"
|
55
|
+
data-date-language="#{options['language']}"
|
56
|
+
merge-attrs
|
57
|
+
/>
|
58
|
+
</def>
|
data/taglibs/overrides.dryml
CHANGED
@@ -9,3 +9,13 @@
|
|
9
9
|
<def tag="name-one">
|
10
10
|
<name-one-bootstrap merge/>
|
11
11
|
</def>
|
12
|
+
|
13
|
+
<!-- use bootstrap-datepicker for date inputs. To switch back to vanilla Rails (`<datepicker-rails>`) add to your application.dryml:
|
14
|
+
|
15
|
+
<def tag="input" for="Date">
|
16
|
+
<datepicker-rails merge/>
|
17
|
+
</def>
|
18
|
+
-->
|
19
|
+
<def tag="input" for="Date">
|
20
|
+
<bootstrap-datepicker merge />
|
21
|
+
</def>
|
@@ -1,2 +1,2 @@
|
|
1
1
|
//= require_tree .
|
2
|
-
|
2
|
+
//= require bootstrap-datepicker
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hobo_bootstrap_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.pre8
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-02-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: hobo_bootstrap
|
@@ -27,6 +27,22 @@ dependencies:
|
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 2.0.0.pre1
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: bootstrap-datepicker-rails
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
30
46
|
description: Additional UI tags for the hobo_bootstrap theme
|
31
47
|
email: ignacio@ihuerta.net
|
32
48
|
executables: []
|
@@ -39,12 +55,14 @@ files:
|
|
39
55
|
- lib/hobo_bootstrap_ui.rb
|
40
56
|
- lib/hobo_bootstrap_ui/railtie.rb
|
41
57
|
- screenshots/select_one_or_new.png
|
58
|
+
- taglibs/bootstrap_datepicker.dryml
|
42
59
|
- taglibs/hobo_bootstrap_ui.dryml
|
43
60
|
- taglibs/modal.dryml
|
44
61
|
- taglibs/name_one_bootstrap.dryml
|
45
62
|
- taglibs/overrides.dryml
|
46
63
|
- taglibs/select_one_or_new.dryml
|
47
64
|
- taglibs/typeahead.dryml
|
65
|
+
- vendor/assets/javascripts/hobo-bootstrap-ui/bootstrap-datepicker.js
|
48
66
|
- vendor/assets/javascripts/hobo-bootstrap-ui/hjq-modal.js
|
49
67
|
- vendor/assets/javascripts/hobo-bootstrap-ui/hjq-typeahead.js
|
50
68
|
- vendor/assets/javascripts/hobo_bootstrap_ui.js
|
@@ -76,3 +94,4 @@ signing_key:
|
|
76
94
|
specification_version: 3
|
77
95
|
summary: Additional UI tags for the hobo_bootstrap theme
|
78
96
|
test_files: []
|
97
|
+
has_rdoc:
|