bootstrap-view-helpers 0.0.13 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a35b9241c628b52551279929f4bbd3827d1e01b6
4
+ data.tar.gz: 3af5d1f897639a97e0060a9fd29ea11b85442e2f
5
+ SHA512:
6
+ metadata.gz: b3d2bb44b86c9e8f3ec60ec1488b7eaaa5ad0b583af3e44c300deb2e4433990a0426d123a59bd995750bedf0ccd4dbd0ea1dc779547ef571157947ab342de14f
7
+ data.tar.gz: 9b64cdb58379cf244e59f9e26c1ec033a47d6ecfccc1d3fbff643db98218bb99f93d5b39c76e0736b2b583b039ca66e8ab04e70ee44e73b55ec2bb757b47991d
@@ -26,7 +26,7 @@ module Bootstrap::AccordionHelper
26
26
  options = canonicalize_options(options)
27
27
  options = ensure_accordion_id(options)
28
28
  @accordion_id = options[:id]
29
- options = ensure_class(options, 'accordion')
29
+ options = ensure_class(options, 'panel-group')
30
30
 
31
31
  content_tag(:div, options) do
32
32
  yield
@@ -47,7 +47,7 @@ module Bootstrap::AccordionHelper
47
47
  # options = ensure_accordion_group_id(options)
48
48
  @accordion_group_id = get_next_group_id
49
49
 
50
- options = ensure_class(options, 'accordion-group')
50
+ options = ensure_class(options, 'panel panel-default')
51
51
 
52
52
  content_tag(:div, options) do
53
53
  accordion_group_heading(text) + accordion_group_body(open) { yield }
@@ -57,17 +57,19 @@ module Bootstrap::AccordionHelper
57
57
  private
58
58
 
59
59
  def accordion_group_heading(text)
60
- content_tag(:div, class: 'accordion-heading') do
61
- content_tag(:a, text, class: %(accordion-toggle), href: "##{@accordion_group_id}", data: {toggle: 'collapse', parent: "##{@accordion_id}" })
60
+ content_tag(:div, class: 'panel-heading') do
61
+ content_tag(:h4, class: 'panel-title') do
62
+ content_tag(:a, text, href: "##{@accordion_group_id}", data: {toggle: 'collapse', parent: "##{@accordion_id}" })
63
+ end
62
64
  end
63
65
  end
64
66
 
65
67
  def accordion_group_body(open)
66
- classes = %w(accordion-body collapse)
68
+ classes = %w(panel-collapse collapse)
67
69
  classes << 'in' if open
68
70
 
69
71
  content_tag(:div, id: @accordion_group_id, class: classes) do
70
- content_tag(:div, class: 'accordion-inner') do
72
+ content_tag(:div, class: 'panel-body') do
71
73
  yield
72
74
  end
73
75
  end
@@ -19,8 +19,9 @@
19
19
  module Bootstrap::AlertHelper
20
20
  InvalidAlertTypeError = Class.new(StandardError)
21
21
 
22
- ALERT_ATTRIBUTES = %w(error success info block)
23
-
22
+ ALERT_ATTRIBUTES = %w(default success info warning danger)
23
+ COMPILED_ALERT_CLASSES = ALERT_ATTRIBUTES.map{|a| "alert-#{a}"}
24
+
24
25
  # @overload alert(text, alert_type, options={})
25
26
  # @param text [String] text of the label
26
27
  # @param alert_type [Symbol, String] if present must be one of {Bootstrap::AlertHelper::ALERT_ATTRIBUTES}
@@ -35,6 +36,7 @@ module Bootstrap::AlertHelper
35
36
  options = add_alert_classes(options, args)
36
37
  heading = options.delete(:heading)
37
38
  show_close = options.delete(:close) != false
39
+ options = ensure_class(options, 'alert-dismissible') if show_close
38
40
 
39
41
  content_tag(:div, options) do
40
42
  alert_close(show_close) +
@@ -48,7 +50,7 @@ module Bootstrap::AlertHelper
48
50
  # @return [String] html for alert close button unless _show_ is +false+
49
51
  def alert_close(show=true)
50
52
  return '' unless show
51
- content_tag(:button, '&times;'.html_safe, class: 'close', data: {dismiss: 'alert'})
53
+ content_tag(:button, '&times;'.html_safe, class: 'close', data: {dismiss: 'alert'}, aria: {label: "Close"})
52
54
  end
53
55
 
54
56
  # Return an alert heading
