rails-theme-helper 0.0.2 → 0.0.3
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/app/helpers/rails_theme/bootstrap/button_helper.rb +15 -0
- data/app/helpers/rails_theme/bootstrap/dropdown_helper.rb +29 -0
- data/app/helpers/rails_theme/bootstrap/form_helper.rb +13 -0
- data/app/helpers/rails_theme/bootstrap/link_helper.rb +54 -0
- data/app/helpers/rails_theme/bootstrap/modal_helper.rb +62 -0
- data/app/helpers/rails_theme/bootstrap/tab_helper.rb +57 -0
- data/lib/rails-theme-helper/version.rb +1 -1
- data/lib/rails_theme.rb +0 -7
- data/lib/rails_theme/engine.rb +7 -0
- metadata +10 -5
- data/app/helpers/rails_theme/bootstrap_helper.rb +0 -86
@@ -0,0 +1,15 @@
|
|
1
|
+
module RailsTheme
|
2
|
+
module Bootstrap
|
3
|
+
module ButtonHelper
|
4
|
+
def render_btn_group tag = :div, options = {}
|
5
|
+
buttons = []
|
6
|
+
yield buttons if block_given?
|
7
|
+
text = buttons.join('').html_safe
|
8
|
+
options = {
|
9
|
+
class: 'btn-group'
|
10
|
+
}.deep_merge options
|
11
|
+
content_tag tag, text, options
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module RailsTheme
|
2
|
+
module Bootstrap
|
3
|
+
module DropdownHelper
|
4
|
+
def dropdown_toggle text, url = '#', options = {}
|
5
|
+
text = text.html_safe << ' '
|
6
|
+
text << content_tag(:span, nil, class: 'caret')
|
7
|
+
options = {
|
8
|
+
class: 'dropdown-toggle',
|
9
|
+
data: { toggle: 'dropdown' }
|
10
|
+
}.deep_merge options
|
11
|
+
link_to text, url, options
|
12
|
+
end
|
13
|
+
|
14
|
+
def dropdown_btn text, url = '#', options = {}
|
15
|
+
options = {
|
16
|
+
class: 'btn dropdown-toggle'
|
17
|
+
}.deep_merge options
|
18
|
+
dropdown_toggle text, url, options
|
19
|
+
end
|
20
|
+
|
21
|
+
def dropdown_menu options = {}, &block
|
22
|
+
options = {
|
23
|
+
class: 'dropdown-menu'
|
24
|
+
}.deep_merge options
|
25
|
+
render_list options, &block
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
module RailsTheme
|
2
|
+
module Bootstrap
|
3
|
+
module LinkHelper
|
4
|
+
def iconed_link_to text, url, options = {}
|
5
|
+
icon_class = options.delete(:icon_class)
|
6
|
+
text = content_tag(:i, nil, class: icon_class) << ' ' << text
|
7
|
+
link_to text, url, options
|
8
|
+
end
|
9
|
+
|
10
|
+
def link_to_show url, options = {}
|
11
|
+
icon_class = options.delete(:icon_class) || 'icon-eye-open'
|
12
|
+
options = {
|
13
|
+
class: 'btn',
|
14
|
+
icon_class: icon_class,
|
15
|
+
title: t('helpers.show')
|
16
|
+
}.deep_merge options
|
17
|
+
default_options = { }
|
18
|
+
iconed_link_to nil, url, options
|
19
|
+
end
|
20
|
+
|
21
|
+
def link_to_new url, options = {}
|
22
|
+
icon_class = options.delete(:icon_class) || 'icon-plus'
|
23
|
+
options = {
|
24
|
+
class: 'btn',
|
25
|
+
icon_class: icon_class,
|
26
|
+
title: t('helpers.new')
|
27
|
+
}.deep_merge options
|
28
|
+
iconed_link_to nil, url, options
|
29
|
+
end
|
30
|
+
|
31
|
+
def link_to_edit url, options = {}
|
32
|
+
icon_class = options.delete(:icon_class) || 'icon-edit'
|
33
|
+
options = {
|
34
|
+
class: 'btn',
|
35
|
+
icon_class: icon_class,
|
36
|
+
title: t('helpers.edit')
|
37
|
+
}.deep_merge options
|
38
|
+
iconed_link_to nil, url, options
|
39
|
+
end
|
40
|
+
|
41
|
+
def link_to_destroy url, options = {}
|
42
|
+
icon_class = options.delete(:icon_class) || 'icon-trash'
|
43
|
+
options = {
|
44
|
+
method: :delete,
|
45
|
+
data: { confirm: t('helpers.are_you_sure') },
|
46
|
+
class: 'btn',
|
47
|
+
icon_class: icon_class,
|
48
|
+
title: t('helpers.destroy')
|
49
|
+
}.deep_merge options
|
50
|
+
iconed_link_to nil, url, options
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
module RailsTheme
|
2
|
+
module Bootstrap
|
3
|
+
module ModalHelper
|
4
|
+
def link_to_modal text, url, modal_id, options = {}
|
5
|
+
options = {
|
6
|
+
remote: true,
|
7
|
+
data: {
|
8
|
+
toggle: 'modal',
|
9
|
+
target: modal_id,
|
10
|
+
type: 'html'
|
11
|
+
},
|
12
|
+
class: 'modal-open'
|
13
|
+
}.deep_merge options
|
14
|
+
link_to text, url, options
|
15
|
+
end
|
16
|
+
|
17
|
+
def link_to_open_modal text, url, modal_id, options = {}
|
18
|
+
options = {
|
19
|
+
remote: true,
|
20
|
+
data: {
|
21
|
+
toggle: 'modal',
|
22
|
+
target: modal_id,
|
23
|
+
type: 'html'
|
24
|
+
},
|
25
|
+
class: 'modal-open'
|
26
|
+
}.deep_merge options
|
27
|
+
iconed_link_to text, url, options
|
28
|
+
end
|
29
|
+
|
30
|
+
def link_to_edit_modal url, modal_id, options = {}
|
31
|
+
options = {
|
32
|
+
remote: true,
|
33
|
+
data: {
|
34
|
+
toggle: 'modal',
|
35
|
+
target: modal_id,
|
36
|
+
type: 'html'
|
37
|
+
},
|
38
|
+
class: 'modal-open btn'
|
39
|
+
}.deep_merge options
|
40
|
+
link_to_edit url, options
|
41
|
+
end
|
42
|
+
|
43
|
+
def link_to_close_button
|
44
|
+
options = {
|
45
|
+
data: { dismiss: 'modal' },
|
46
|
+
class: 'btn'
|
47
|
+
}
|
48
|
+
link_to t('helpers.close'), '#', options
|
49
|
+
end
|
50
|
+
|
51
|
+
def modal_close_button
|
52
|
+
options = {
|
53
|
+
type: 'button',
|
54
|
+
name: nil,
|
55
|
+
data: { dismiss: 'modal' },
|
56
|
+
class: 'close'
|
57
|
+
}
|
58
|
+
button_tag 'x', options
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
module RailsTheme
|
2
|
+
module Bootstrap
|
3
|
+
module TabHelper
|
4
|
+
def link_to_tab text, tab_pane_id, options = {}
|
5
|
+
options = {
|
6
|
+
data: {
|
7
|
+
toggle: 'tab',
|
8
|
+
target: tab_pane_id
|
9
|
+
}
|
10
|
+
}.deep_merge options
|
11
|
+
link_to text, tab_pane_id, options
|
12
|
+
end
|
13
|
+
|
14
|
+
def link_to_remote_tab text, url, tab_pane_id, options = {}
|
15
|
+
options = {
|
16
|
+
remote: true,
|
17
|
+
data: {
|
18
|
+
toggle: 'tab',
|
19
|
+
target: tab_pane_id,
|
20
|
+
type: 'html'
|
21
|
+
}
|
22
|
+
}.deep_merge options
|
23
|
+
link_to text, url, options
|
24
|
+
end
|
25
|
+
|
26
|
+
def nav_tab text, tag_id, default
|
27
|
+
active = tag_id == default
|
28
|
+
li_class = 'active' if active
|
29
|
+
[ link_to_tab(text, "##{tag_id}"), { class: li_class } ]
|
30
|
+
end
|
31
|
+
|
32
|
+
def tab_pane tag_id, default
|
33
|
+
active = tag_id == default
|
34
|
+
tab_class = 'tab-pane fade'
|
35
|
+
tab_class << ' active in' if active
|
36
|
+
content_tag :div, class: tab_class, id: tag_id do
|
37
|
+
yield
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def remote_nav_tab text, url, tag_id, default
|
42
|
+
active = current_page?(url) || tag_id == default
|
43
|
+
li_class = 'active' if active
|
44
|
+
[ link_to_remote_tab(text, url, "##{tag_id}"), { class: li_class } ]
|
45
|
+
end
|
46
|
+
|
47
|
+
def remote_tab_pane url, tag_id, default, partial, locals
|
48
|
+
active = current_page?(url) || tag_id == default
|
49
|
+
tab_class = 'tab-pane fade'
|
50
|
+
tab_class << ' active in' if active
|
51
|
+
content_tag :div, class: tab_class, id: tag_id do
|
52
|
+
render partial, locals if active
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
data/lib/rails_theme.rb
CHANGED
data/lib/rails_theme/engine.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails-theme-helper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
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-03-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
@@ -72,7 +72,12 @@ files:
|
|
72
72
|
- README.md
|
73
73
|
- Rakefile
|
74
74
|
- app/assets/stylesheets/rails_theme/simple_layout.css.sass
|
75
|
-
- app/helpers/rails_theme/
|
75
|
+
- app/helpers/rails_theme/bootstrap/button_helper.rb
|
76
|
+
- app/helpers/rails_theme/bootstrap/dropdown_helper.rb
|
77
|
+
- app/helpers/rails_theme/bootstrap/form_helper.rb
|
78
|
+
- app/helpers/rails_theme/bootstrap/link_helper.rb
|
79
|
+
- app/helpers/rails_theme/bootstrap/modal_helper.rb
|
80
|
+
- app/helpers/rails_theme/bootstrap/tab_helper.rb
|
76
81
|
- app/helpers/rails_theme/layout_helper.rb
|
77
82
|
- app/views/application/_chromeframe.html.erb
|
78
83
|
- app/views/application/_flash_messages.html.erb
|
@@ -101,7 +106,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
101
106
|
version: '0'
|
102
107
|
segments:
|
103
108
|
- 0
|
104
|
-
hash:
|
109
|
+
hash: 2562249329077646014
|
105
110
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
106
111
|
none: false
|
107
112
|
requirements:
|
@@ -110,7 +115,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
110
115
|
version: '0'
|
111
116
|
segments:
|
112
117
|
- 0
|
113
|
-
hash:
|
118
|
+
hash: 2562249329077646014
|
114
119
|
requirements: []
|
115
120
|
rubyforge_project:
|
116
121
|
rubygems_version: 1.8.24
|
@@ -1,86 +0,0 @@
|
|
1
|
-
module RailsTheme
|
2
|
-
module BootstrapHelper
|
3
|
-
def dropdown_toggle(text, url = '#')
|
4
|
-
link_to url, class: 'dropdown-toggle', :'data-toggle' => 'dropdown' do
|
5
|
-
text.html_safe << ' ' << content_tag(:b, nil, class: 'caret')
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
|
-
def dropdown_btn(text, url = '#')
|
10
|
-
link_to url, class: 'btn dropdown-toggle', :'data-toggle' => 'dropdown' do
|
11
|
-
text.html_safe << ' ' << content_tag(:span, nil, class: 'caret')
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
def iconed_link_to(text, url, options = {})
|
16
|
-
icon_class = options.delete(:icon_class)
|
17
|
-
link_to url, options do
|
18
|
-
content_tag(:i, nil, class: icon_class) << ' ' << text
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def link_to_show(url, options = {})
|
23
|
-
icon_class = options.delete(:icon_class) || 'icon-eye-open'
|
24
|
-
default_options = { title: t('helpers.show'), class: 'btn', icon_class: icon_class }
|
25
|
-
iconed_link_to nil, url, default_options.deep_merge(options)
|
26
|
-
end
|
27
|
-
|
28
|
-
def link_to_new(url, options = {})
|
29
|
-
icon_class = options.delete(:icon_class) || 'icon-plus'
|
30
|
-
default_options = { title: t('helpers.new'), class: 'btn', icon_class: icon_class }
|
31
|
-
iconed_link_to nil, url, default_options.deep_merge(options)
|
32
|
-
end
|
33
|
-
|
34
|
-
def link_to_edit(url, options = {})
|
35
|
-
icon_class = options.delete(:icon_class) || 'icon-edit'
|
36
|
-
default_options = { title: t('helpers.edit'), class: 'btn', icon_class: icon_class }
|
37
|
-
iconed_link_to nil, url, default_options.deep_merge(options)
|
38
|
-
end
|
39
|
-
|
40
|
-
def link_to_destroy(url, options = {})
|
41
|
-
icon_class = options.delete(:icon_class) || 'icon-trash'
|
42
|
-
default_options = { method: :delete, data: { confirm: t('helpers.are_you_sure') }, title: t('helpers.destroy'), class: 'btn', icon_class: icon_class }
|
43
|
-
iconed_link_to nil, url, default_options.deep_merge(options)
|
44
|
-
end
|
45
|
-
|
46
|
-
def link_to_open_modal(text, url, modal_id, options = {})
|
47
|
-
default_options = { remote: true, data: { target: modal_id, toggle: 'modal', type: 'html' }, class: 'modal-open' }
|
48
|
-
iconed_link_to text, url, default_options.deep_merge(options)
|
49
|
-
end
|
50
|
-
|
51
|
-
def link_to_edit_modal(url, modal_id)
|
52
|
-
default_options = { remote: true, data: { target: modal_id, toggle: 'modal', type: 'html' }, class: 'btn modal-open' }
|
53
|
-
link_to_edit url, default_options
|
54
|
-
end
|
55
|
-
|
56
|
-
def link_to_close_button
|
57
|
-
link_to t('helpers.close'), '#', data: { dismiss: 'modal' }, class: 'btn'
|
58
|
-
end
|
59
|
-
|
60
|
-
def modal_close_button
|
61
|
-
button_tag 'x', type: 'button', name: nil, class: 'close', data: { dismiss: 'modal' }
|
62
|
-
end
|
63
|
-
|
64
|
-
def submit_button(f, label = nil, options = {})
|
65
|
-
default_options = { name: nil, class: 'btn-primary' }
|
66
|
-
f.button :submit, label, default_options.deep_merge(options)
|
67
|
-
end
|
68
|
-
|
69
|
-
def render_btn_group(tag = :div, options = {})
|
70
|
-
buttons = []
|
71
|
-
yield buttons if block_given?
|
72
|
-
default_options = { class: 'btn-group' }
|
73
|
-
content_tag tag, buttons.join('').html_safe, default_options.deep_merge(options)
|
74
|
-
end
|
75
|
-
|
76
|
-
def link_to_tab(text, tab_pane_id, options = {})
|
77
|
-
default_options = { data: { toggle: 'tab', target: tab_pane_id} }
|
78
|
-
link_to text, tab_pane_id, default_options.deep_merge(options)
|
79
|
-
end
|
80
|
-
|
81
|
-
def link_to_remote_tab(text, url, tab_pane_id, options = {})
|
82
|
-
default_options = { remote: true, data: { toggle: 'tab', target: tab_pane_id, type: 'html' } }
|
83
|
-
link_to text, url, default_options.deep_merge(options)
|
84
|
-
end
|
85
|
-
end
|
86
|
-
end
|