interview 0.1.0 → 0.3.0

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.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/interview.gemspec +1 -0
  3. data/lib/{generators/interview/install/templates → assets/javascripts}/interview.js.coffee +17 -25
  4. data/lib/{generators/interview/install/templates/bootstrap_interview.css.scss → assets/stylesheets/interview.css.scss} +3 -2
  5. data/lib/generators/interview/install/install_generator.rb +0 -2
  6. data/lib/generators/interview/install/templates/interview.rb +1 -1
  7. data/lib/interview.rb +65 -51
  8. data/lib/interview/association_methods.rb +2 -0
  9. data/lib/interview/builder.rb +32 -24
  10. data/lib/interview/control.rb +25 -7
  11. data/lib/interview/controls/actionbar.rb +41 -0
  12. data/lib/interview/controls/alert.rb +15 -0
  13. data/lib/interview/{association_attribute.rb → controls/association_attribute.rb} +8 -8
  14. data/lib/interview/{association_list_attribute.rb → controls/association_list_attribute.rb} +10 -9
  15. data/lib/interview/controls/attribute.rb +80 -0
  16. data/lib/interview/controls/auto_attribute.rb +16 -0
  17. data/lib/interview/controls/boolean_attribute.rb +20 -0
  18. data/lib/interview/controls/breadcrumbs.rb +15 -0
  19. data/lib/interview/controls/button.rb +25 -0
  20. data/lib/interview/controls/caret.rb +9 -0
  21. data/lib/interview/controls/collapse_container.rb +16 -0
  22. data/lib/interview/controls/container.rb +5 -0
  23. data/lib/interview/controls/container_attribute.rb +28 -0
  24. data/lib/interview/controls/date_attribute.rb +23 -0
  25. data/lib/interview/controls/datetime_attribute.rb +22 -0
  26. data/lib/interview/controls/decimal_attribute.rb +12 -0
  27. data/lib/interview/controls/dropdown.rb +35 -0
  28. data/lib/interview/controls/form.rb +35 -0
  29. data/lib/interview/controls/form_errors.rb +20 -0
  30. data/lib/interview/controls/glyphicon.rb +19 -0
  31. data/lib/interview/controls/grid.rb +62 -0
  32. data/lib/interview/controls/hidden_attribute.rb +11 -0
  33. data/lib/interview/controls/horizontal_form_container.rb +13 -0
  34. data/lib/interview/controls/html_control.rb +13 -0
  35. data/lib/interview/controls/html_doctype.rb +9 -0
  36. data/lib/interview/controls/html_headers.rb +12 -0
  37. data/lib/interview/{html_text_attribute.rb → controls/html_text_attribute.rb} +9 -5
  38. data/lib/interview/controls/image_attribute.rb +61 -0
  39. data/lib/interview/controls/image_gallery_attribute.rb +72 -0
  40. data/lib/interview/controls/image_light_box.rb +17 -0
  41. data/lib/interview/{integer_attribute.rb → controls/integer_attribute.rb} +0 -0
  42. data/lib/interview/controls/link.rb +90 -0
  43. data/lib/interview/controls/list.rb +20 -0
  44. data/lib/interview/controls/media_object.rb +37 -0
  45. data/lib/interview/controls/navigation.rb +11 -0
  46. data/lib/interview/controls/navigation_item.rb +33 -0
  47. data/lib/interview/controls/nested_form.rb +45 -0
  48. data/lib/interview/controls/nested_form_add_images.rb +15 -0
  49. data/lib/interview/controls/nested_form_add_link.rb +29 -0
  50. data/lib/interview/controls/nested_form_remove_link.rb +12 -0
  51. data/lib/interview/{option_attribute.rb → controls/option_attribute.rb} +19 -19
  52. data/lib/interview/controls/pagination.rb +12 -0
  53. data/lib/interview/controls/panel.rb +13 -0
  54. data/lib/interview/{polymorphic_add_link.rb → controls/polymorphic_add_link.rb} +1 -1
  55. data/lib/interview/controls/polymorphic_nested_form.rb +17 -0
  56. data/lib/interview/{nested_form_add_link.rb → controls/polymorphic_nested_form_add_link.rb} +12 -28
  57. data/lib/interview/controls/progress_bar.rb +18 -0
  58. data/lib/interview/controls/scaffold_card.rb +27 -0
  59. data/lib/interview/controls/scaffold_form.rb +108 -0
  60. data/lib/interview/controls/search_form.rb +25 -0
  61. data/lib/interview/controls/section.rb +16 -0
  62. data/lib/interview/{space.rb → controls/space.rb} +5 -6
  63. data/lib/interview/{string_attribute.rb → controls/string_attribute.rb} +0 -0
  64. data/lib/interview/controls/submit.rb +14 -0
  65. data/lib/interview/controls/tab.rb +27 -0
  66. data/lib/interview/controls/tab_box.rb +21 -0
  67. data/lib/interview/controls/text.rb +33 -0
  68. data/lib/interview/{text_attribute.rb → controls/text_attribute.rb} +7 -5
  69. data/lib/interview/controls/tooltip.rb +21 -0
  70. data/lib/interview/{tree.rb → controls/tree.rb} +2 -3
  71. data/lib/interview/{view.rb → controls/view.rb} +4 -6
  72. data/lib/interview/engine.rb +4 -0
  73. data/lib/interview/handler.rb +15 -0
  74. data/lib/interview/has_html_options.rb +29 -0
  75. data/lib/interview/meta_control.rb +18 -0
  76. data/lib/interview/nested_buildable.rb +17 -0
  77. data/lib/interview/version.rb +1 -1
  78. metadata +84 -54
  79. data/lib/interview/actionbar.rb +0 -39
  80. data/lib/interview/attribute.rb +0 -166
  81. data/lib/interview/boolean_attribute.rb +0 -59
  82. data/lib/interview/breadcrumbs.rb +0 -21
  83. data/lib/interview/button.rb +0 -29
  84. data/lib/interview/collapse_container.rb +0 -31
  85. data/lib/interview/condition_container.rb +0 -19
  86. data/lib/interview/container.rb +0 -13
  87. data/lib/interview/container_attribute.rb +0 -30
  88. data/lib/interview/date_attribute.rb +0 -20
  89. data/lib/interview/datetime_attribute.rb +0 -20
  90. data/lib/interview/decimal_attribute.rb +0 -10
  91. data/lib/interview/dropdown.rb +0 -39
  92. data/lib/interview/form.rb +0 -64
  93. data/lib/interview/form_errors.rb +0 -22
  94. data/lib/interview/grid.rb +0 -54
  95. data/lib/interview/has_controls.rb +0 -40
  96. data/lib/interview/hidden_attribute.rb +0 -15
  97. data/lib/interview/html_control.rb +0 -21
  98. data/lib/interview/image_attribute.rb +0 -59
  99. data/lib/interview/image_gallery_attribute.rb +0 -79
  100. data/lib/interview/image_light_box.rb +0 -19
  101. data/lib/interview/link.rb +0 -134
  102. data/lib/interview/list.rb +0 -26
  103. data/lib/interview/media_object.rb +0 -27
  104. data/lib/interview/navigation.rb +0 -55
  105. data/lib/interview/navigation_item.rb +0 -41
  106. data/lib/interview/navigation_item_old.rb +0 -26
  107. data/lib/interview/nested_form.rb +0 -66
  108. data/lib/interview/nested_form_add_images.rb +0 -33
  109. data/lib/interview/nested_form_remove_link.rb +0 -28
  110. data/lib/interview/panel.rb +0 -18
  111. data/lib/interview/progress_bar.rb +0 -25
  112. data/lib/interview/search_form.rb +0 -21
  113. data/lib/interview/tab.rb +0 -21
  114. data/lib/interview/tab_box.rb +0 -30
  115. data/lib/interview/text.rb +0 -45
  116. data/lib/interview/tooltip.rb +0 -38