@@ -72,6 +74,7 @@ module Bootstrap::AlertHelper
72
74
  def add_alert_classes(options, alert_attributes)
73
75
  validate_alert_attributes(alert_attributes)
74
76
  classes = ['alert'] + alert_attributes.map { |e| "alert-#{e}" }
77
+ classes << "alert-default" if is_default?(classes, options, alert_attributes)
75
78
  ensure_class(options, classes)
76
79
  end
77
80
 
@@ -79,5 +82,9 @@ module Bootstrap::AlertHelper
79
82
  alert_attributes.each { |e| raise(InvalidAlertTypeError, e.inspect) unless ALERT_ATTRIBUTES.include?(e.to_s) }
80
83
  end
81
84
 
85
+ def is_default?(classes, options, alert_attributes)
86
+ classes == ['alert'] &&
87
+ !options[:class].any?{|c| COMPILED_ALERT_CLASSES.include?(c)}
88
+ end
82
89
 
83
90
  end
@@ -14,8 +14,8 @@
14
14
  module Bootstrap::BadgeHelper
15
15
  InvalidBadgeTypeError = Class.new(StandardError)
16
16
 
17
- BADGE_TYPES = %w(default success warning important info inverse)
18
-
17
+ BADGE_TYPES = %w(default primary success info warning danger)
18
+
19
19
  # Returns html for a Bootstrap badge.
20
20
  #
21
21
  # @overload badge(text, options={})
@@ -40,7 +40,8 @@ module Bootstrap::BadgeHelper
40
40
  def add_badge_classes(*args)
41
41
  options = canonicalize_options(args.extract_options!)
42
42
  validate_badge_types(args)
43
- classes = ['badge'] + args.map { |arg| "badge-#{arg}" }
43
+ classes = ['label', 'label-pill'] + args.map { |arg| "label-#{arg}" }
44
+ classes << 'label-default' if classes == ['label', 'label-pill']
44
45
  ensure_class(options, classes)
45
46
  end
46
47
 
@@ -44,7 +44,7 @@ module Bootstrap::ButtonHelper
44
44
 
45
45
  BUTTON_TYPES = %w(default primary info success warning danger inverse link)
46
46
  BUTTON_SIZES = %w(default large small mini)
47
- BUTTON_OTHERS = %w(block)
47
+ BUTTON_OTHERS = %w()
48
48
 
49
49
  BUTTON_ALL = BUTTON_TYPES + BUTTON_SIZES + BUTTON_OTHERS
50
50
 
@@ -76,11 +76,13 @@ module Bootstrap::ButtonHelper
76
76
  # @option options [String] :url if present, return a <a> styled as a button
77
77
  # @return [String] Html for a <button> (or <a> if +url+ option passed in)
78
78
  def button(*args)
79
- text = args.shift
80
79
  options = canonicalize_options(args.extract_options!)
80
+ text = args.shift
81
81
  href = options.delete(:url)
82
82
  options = add_button_classes(options, args)
83
83
 
84
+ text = yield if block_given?
85
+
84
86
  if href.present?
85
87
  link_to(text, href, options)
86
88
  else
@@ -132,8 +134,22 @@ module Bootstrap::ButtonHelper
132
134
 
133
135
  def add_button_classes(options, button_types_and_sizes)
134
136
  validate_button_types_and_sizes(button_types_and_sizes)
137
+ map_button_types_and_sizes(button_types_and_sizes)
135
138
  classes = ['btn'] + button_types_and_sizes.map { |e| "btn-#{e}" }
139
+ classes << 'btn-default' if classes == ['btn']
136
140
  ensure_class(options, classes)
137
141
  end
142
+
143
+ BUTTON_TYPES_AND_SIZES_MAP = {
144
+ :default => :default,
145
+ :mini => :xs,
146
+ :small => :sm,
147
+ :large => :lg
148
+ }
149
+ def map_button_types_and_sizes(button_types_and_sizes)
150
+ button_types_and_sizes.map! do |e|
151
+ (BUTTON_TYPES_AND_SIZES_MAP[e.to_sym] || e).to_s
152
+ end
153
+ end
138
154
 
139
155
  end
@@ -58,7 +58,7 @@ module Bootstrap::CommonHelper
58
58
  # @param [String, Array] klasses one or more classes to add to the +:class+ key of _hash_
59
59
  # @return [Hash]
60
60
  def ensure_class(hash, klasses)
61
- canonicalize_options(hash)
61
+ hash = canonicalize_options(hash)
62
62
 
63
63
  hash.dup.tap do |h|
64
64
  Array(klasses).map(&:to_s).each do |k|
@@ -24,6 +24,7 @@
24
24
  # <% end %>#
25
25
  #
26
26
  module Bootstrap::DropdownHelper
27
+ include ActionView::Helpers::SanitizeHelper
27
28
 
28
29
  # Returns a drop-down menu of links
29
30
  #
@@ -34,7 +35,7 @@ module Bootstrap::DropdownHelper
34
35
  # @return [String] '<li class='dropdown'><ul class='dropdown-menu'> with contents of yielded block
35
36
  def nav_dropdown(text, options={})
36
37
  options = canonicalize_options(options)
37
- options = ensure_class(options, 'dropdown')
38
+ options = ensure_class(options, 'nav-item dropdown')
38
39
 
39
40
  content_tag(:li, options) do
40
41
  nav_dropdown_link(text) + dropdown_ul { yield }
@@ -82,6 +83,8 @@ module Bootstrap::DropdownHelper
82
83
  text = args.shift or raise "Need text to link to"
83
84
  url = args.shift || 'javascript:void(0)'
84
85
 
86
+ options = ensure_class(options, 'dropdown')
87
+
85
88
  content_tag(:li) do
86
89
  link_to(text, url, options)
87
90
  end
@@ -96,8 +99,8 @@ module Bootstrap::DropdownHelper
96
99
  private
97
100
 
98
101
  def nav_dropdown_link(text)
99
- content_tag(:a, class: "dropdown-toggle", data: {toggle: "dropdown"}, href: "#") do
100
- safe_join( [ h(text), caret ], ' ' )
102
+ content_tag(:a, class: "nav-link dropdown-toggle", data: {toggle: "dropdown"}, href: "#") do
103
+ safe_join( [ sanitize(text), caret ], ' ' )
101
104
  end
102
105
  end
103
106
 
@@ -105,7 +108,7 @@ module Bootstrap::DropdownHelper
105
108
  text = args.shift
106
109
  classes = %w(btn dropdown-toggle) + args.map { |e| "btn-#{e}" }
107
110
  content_tag(:a, class: classes, data: {toggle: "dropdown"}, href: "#") do
108
- safe_join( [ h(text), caret ], ' ' )
111
+ safe_join( [ sanitize(text), caret ], ' ' )
109
112
  end
110
113
  end
111
114
 
@@ -87,7 +87,12 @@ module Bootstrap::FormHelper
87
87
  end
88
88
  options = ensure_class(options, button_classes)
89
89
 
90
- options[:disable_with] = "Processing ..." unless options.has_key?(:disable_with)
90
+ disable_or_remove = options[:data] && options[:data].delete(:disable_with)
91
+
92
+ unless disable_or_remove === false
93
+ options[:data] ||= {}
94
+ options[:data][:disable_with] = disable_or_remove || "Processing ..."
95
+ end
91
96
 
92
97
  submit_tag(value, options)
93
98
  end
@@ -1,6 +1,7 @@
1
1
  # @private
2
2
  class Bootstrap::IconRenderer
3
3
  ArgumentError = Class.new(StandardError)
4
+ include ActionView::Helpers::SanitizeHelper
4
5
 
5
6
  delegate :canonicalize_options, :content_tag, :ensure_class, :h, to: :template
6
7
  attr_accessor :template, :options, :args, :text
@@ -33,7 +34,7 @@ class Bootstrap::IconRenderer
33
34
 
34
35
  def process_icon_type
35
36
  icon_type = args.shift.presence or raise(ArgumentError, "must pass an icon type")
36
- icon_class = icon_type == 'blank' ? 'icon-search' : "icon-#{icon_type.gsub("_", "-")}"
37
+ icon_class = icon_type == 'blank' ? 'glyphicon glyphicon-search' : "glyphicon glyphicon-#{icon_type.gsub("_", "-")}"
37
38
  self.options = ensure_class(self.options, icon_class)
38
39
 
39
40
  if icon_type == 'blank'
@@ -51,7 +52,7 @@ class Bootstrap::IconRenderer
51
52
  self.text = if args.size == 0
52
53
  nil
53
54
  elsif args.size == 1
54
- h(" #{args.first}")
55
+ sanitize(" #{args.first}")
55
56
  else
56
57
  raise ArgumentError, 'too many arguments'
57
58
  end
@@ -16,11 +16,15 @@ module Bootstrap::ModalHelper
16
16
  def modal(options={})
17
17
  options = canonicalize_options(options)