@@ -0,0 +1,18 @@
1
+ module Interview
2
+ class MetaControl < Control
3
+
4
+ attr_accessor :pointer
5
+ attr_reader :skip
6
+
7
+ def build_child(b, control, &block)
8
+ @skip = true
9
+ if @pointer
10
+ @pointer.build_child(b, control, &block)
11
+ else
12
+ super
13
+ end
14
+ @skip = false
15
+ end
16
+
17
+ end
18
+ end
@@ -0,0 +1,17 @@
1
+ module Interview
2
+ module NestedBuildable
3
+
4
+ def create_nested_builder(b)
5
+ @original_html = b.html
6
+ @nested_html = ::Builder::XmlMarkup.new
7
+ b.html = @nested_html
8
+ return b
9
+ end
10
+
11
+ def render_nested_builder(b)
12
+ b.html = @original_html
13
+ return @nested_html.target!.html_safe
14
+ end
15
+
16
+ end
17
+ end
@@ -1,3 +1,3 @@
1
1
  module Interview
2
- VERSION = "0.1.0"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: interview
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jannes Köhler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-17 00:00:00.000000000 Z
11
+ date: 2015-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bootstrap-sass
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  description: Interview is a easy and simple frontend for Rails based on Ruby Objects
84
98
  and Bootstrap.