18
18
  options.has_key?(:id) or raise(ArgumentError, "missing :id option")
19
- options = ensure_class(options, %w(modal hide fade))
19
+ options = ensure_class(options, %w(modal fade))
20
20
  options.merge!(tabindex: "-1", role: "dialog")
21
21
 
22
22
  content_tag(:div, options) do
23
- yield
23
+ content_tag(:div, class: "modal-dialog") do
24
+ content_tag(:div, class: "modal-content") do
25
+ yield
26
+ end
27
+ end
24
28
  end
25
29
  end
26
30
 
@@ -34,7 +38,7 @@ module Bootstrap::ModalHelper
34
38
 
35
39
  content_tag(:div, options) do
36
40
  modal_header_close_button(show_close) +
37
- content_tag(:h3) do
41
+ content_tag(:h4, class: "modal-title") do
38
42
  content
39
43
  end
40
44
  end
@@ -73,7 +77,9 @@ module Bootstrap::ModalHelper
73
77
  # Returns a Bootstrap modal close button
74
78
  def modal_header_close_button(show=true)
75
79
  return ''.html_safe unless show
76
- button("&times;".html_safe, type: 'button', class: 'close modal-close modal-header-close', data: {dismiss: 'modal'})
80
+ button(type: 'button', class: 'close', data: {dismiss: 'modal'}) do
81
+ content_tag(:span, "&times;".html_safe)
82
+ end
77
83
  end
78
84
 
79
85
  # Returns a close button for Bootstrap modal footer.
@@ -29,14 +29,14 @@
29
29
  # <%= dropdown_item('Labels', 'butons')%>
30
30
  # <% end %>
31
31
  module Bootstrap::NavHelper
32
-
32
+ include ActionView::Helpers::SanitizeHelper
33
33
  # Returns a Bootstrap navigation bar
34
34
  # @yield yield block usually consists of other {Bootstrap::NavHelper} helpers
35
35
  # @yieldreturn the contents of the navigation bar
36
36
  # @return [String]
37
37
  def nav_bar()
38
- content_tag(:header, class: 'navbar') do
39
- content_tag(:nav, class: 'navbar-inner') do
38
+ content_tag(:nav, class: 'navbar navbar-default') do
39
+ content_tag(:div, class: 'container-fluid') do
40
40
  yield
41
41
  end
42
42
  end
@@ -52,40 +52,51 @@ module Bootstrap::NavHelper
52
52
  # @return [String] <a> if +:url+ option present, else <span>
53
53
  def brand(text, options = {})
54
54
  options = canonicalize_options(options)
55
- options = ensure_class(options, 'brand')
55
+ options = ensure_class(options, 'navbar-brand')
56
56
 
57
57
  with_environment = options.delete(:with_environment)
58
58
  if with_environment && Rails.env != 'production'
59
- text = "#{text} - #{Rails.env}"
59
+ if text.present?
60
+ text = "#{text} - #{Rails.env}"
61
+ else
62
+ text = Rails.env
63
+ end
60
64
  options = ensure_class(options, "rails-#{Rails.env}")
61
65
  end
62
66
 
63
67
  url = options.delete(:url)
64
-
65
- if url.present?
66
- link_to(text, url, options)
67
- else
68
- content_tag(:span, text, options)
68
+ content_tag(:div, class: "navbar-header") do
69
+ if url.present?
70
+ link_to(text, url, options)
71
+ else
72
+ content_tag(:span, text, options)
73
+ end
69
74
  end
70
75
  end
71
76
 
72
77
  # Returns <div> for a group of nav bar links, <ul>s.
73
78
  #
79
+ def nav_bar_wrapper(options = {})
80
+ content_tag(:div, class: "navbar-collapse collapse sidebar-navbar-collapse") do
81
+ yield
82
+ end
83
+ end
84
+
74
85
  # Usually called in +yield+ block of {Bootstrap::NavHelper#nav_bar}
75
86
  #
76
87
  # @param options [Hash] options except for +:pull+ become html attributes of generated <div>
77
88
  # @option options [:left, :right] pull will add class of "pull-left|right" for Bootstrap nav bar positioning
78
89
  # @yield block usually consists of calls to {Bootstrap::NavHelper#nav_bar_link} and {Bootstrap::NavHelper#nav_bar_divider}
79
90
  # @return [String] <div class='nav'> containing results of yielded block
80
- def nav_bar_links(options={})
91
+ def nav_bar_links(options = {})
81
92
  options = canonicalize_options(options)
82
- options = ensure_class(options, 'nav')
93
+ options = ensure_class(options, 'nav navbar-nav')
83
94
 
84
95
  if pull = options.delete(:pull)
85
- options = ensure_class(options, "pull-#{pull}")
96
+ options = ensure_class(options, "navbar-#{pull}")
86
97
  end
87
98
 
88
- content_tag(:div, options) do
99
+ content_tag(:ul, options) do
89
100
  yield
90
101
  end
91
102
  end
@@ -103,8 +114,8 @@ module Bootstrap::NavHelper
103
114
  a_options = canonicalize_options(options)
104
115
  active = a_options.delete(:active)
105
116
 
106
- li_options = {class: ('active' if active)}
107
-
117
+ li_options = ensure_class({class: ('active' if active)}, "")
118
+
108
119
  content_tag(:li, li_options) do
109
120
  link_to(text, url, a_options)
110
121
  end
@@ -112,9 +123,9 @@ module Bootstrap::NavHelper
112
123
 
113
124
  # Returns divider (vertical bar) for separating items in a nav_bar
114
125
  #
115
- # @return [String] <li class="divider-vertical"></li>
126
+ # @return [String] <li class="divider"></li>
116
127
  def nav_bar_divider
117
- content_tag(:li, nil, class: "divider-vertical")
128
+ content_tag(:li, nil, class: "divider")
118
129
  end
119
130
 
120
131
  # Returns nav list
@@ -126,7 +137,7 @@ module Bootstrap::NavHelper
126
137
  options = canonicalize_options(options)
127
138
  options = ensure_class(options, 'well')
128
139
  content_tag(:div, options) do
129
- content_tag(:ul, class: 'nav nav-list') do
140
+ content_tag(:ul, class: 'nav nav-stacked') do
130
141
  yield
131
142
  end
132
143
  end
@@ -137,7 +148,7 @@ module Bootstrap::NavHelper
137
148
  # @param text [String] text of header
138
149
  # @return [String] <li.nav-header>text</li>
139
150
  def nav_list_header(text)
140
- content_tag(:li, text, class: 'nav-header')
151
+ content_tag(:li, text, class: '')
141
152
  end
142
153
 
143
154
  # Wraps _text_ so it has proper leading and color for text in a nav bar. Usually
@@ -151,12 +162,12 @@ module Bootstrap::NavHelper
151
162
  # @option options [:left, :right] :pull (:left) adds the Boostrap positioning class
152
163
  # @option options [Boolean] :pad (true) include padding around text
153
164
  # @return [String]
154
- def nav_bar_text(text, options={})
165
+ def nav_bar_text(text, options = {})
155
166
  options = canonicalize_options(options)
156
167
 
157
168
  unless options.delete(:pad) == false
158
169
  padding = ("&nbsp;" * 3).html_safe
159
- text = padding + h(text) + padding
170
+ text = padding + sanitize(text) + padding
160
171
  end
161
172
 
162
173
  pull_class = (options.delete(:pull).to_s == 'right' ? 'pull-right' : 'pull-left')
@@ -164,4 +175,10 @@ module Bootstrap::NavHelper
164
175
 
165
176
  content_tag(:p, text, options)
166
177
  end
167
- end
178
+
179
+ def vertical_nav(options = {})
180
+ content_tag(:div, class: "sidebar-nav") do
181
+ yield
182
+ end
183
+ end
184
+ end
@@ -11,7 +11,7 @@
11
11
  module Bootstrap::StampHelper
12
12
  InvalidStampTypeError = Class.new(StandardError)
13
13
 
14
- LABEL_TYPES = %w(default success warning important info inverse)
14
+ LABEL_TYPES = %w(default primary success info warning danger)
15
15
 
16
16
  #=> see {Bootstrap::StampHelper::LABEL_TYPES}
17
17
 
@@ -39,6 +39,7 @@ module Bootstrap::StampHelper
39
39
  options = canonicalize_options(args.extract_options!)
40
40
  validate_label_types(args)
41
41
  classes = ['label'] + args.map { |arg| "label-#{arg}" }
42
+ classes << 'label-default' if classes == ['label']
42
43
  ensure_class(options, classes)
43
44
  end
44
45
 
@@ -2,20 +2,24 @@
2
2
 
3
3
  <%= brand('Bootstrap View Helpers', url: bvh_path) %>
4
4
 