85
99
  email:
@@ -94,6 +108,8 @@ files:
94
108
  - README.md
95
109
  - Rakefile
96
110
  - interview.gemspec
111
+ - lib/assets/javascripts/interview.js.coffee
112
+ - lib/assets/stylesheets/interview.css.scss
97
113
  - lib/generators/interview/install/install_generator.rb
98
114
  - lib/generators/interview/install/templates/32px.png
99
115
  - lib/generators/interview/install/templates/40px.png
@@ -101,11 +117,9 @@ files:
101
117
  - lib/generators/interview/install/templates/application.js
102
118
  - lib/generators/interview/install/templates/blueimp-gallery.css
103
119
  - lib/generators/interview/install/templates/blueimp-gallery.js
104
- - lib/generators/interview/install/templates/bootstrap_interview.css.scss
105
120
  - lib/generators/interview/install/templates/ckeditor_config.js
106
121
  - lib/generators/interview/install/templates/colors.css.scss
107
122
  - lib/generators/interview/install/templates/defaults_de.yml
108
- - lib/generators/interview/install/templates/interview.js.coffee
109
123
  - lib/generators/interview/install/templates/interview.rb
110
124
  - lib/generators/interview/install/templates/jstree.css
111
125
  - lib/generators/interview/install/templates/jstree.js
@@ -119,61 +133,77 @@ files:
119
133
  - lib/generators/interview/view_control/templates/list.rb
120
134
  - lib/generators/interview/view_control/view_control_generator.rb
121
135
  - lib/interview.rb
122
- - lib/interview/actionbar.rb
123
- - lib/interview/association_attribute.rb
124
- - lib/interview/association_list_attribute.rb
125
136
  - lib/interview/association_methods.rb
126
- - lib/interview/attribute.rb
127
- - lib/interview/boolean_attribute.rb
128
- - lib/interview/breadcrumbs.rb
129
137
  - lib/interview/builder.rb
130
- - lib/interview/button.rb
131
- - lib/interview/collapse_container.rb
132
- - lib/interview/condition_container.rb
133
- - lib/interview/container.rb
134
- - lib/interview/container_attribute.rb
135
138
  - lib/interview/control.rb