5
- <%= nav_bar_links do %>
6
- <%= nav_bar_link('Application Home', bvh_app_home_link) %>
7
- <%= nav_bar_link('Active', '#', active: true) %>
8
- <%= nav_bar_link('Link 1', '#') %>
9
- <%= nav_bar_divider %>
10
- <%= nav_bar_link('Link 2', '#') %>
11
- <% end %>
12
-
13
- <%= nav_bar_links(pull: 'right') do %>
14
- <%= nav_dropdown('Dropdown 1') do %>
15
- <%= dropdown_item('One', '#') %>
5
+ <%= nav_bar_wrapper do %>
6
+ <%= nav_bar_links do %>
7
+ <%= nav_bar_link('Application Home', bvh_app_home_link) %>
8
+ <%= nav_bar_link('Active', '#', active: true) %>
9
+ <%= nav_bar_link('Link 1', '#') %>
10
+ <%= nav_bar_divider %>
11
+ <%= nav_bar_link('Link 2', '#') %>
12
+ <%= nav_dropdown('Dropdown A') do %>
13
+ <%= dropdown_item('Bee', '#') %>
14
+ <% end %>
15
+ <% end %>
16
+
17
+ <%= nav_bar_links(pull: 'right') do %>
18
+ <%= nav_dropdown('Dropdown 1') do %>
19
+ <%= dropdown_item('One', '#') %>
20
+ <% end %>
16
21
  <% end %>
22
+
23
+ <%= nav_bar_text("Logged in as admin", pull: 'right') %>
17
24
  <% end %>
18
-
19
- <%= nav_bar_text("Logged in as admin", pull: 'right') %>
20
-
21
25
  <% end %>
@@ -1,16 +1,17 @@
1
- <%= nav_list do %>
2
-
3
- <%= nav_list_header('Sidebar Header') %>
1
+ <%= vertical_nav do %>
2
+ <%= nav_list do %>
3
+
4
+ <%= nav_list_header('Sidebar Header') %>
4
5
 
5
- <%= dropdown_item('Accordions', bvh_path('accordions')) %>
6
- <%= dropdown_item('Alerts', bvh_path('alerts')) %>
7
- <%= dropdown_item('Buttons', bvh_path('buttons')) %>
8
- <%= dropdown_item('Icons', bvh_path('icons')) %>
9
- <%= dropdown_item('Form helpers', bvh_path('form_helpers')) %>
10
- <%= dropdown_item('Flash', bvh_path('flash_helper')) %>
11
- <%= dropdown_item('Labels and badges', bvh_path('labels_and_badges')) %>
12
- <%= dropdown_item('Modal Helpers', bvh_path('modal')) %>
13
- <%= dropdown_item('Nav Helpers', bvh_path) %>
14
- <%= dropdown_item('Table Helpers', bvh_path('tables')) %>
15
-
6
+ <%= dropdown_item('Accordions', bvh_path('accordions')) %>
7
+ <%= dropdown_item('Alerts', bvh_path('alerts')) %>
8
+ <%= dropdown_item('Buttons', bvh_path('buttons')) %>
9
+ <%= dropdown_item('Icons', bvh_path('icons')) %>
10
+ <%= dropdown_item('Form helpers', bvh_path('form_helpers')) %>
11
+ <%= dropdown_item('Flash', bvh_path('flash_helper')) %>
12
+ <%= dropdown_item('Labels and badges', bvh_path('labels_and_badges')) %>
13
+ <%= dropdown_item('Modal Helpers', bvh_path('modal')) %>
14
+ <%= dropdown_item('Nav Helpers', bvh_path) %>
15
+ <%= dropdown_item('Table Helpers', bvh_path('tables')) %>
16
+ <% end %>
16
17
  <% end %>
@@ -2,7 +2,5 @@
2
2
 
3
3
  <%= alert('No close button', close: false) %>
4
4
 
5
- <%= alert("Type :block gives some more padding", :block ) %>
6
-
7
5
  <%= alert("Unknown options are html attributes", id: 'my-id', class: 'my-class') %>
8
6
 
@@ -4,5 +4,7 @@
4
4
 
5
5
  <%= alert('Type :success', :success) %>
6
6
 
7
- <%= alert('Type :error', :error) %>
7
+ <%= alert('Type :warning', :warning) %>
8
+
9
+ <%= alert('Type :danger', :danger) %>
8
10
 
@@ -109,12 +109,6 @@
109
109
  <code>button('Mini', :mini)</code>
110
110
  </td>
111
111
  </tr>
112
- <tr>
113
- <td><%= button('Block', :block) %></td>
114
- <td>
115
- <code>button('Block', :block) # (occupies 100% width of container)</code>
116
- </td>
117
- </tr>
118
112
  <tr>
119
113
  <td><%= button('Small Info', :small, :info) %></td>
120
114
  <td>
@@ -32,9 +32,9 @@
32
32
  </td>
33
33
  </tr>
34
34
  <tr>
35
- <td><%= stamp('Important', :important) %>
35
+ <td><%= stamp('Danger', :danger) %>
36
36
  <td>
37
- <code>stamp('Important', :important)</code>
37
+ <code>stamp('Danger', :danger)</code>
38
38
  </td>
39
39
  </tr>
40
40
  <tr>
@@ -44,9 +44,9 @@
44
44
  </td>
45
45
  </tr>
46
46
  <tr>
47
- <td><%= stamp('Inverse', :inverse) %>
47
+ <td><%= stamp('Primary', :primary) %>
48
48
  <td>
49
- <code>stamp('Inverse', :inverse)</code>
49
+ <code>stamp('Primary', :primary)</code>
50
50
  </td>
51
51
  </tr>
52
52
  <tr>
@@ -89,9 +89,9 @@
89
89
  </td>
90
90
  </tr>
91
91
  <tr>
92
- <td><%= badge('4', :important) %>
92
+ <td><%= badge('4', :danger) %>
93
93
  <td>
94
- <code>badge('4', :important)</code>
94
+ <code>badge('4', :danger)</code>
95
95
  </td>
96
96
  </tr>
97
97
  <tr>
@@ -101,9 +101,9 @@
101
101
  </td>
102
102
  </tr>
103
103
  <tr>
104
- <td><%= badge('10', :inverse) %>
104
+ <td><%= badge('10', :primary) %>
105
105
  <td>
106
- <code>badge('10', :inverse)</code>
106
+ <code>badge('10', :primary)</code>
107
107
  </td>
108
108
  </tr>
109
109
  <tr>
@@ -9,13 +9,11 @@
9
9
  <body>
10
10
  <%= render partial: 'bootstrap_view_helper_nav_bar' %>
11
11
  <div class='container-fluid'>
12
- <div class='row-fluid'>
13
- <div class='span3'>
14
- <%= render partial: 'bootstrap_view_helper_side_bar' %>
15
- </div>
16
- <div class='span9'>
17
- <%= yield %>
18
- </div>
12
+ <div class='col-md-3'>
13
+ <%= render partial: 'bootstrap_view_helper_side_bar' %>
14
+ </div>
15
+ <div class='col-md-9'>
16
+ <%= yield %>
19
17
  </div>
20
18
  </div>
21
19
  </body>
@@ -1,5 +1,5 @@
1
1
  Rails.application.routes.draw do
2
2
 
3
- match 'bootstrap_view_helpers(/:action)' => 'bootstrap_view_helpers', :as => :bvh
3
+ match 'bootstrap_view_helpers(/:action)' => 'bootstrap_view_helpers', :as => :bvh, via: :get
4
4
 
5
5
  end
@@ -1,3 +1,3 @@
1
1
  module BootstrapViewHelpers
2
- VERSION = "0.0.13"
2
+ VERSION = "0.0.14"
3
3
  end
metadata CHANGED
@@ -1,270 +1,167 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bootstrap-view-helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.13
5
- prerelease:
4
+ version: 0.0.14
6
5
  platform: ruby
7
6
  authors:
8
7
  - Steve Downey
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-15 00:00:00.000000000 Z
11
+ date: 2016-01-26 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: jquery-rails
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: sass-rails
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
53
- version: '3.2'
47
+ version: 5.0.4
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
61
- version: '3.2'
54
+ version: 5.0.4
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: bootstrap-sass
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
69
- version: 2.3.1.0
70
- type: :development
61
+ version: 3.3.6
62
+ type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
77
- version: 2.3.1.0
68
+ version: 3.3.6
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec-rails
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: capybara
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - '>='
100
88
  - !ruby/object:Gem::Version
101
89
  version: '0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - '>='
108
95
  - !ruby/object:Gem::Version
109
96
  version: '0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: guard-rspec
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - '>='
116
102
  - !ruby/object:Gem::Version
117
103
  version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - '>='
124
109
  - !ruby/object:Gem::Version
125
110
  version: '0'
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: guard-spork
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - '>='
132
116
  - !ruby/object:Gem::Version
133
117
  version: '0'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - '>='
140
123
  - !ruby/object:Gem::Version