136
- - lib/interview/date_attribute.rb
137
- - lib/interview/datetime_attribute.rb
138
- - lib/interview/decimal_attribute.rb
139
- - lib/interview/dropdown.rb
140
- - lib/interview/form.rb
141
- - lib/interview/form_errors.rb
142
- - lib/interview/grid.rb
143
- - lib/interview/has_controls.rb
144
- - lib/interview/hidden_attribute.rb
145
- - lib/interview/html_control.rb
146
- - lib/interview/html_text_attribute.rb
147
- - lib/interview/image_attribute.rb
148
- - lib/interview/image_gallery_attribute.rb
149
- - lib/interview/image_light_box.rb
150
- - lib/interview/integer_attribute.rb
151
- - lib/interview/link.rb
152
- - lib/interview/list.rb
153
- - lib/interview/media_object.rb
154
- - lib/interview/navigation.rb
155
- - lib/interview/navigation_item.rb
156
- - lib/interview/navigation_item_old.rb
157
- - lib/interview/nested_form.rb
158
- - lib/interview/nested_form_add_images.rb
159
- - lib/interview/nested_form_add_link.rb
160
- - lib/interview/nested_form_remove_link.rb
139
+ - lib/interview/controls/actionbar.rb
140
+ - lib/interview/controls/alert.rb
141
+ - lib/interview/controls/association_attribute.rb
142
+ - lib/interview/controls/association_list_attribute.rb
143
+ - lib/interview/controls/attribute.rb
144
+ - lib/interview/controls/auto_attribute.rb
145
+ - lib/interview/controls/boolean_attribute.rb
146
+ - lib/interview/controls/breadcrumbs.rb
147
+ - lib/interview/controls/button.rb
148
+ - lib/interview/controls/caret.rb
149
+ - lib/interview/controls/collapse_container.rb
150
+ - lib/interview/controls/container.rb
151
+ - lib/interview/controls/container_attribute.rb
152
+ - lib/interview/controls/date_attribute.rb
153
+ - lib/interview/controls/datetime_attribute.rb
154
+ - lib/interview/controls/decimal_attribute.rb
155
+ - lib/interview/controls/dropdown.rb
156
+ - lib/interview/controls/form.rb
157
+ - lib/interview/controls/form_errors.rb
158
+ - lib/interview/controls/glyphicon.rb
159
+ - lib/interview/controls/grid.rb
160
+ - lib/interview/controls/hidden_attribute.rb
161
+ - lib/interview/controls/horizontal_form_container.rb
162
+ - lib/interview/controls/html_control.rb
163
+ - lib/interview/controls/html_doctype.rb
164
+ - lib/interview/controls/html_headers.rb
165
+ - lib/interview/controls/html_text_attribute.rb
166
+ - lib/interview/controls/image_attribute.rb
167
+ - lib/interview/controls/image_gallery_attribute.rb
168
+ - lib/interview/controls/image_light_box.rb
169
+ - lib/interview/controls/integer_attribute.rb
170
+ - lib/interview/controls/link.rb
171
+ - lib/interview/controls/list.rb
172
+ - lib/interview/controls/media_object.rb
173
+ - lib/interview/controls/navigation.rb
174
+ - lib/interview/controls/navigation_item.rb
175
+ - lib/interview/controls/nested_form.rb
176
+ - lib/interview/controls/nested_form_add_images.rb
177
+ - lib/interview/controls/nested_form_add_link.rb
178
+ - lib/interview/controls/nested_form_remove_link.rb
179
+ - lib/interview/controls/option_attribute.rb
180
+ - lib/interview/controls/pagination.rb
181
+ - lib/interview/controls/panel.rb
182
+ - lib/interview/controls/polymorphic_add_link.rb
183
+ - lib/interview/controls/polymorphic_nested_form.rb
184
+ - lib/interview/controls/polymorphic_nested_form_add_link.rb
185
+ - lib/interview/controls/progress_bar.rb
186
+ - lib/interview/controls/scaffold_card.rb
187
+ - lib/interview/controls/scaffold_form.rb
188
+ - lib/interview/controls/search_form.rb
189
+ - lib/interview/controls/section.rb
190
+ - lib/interview/controls/space.rb
191
+ - lib/interview/controls/string_attribute.rb
192
+ - lib/interview/controls/submit.rb
193
+ - lib/interview/controls/tab.rb
194
+ - lib/interview/controls/tab_box.rb
195
+ - lib/interview/controls/text.rb
196
+ - lib/interview/controls/text_attribute.rb
197
+ - lib/interview/controls/tooltip.rb
198
+ - lib/interview/controls/tree.rb
199
+ - lib/interview/controls/view.rb
200
+ - lib/interview/engine.rb
201
+ - lib/interview/handler.rb
202
+ - lib/interview/has_html_options.rb
203
+ - lib/interview/meta_control.rb
204
+ - lib/interview/nested_buildable.rb
161
205
  - lib/interview/object_context.rb
162
- - lib/interview/option_attribute.rb
163
- - lib/interview/panel.rb
164
- - lib/interview/polymorphic_add_link.rb
165
- - lib/interview/progress_bar.rb
166
- - lib/interview/search_form.rb
167
- - lib/interview/space.rb
168
- - lib/interview/string_attribute.rb
169
- - lib/interview/tab.rb
170
- - lib/interview/tab_box.rb
171
- - lib/interview/text.rb
172
- - lib/interview/text_attribute.rb
173
- - lib/interview/tooltip.rb
174
- - lib/interview/tree.rb
175
206
  - lib/interview/version.rb
176
- - lib/interview/view.rb
177
207
  homepage: ''
178
208
  licenses:
179
209
  - MIT
@@ -1,39 +0,0 @@
1
- module Interview
2
- class Actionbar < Control
3
- include HasControls
4
-
5
- attr_accessor :title, :icon
6
-
7
- def render
8
- title = @title || find_attribute(:title)
9
- icon = @icon
10
- if icon == :polymorphic
11
- object = find_attribute! :object
12
- icon = object.icon
13
- end
14
- controls = add_parent(build_children)
15
-
16
- html = ::Builder::XmlMarkup.new
17
- html.div class: 'clearfix' do
18
- unless controls.empty?
19
- html.ul class: 'list-inline pull-right' do
20
- controls.each do |control|
21
- html.li do
22
- html << control.render
23
- end
24
- end
25
- end
26
- end
27
- if title
28
- html.p class: 'h3' do
29
- html.span '', class: icon if icon
30
- html.text! ' ' if icon
31
- html.text! title
32
- end
33
- end
34
- end
35
- return html.target!
36
- end
37
-
38
- end
39
- end
@@ -1,166 +0,0 @@
1
- module Interview
2
- class Attribute < Control
3
-
4
- attr_accessor :method, :caption, :style, :link, :nil_value, :hide_caption, :caption_as_placeholder,
5
- :hide_tooltip, :only_for, :align, :on_changed, :html_class, :surrounding_tag
6
-
7
- def initialize(params={})
8
- super
9
- @html_class = []
10
- @html_class << params[:html_class] if params[:html_class]
11
- end
12
-
13
- def value
14
- object = @object || find_attribute!(:object)
15
- if object.respond_to? @method
16
- val = object.send @method
17
- end
18
- val = @nil_value if val.nil?
19
- return val
20
- end
21
-
22
- def caption
23
- if @caption
24
- return @caption
25
- else
26
- object = find_attribute! :object
27
- return object.class.human_attribute_name(@method)
28
- end
29
- end
30
-
31
- def tooltip
32
- object = find_attribute! :object
33
- return h.t("activerecord.attribute_tooltips.#{object.class.model_name.i18n_key}.#{@method}", default: '')
34
- end
35
-
36
-
37
- def render
38
- return '' if hide?
39
-
40
- if @style and respond_to?("render_#{@style}_style", true)
41
- html = send("render_#{@style}_style")
42
- else
43
- html = render_default_style
44
- end
45
- return add_surrounding_tag(html)
46
- end
47
-
48
- def render_read
49
- return value.to_s
50
- end
51
-
52
- def render_write
53
- opts = {class: 'form-control'}
54
- opts[:placeholder] = caption if @caption_as_placeholder
55
- return form_builder.text_field @method, opts
56
- end
57
-
58
- protected
59
-
60
- def render_default_style
61
- return add_link(render_read)
62
- end
63
-
64
- def render_card_style
65
- html = ::Builder::XmlMarkup.new
66
- html.div class: 'row' do
67
- html.p class: 'col-xs-3' do
68
- html.b caption unless @hide_caption
69
- if not @hide_tooltip and tooltip != ''
70
- html << Tooltip.new(tooltip: tooltip, style: :popover).render
71
- end
72
- end
73
- html.p class: 'col-xs-9' do
74
- html << add_link(render_read)
75
- end
76
- end
77
- return html.target!
78
- end
79
-
80
- def render_form_style
81
- form_builder = find_attribute! :form_builder
82
- object = find_attribute! :object
83
- align = @align || find_attribute(:align)
84
-
85
- html = ::Builder::XmlMarkup.new(indent: 2)
86
- html.div class: 'form-group' do
87
-
88
- html.div class: 'col-xs-3' if (@hide_caption or @caption_as_placeholder) and align == 'horizontal'
89
- render_form_label(html)
90
-
91
- if align == 'horizontal'
92
- html.div class: 'col-xs-9' do
93
- html << render_write
94
- render_form_tooltip(html)
95
- end
96
- else
97
- html << render_write
98
- render_form_tooltip(html)
99
- end
100
-
101
- end
102
- return html.target!
103
- end
104
-
105
- def render_form_label(html)
106
- align = @align || find_attribute(:align)
107
- html_opts = if @hide_caption or @caption_as_placeholder or align == 'inline'
108
- { class: 'sr-only' }
109
- elsif align == 'horizontal'
110
- { class: 'col-xs-3 control-label' }
111
- else
112
- {}
113
- end
114
- html << form_builder.label(@method, html_opts) do
115
- form_html = ::Builder::XmlMarkup.new
116
- form_html.text! caption
117
- form_html.target!.html_safe
118
- end
119
- end
120
-
121
- def render_form_tooltip(html)
122
- if not @hide_tooltip and tooltip != ''
123
- html.p tooltip, class: 'help-block'
124
- end
125
- end
126
-
127
- def form_builder
128
- return find_attribute! :form_builder
129
- end
130
-
131
- def add_surrounding_tag(html)
132
- if @surrounding_tag
133
- opts = {}
134
- opts[:class] = @html_class.join(' ') unless @html_class.empty?
135
- return h.content_tag @surrounding_tag.to_sym, html, opts
136
- else
137
- return html
138
- end
139
- end
140
-
141
- def add_link(value)
142
- if @link
143
- return Link.new(parent: @parent, caption: value.to_s).render
144
- else
145
- return value
146
- end
147
- end
148
-
149
- def hide?
150
- if @only_for
151
- object = find_attribute! :object
152
- if @only_for.is_a? Array
153
- unless @only_for.any? { |class_name| object.is_a? class_name.camelcase.constantize }
154
- return true
155
- end
156
- else
157
- unless object.is_a? @only_for.camelcase.constantize
158
- return true
159
- end
160
- end
161
- end
162
- return false
163
- end
164
-
165
- end
166
- end
@@ -1,59 +0,0 @@
1
- module Interview
2
- class BooleanAttribute < Attribute
3
-
4
- def render_read
5
- return '' if value.nil?
6
- html = ::Builder::XmlMarkup.new
7
- if value
8
- html.span '', class: 'glyphicon glyphicon-ok'
9
- else
10
- html.text! ''
11
- end
12
- return html.target!
13
- end
14
-
15
- def render_write
16
- form_builder.check_box @method
17
- end
18
-
19
- protected
20
-
21
- def render_form_style
22
- form_builder = find_attribute! :form_builder
23
- object = find_attribute! :object
24
- align = @align || find_attribute(:align)
25
-
26
- html = ::Builder::XmlMarkup.new
27
- html.div class: "form-group attribute_#{@method.to_s} collapse in" do
28
- if align == 'horizontal'
29
- html.div class: 'col-xs-9 col-xs-offset-3' do
30
- html << render_checkbox
31
- end
32
- else
33
- html << render_checkbox
34
- end
35
- end
36
- return html.target!
37
- end
38
-
39
- def render_checkbox
40
- html = ::Builder::XmlMarkup.new
41
- html << render_write
42
- html.text! ' '
43
- html << form_builder.label(@method) do
44
- form_html = ::Builder::XmlMarkup.new
45
- form_html.text! caption
46
- # if not @hide_tooltip and tooltip != ''
47
- # form_html.text! ' '
48
- # form_html << Tooltip.new(tooltip: tooltip, style: :popover).render
49
- # end
50
- form_html.target!.html_safe
51
- end
52
- if not @hide_tooltip and tooltip != ''
53
- html.p tooltip, class: 'help-block'
54
- end
55
- return html.target!
56
- end
57
-
58
- end
59
- end