141
124
  version: '0'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: coveralls
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
- requirements:
147
- - - ! '>='
148
- - !ruby/object:Gem::Version
149
- version: '0'
150
- type: :development
151
- prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '0'
158
- - !ruby/object:Gem::Dependency
159
- name: sqlite3
160
- requirement: !ruby/object:Gem::Requirement
161
- none: false
162
- requirements:
163
- - - ! '>='
164
- - !ruby/object:Gem::Version
165
- version: '0'
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - ! '>='
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
- - !ruby/object:Gem::Dependency
175
- name: better_errors
176
- requirement: !ruby/object:Gem::Requirement
177
- none: false
178
128
  requirements:
179
- - - ! '>='
129
+ - - '>='
180
130
  - !ruby/object:Gem::Version
181
131
  version: '0'
182
132
  type: :development
183
133
  prerelease: false
184
134
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
135
  requirements:
187
- - - ! '>='
136
+ - - '>='
188
137
  - !ruby/object:Gem::Version
189
138
  version: '0'
190
139
  - !ruby/object:Gem::Dependency
191
- name: binding_of_caller
140
+ name: pry
192
141
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
142
  requirements:
195
- - - ! '>='
143
+ - - '>='
196
144
  - !ruby/object:Gem::Version
197
145
  version: '0'
198
146
  type: :development
199
147
  prerelease: false
200
148
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
149
  requirements:
203
- - - ! '>='
150
+ - - '>='
204
151
  - !ruby/object:Gem::Version
205
152
  version: '0'
206
153
  - !ruby/object:Gem::Dependency
207
- name: redcarpet
208
- requirement: !ruby/object:Gem::Requirement
209
- none: false
210
- requirements:
211
- - - ! '>='
212
- - !ruby/object:Gem::Version
213
- version: '0'
214
- type: :development
215
- prerelease: false
216
- version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
- requirements:
219
- - - ! '>='
220
- - !ruby/object:Gem::Version
221
- version: '0'
222
- - !ruby/object:Gem::Dependency
223
- name: yard
224
- requirement: !ruby/object:Gem::Requirement
225
- none: false
226
- requirements:
227
- - - ! '>='
228
- - !ruby/object:Gem::Version
229
- version: '0'
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
- requirements:
235
- - - ! '>='
236
- - !ruby/object:Gem::Version
237
- version: '0'
238
- - !ruby/object:Gem::Dependency
239
- name: quiet_assets
240
- requirement: !ruby/object:Gem::Requirement
241
- none: false
242
- requirements:
243
- - - ! '>='
244
- - !ruby/object:Gem::Version
245
- version: '0'
246
- type: :development
247
- prerelease: false
248
- version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
- requirements:
251
- - - ! '>='
252
- - !ruby/object:Gem::Version
253
- version: '0'
254
- - !ruby/object:Gem::Dependency
255
- name: thin
154
+ name: sqlite3
256
155
  requirement: !ruby/object:Gem::Requirement
257
- none: false
258
156
  requirements:
259
- - - ! '>='
157
+ - - '>='
260
158
  - !ruby/object:Gem::Version
261
159
  version: '0'
262
160
  type: :development
263
161
  prerelease: false
264
162
  version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
163
  requirements:
267
- - - ! '>='
164
+ - - '>='
268
165
  - !ruby/object:Gem::Version
269
166
  version: '0'
270
167
  description: Produce Bootstrap html with semantic helper methods.
@@ -330,27 +227,25 @@ files:
330
227
  - README.md
331
228
  homepage: https://github.com/stevedowney/bootstrap-view-helpers
332
229
  licenses: []
230
+ metadata: {}
333
231
  post_install_message:
334
232
  rdoc_options: []
335
233
  require_paths:
336
234
  - lib
337
235
  required_ruby_version: !ruby/object:Gem::Requirement
338
- none: false
339
236
  requirements:
340
- - - ! '>='
237
+ - - '>='
341
238
  - !ruby/object:Gem::Version
342
239
  version: '0'
343
240
  required_rubygems_version: !ruby/object:Gem::Requirement
344
- none: false
345
241
  requirements:
346
- - - ! '>='
242
+ - - '>='
347
243
  - !ruby/object:Gem::Version
348
244
  version: '0'
349
245
  requirements: []
350
246
  rubyforge_project:
351
- rubygems_version: 1.8.25
247
+ rubygems_version: 2.0.14
352
248
  signing_key:
353
- specification_version: 3
249
+ specification_version: 4
354
250
  summary: Rails view helpers for Bootstrap
355
251
  test_files: []
356
- has_rdoc: