ui_bibz 2.0.0.alpha29 → 2.0.0.alpha30
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.
- checksums.yaml +4 -4
- data/Gemfile.lock +2 -2
- data/app/assets/javascripts/form.coffee +4 -3
- data/app/inputs/custom_inputs/auto_complete_field_input.rb +8 -7
- data/app/inputs/custom_inputs/collection_input.rb +14 -6
- data/app/inputs/custom_inputs/date_picker_field_input.rb +2 -3
- data/app/inputs/custom_inputs/dropdown_select_field_input.rb +1 -1
- data/app/inputs/custom_inputs/formula_field_input.rb +10 -3
- data/app/inputs/custom_inputs/markdown_editor_field_input.rb +2 -3
- data/app/inputs/custom_inputs/multi_column_field_input.rb +2 -56
- data/app/inputs/custom_inputs/select_field_input.rb +1 -1
- data/app/inputs/custom_inputs/string_input.rb +13 -0
- data/app/inputs/custom_inputs/surround_field_input.rb +2 -3
- data/app/inputs/custom_inputs/switch_field_input.rb +2 -3
- data/lib/ui_bibz/ui/core/forms/dates/date_picker_field.rb +1 -5
- data/lib/ui_bibz/ui/core/forms/numbers/formula_field.rb +8 -12
- data/lib/ui_bibz/ui/core/forms/textareas/markdown_editor_field.rb +1 -5
- data/lib/ui_bibz/ui/core/forms/texts/auto_complete_field.rb +1 -5
- data/lib/ui_bibz/ui/core/forms/texts/surround_field.rb +1 -5
- data/lib/ui_bibz/ui/core/navs/components/navbar_form.rb +6 -2
- data/lib/ui_bibz/version.rb +1 -1
- data/test/dummy/db/migrate/20150123191805_create_users.rb +3 -0
- data/test/dummy/db/schema.rb +5 -2
- data/test/factories/user.rb +1 -0
- data/test/simple_form_test.rb +49 -20
- data/test/ui/core/forms/numbers/formula_field_test.rb +1 -1
- metadata +3 -4
- data/test/dummy/db/migrate/20150123191721_user.rb +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e95355ea721ae8b499aa2062ee1b516a6e28235
|
4
|
+
data.tar.gz: 0245101963fbaefb1525f0dc4cdfd6b9021dd02a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0e18e4012b7059d30f707b005805971d0f0a6d26a95cf441eb23c797554cdba1d1e7f39428ed7d124cb11b36c2b7cbbcb16680087cc7d23aefb93b95c19d50ae
|
7
|
+
data.tar.gz: 4cc538fed4faeb12b190a13921d466d23969642252d4c517334f3731f75e844cb9d6ed44c5a14ced75c014e60e8511aff40284b827b0da13118e50b78d3de709
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
ui_bibz (2.0.0.
|
4
|
+
ui_bibz (2.0.0.alpha30)
|
5
5
|
bootstrap (= 4.0.0.alpha5)
|
6
6
|
font-awesome-sass
|
7
7
|
haml
|
@@ -143,7 +143,7 @@ GEM
|
|
143
143
|
simple_form (3.4.0)
|
144
144
|
actionpack (> 4, < 5.1)
|
145
145
|
activemodel (> 4, < 5.1)
|
146
|
-
simplecov (0.
|
146
|
+
simplecov (0.14.0)
|
147
147
|
docile (~> 1.1.0)
|
148
148
|
json (>= 1.8, < 3)
|
149
149
|
simplecov-html (~> 0.10.0)
|
@@ -31,10 +31,11 @@
|
|
31
31
|
|
32
32
|
formula: ->
|
33
33
|
me = this
|
34
|
-
|
35
|
-
|
34
|
+
formula_input_fields = $('.formula-field')
|
35
|
+
formula_input_fields.each ->
|
36
|
+
me.updateFormulaField($(this))
|
36
37
|
|
37
|
-
|
38
|
+
formula_input_fields.on 'keyup', ->
|
38
39
|
me.updateFormulaField($(this))
|
39
40
|
|
40
41
|
updateFormulaField: (field) ->
|
@@ -1,15 +1,16 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class AutoCompleteFieldInput <
|
2
|
+
class AutoCompleteFieldInput < CollectionInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Texts
|
4
|
-
include ActionView::Helpers::FormOptionsHelper
|
5
4
|
|
6
5
|
def input(wrapper_options)
|
7
|
-
|
8
|
-
|
9
|
-
options = options.merge({ builder: @builder })
|
10
|
-
options = options.merge(option_tags: options_from_collection_for_select(collection, label_method, label_method))
|
6
|
+
UiBibz::Ui::Core::Forms::Texts::AutoCompleteField.new(input_attribute_name, new_options, input_html_options).render
|
7
|
+
end
|
11
8
|
|
12
|
-
|
9
|
+
def input_html_options
|
10
|
+
opts = super
|
11
|
+
opts = opts.merge({ disabled: options[:disabled] }) unless options[:disabled].blank?
|
12
|
+
opts = opts.merge({ value: @builder.object.send(attribute_name) })
|
13
|
+
opts
|
13
14
|
end
|
14
15
|
end
|
15
16
|
end
|
@@ -14,16 +14,17 @@ module CustomInputs
|
|
14
14
|
|
15
15
|
def new_options
|
16
16
|
label_method, value_method = detect_collection_methods
|
17
|
+
|
17
18
|
if options[:grouped] == true
|
18
19
|
options.merge({ option_tags: option_groups_from_collection_for_select(
|
19
20
|
grouped_collection,
|
20
21
|
group_method, group_label_method,
|
21
22
|
value_method, label_method,
|
22
|
-
|
23
|
+
@builder.object.send(attribute_name)
|
23
24
|
)})
|
24
25
|
else
|
25
26
|
options.merge({ option_tags: options_from_collection_for_select(
|
26
|
-
collection, value_method, label_method,
|
27
|
+
collection, value_method, label_method, @builder.object.send(attribute_name)
|
27
28
|
)})
|
28
29
|
end
|
29
30
|
end
|
@@ -35,11 +36,18 @@ module CustomInputs
|
|
35
36
|
end
|
36
37
|
end
|
37
38
|
|
39
|
+
def input_attribute_name
|
40
|
+
"#{ @builder.object.class.to_s.parameterize.underscore }[#{ attribute_name }]"
|
41
|
+
end
|
42
|
+
|
38
43
|
def collection
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
44
|
+
@collection ||= begin
|
45
|
+
if options[:grouped]
|
46
|
+
grouped_collection.map { |collection| collection.try(:send, group_method) }.detect(&:present?) || []
|
47
|
+
else
|
48
|
+
collection = options.delete(:collection) || self.class.boolean_collection
|
49
|
+
collection.respond_to?(:call) ? collection.call : collection.to_a
|
50
|
+
end
|
43
51
|
end
|
44
52
|
end
|
45
53
|
|
@@ -1,10 +1,9 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class DatePickerFieldInput <
|
2
|
+
class DatePickerFieldInput < StringInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Dates
|
4
4
|
|
5
5
|
def input(wrapper_options)
|
6
|
-
|
7
|
-
UiBibz::Ui::Core::Forms::Dates::DatePickerField.new(attribute_name, options, input_html_options).render
|
6
|
+
UiBibz::Ui::Core::Forms::Dates::DatePickerField.new(input_attribute_name, options, input_html_options).render
|
8
7
|
end
|
9
8
|
|
10
9
|
end
|
@@ -2,7 +2,7 @@ module CustomInputs
|
|
2
2
|
class DropdownSelectFieldInput < CollectionInput
|
3
3
|
|
4
4
|
def input(wrapper_options)
|
5
|
-
UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new(
|
5
|
+
UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new(input_attribute_name, new_options, input_html_options).render
|
6
6
|
end
|
7
7
|
|
8
8
|
end
|
@@ -1,10 +1,17 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class FormulaFieldInput <
|
2
|
+
class FormulaFieldInput < StringInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Numbers
|
4
4
|
|
5
5
|
def input(wrapper_options)
|
6
|
-
|
7
|
-
|
6
|
+
UiBibz::Ui::Core::Forms::Numbers::FormulaField.new(input_attribute_name, options, input_html_options).render
|
7
|
+
end
|
8
|
+
|
9
|
+
def input_html_options
|
10
|
+
super.merge({ value: @builder.object.send(attribute_name), formula_field_value: @builder.object.send(options[:formula_field_name] || attribute_formula_name)})
|
11
|
+
end
|
12
|
+
|
13
|
+
def attribute_formula_name
|
14
|
+
"#{ attribute_name }_formula"
|
8
15
|
end
|
9
16
|
|
10
17
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class MarkdownEditorFieldInput <
|
2
|
+
class MarkdownEditorFieldInput < StringInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Textareas
|
4
4
|
|
5
5
|
def input(wrapper_options)
|
6
|
-
|
7
|
-
UiBibz::Ui::Core::Forms::Textareas::MarkdownEditorField.new(attribute_name, options, input_html_options).render
|
6
|
+
UiBibz::Ui::Core::Forms::Textareas::MarkdownEditorField.new(input_attribute_name, options, input_html_options).render
|
8
7
|
end
|
9
8
|
|
10
9
|
end
|
@@ -1,63 +1,9 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
|
3
|
-
class MultiColumnFieldInput < SimpleForm::Inputs::CollectionInput
|
2
|
+
class MultiColumnFieldInput < CollectionInput
|
4
3
|
include UiBibz::Ui::Core::Forms::Selects
|
5
4
|
|
6
5
|
def input(wrapper_options)
|
7
|
-
|
8
|
-
i = UiBibz::Ui::Core::Forms::Selects::MultiColumnField.new(attribute_name, options, input_html_options)
|
9
|
-
|
10
|
-
input_options.delete(:prompt)
|
11
|
-
input_options.merge!({include_blank: false})
|
12
|
-
|
13
|
-
if options[:grouped] == true
|
14
|
-
@builder.grouped_collection_select(
|
15
|
-
attribute_name, grouped_collection,
|
16
|
-
group_method, group_label_method,
|
17
|
-
value_method, label_method,
|
18
|
-
input_options, i.html_options
|
19
|
-
)
|
20
|
-
else
|
21
|
-
@builder.collection_select(
|
22
|
-
attribute_name, collection, value_method, label_method,
|
23
|
-
input_options, i.html_options
|
24
|
-
)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def grouped_collection
|
29
|
-
@grouped_collection ||= begin
|
30
|
-
grouped_collection = options.delete(:collection)
|
31
|
-
grouped_collection.respond_to?(:call) ? grouped_collection.call : grouped_collection.to_a
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
# Sample collection
|
36
|
-
#def group_collection
|
37
|
-
#@group_collection ||= grouped_collection.map { |collection| collection.try(:send, group_method) }.detect(&:present?) || []
|
38
|
-
#end
|
39
|
-
|
40
|
-
def collection
|
41
|
-
if options[:grouped]
|
42
|
-
@collection ||= grouped_collection.map { |collection| collection.try(:send, group_method) }.detect(&:present?) || []
|
43
|
-
else
|
44
|
-
@collection ||= options[:collection]
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
def group_method
|
49
|
-
@group_method ||= options.delete(:group_method)
|
50
|
-
end
|
51
|
-
|
52
|
-
def group_label_method
|
53
|
-
label = options.delete(:group_label_method)
|
54
|
-
|
55
|
-
unless label
|
56
|
-
common_method_for = detect_common_display_methods(detect_collection_classes(grouped_collection))
|
57
|
-
label = common_method_for[:label]
|
58
|
-
end
|
59
|
-
|
60
|
-
label
|
6
|
+
UiBibz::Ui::Core::Forms::Selects::MultiColumnField.new(attribute_name, new_options, input_html_options).render
|
61
7
|
end
|
62
8
|
|
63
9
|
end
|
@@ -2,7 +2,7 @@ module CustomInputs
|
|
2
2
|
class SelectFieldInput < CollectionInput
|
3
3
|
|
4
4
|
def input(wrapper_options)
|
5
|
-
UiBibz::Ui::Core::Forms::Selects::SelectField.new(
|
5
|
+
UiBibz::Ui::Core::Forms::Selects::SelectField.new(input_attribute_name, new_options, input_html_options).render
|
6
6
|
end
|
7
7
|
end
|
8
8
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class SurroundFieldInput <
|
2
|
+
class SurroundFieldInput < StringInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Texts
|
4
4
|
|
5
5
|
def input(wrapper_options)
|
6
|
-
|
7
|
-
UiBibz::Ui::Core::Forms::Texts::SurroundField.new(attribute_name, options, input_html_options).render
|
6
|
+
UiBibz::Ui::Core::Forms::Texts::SurroundField.new(input_attribute_name, options, input_html_options).render
|
8
7
|
end
|
9
8
|
|
10
9
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
module CustomInputs
|
2
|
-
class SwitchFieldInput <
|
2
|
+
class SwitchFieldInput < StringInput
|
3
3
|
include UiBibz::Ui::Core::Forms::Choices
|
4
4
|
|
5
5
|
def input(wrapper_options)
|
6
|
-
|
7
|
-
UiBibz::Ui::Core::Forms::Choices::SwitchField.new(attribute_name, options, input_html_options).render
|
6
|
+
UiBibz::Ui::Core::Forms::Choices::SwitchField.new(input_attribute_name, options, input_html_options).render
|
8
7
|
end
|
9
8
|
|
10
9
|
end
|
@@ -67,11 +67,7 @@ module UiBibz::Ui::Core::Forms::Dates
|
|
67
67
|
private
|
68
68
|
|
69
69
|
def text_field_input_tag name
|
70
|
-
|
71
|
-
text_field_tag name, html_options[:value], html_options
|
72
|
-
else
|
73
|
-
options[:builder].text_field name, html_options
|
74
|
-
end
|
70
|
+
text_field_tag name, html_options[:value], html_options
|
75
71
|
end
|
76
72
|
|
77
73
|
def component_html_data
|
@@ -56,19 +56,11 @@ module UiBibz::Ui::Core::Forms::Numbers
|
|
56
56
|
private
|
57
57
|
|
58
58
|
def text_field_input_tag
|
59
|
-
|
60
|
-
text_field_tag content, html_options[:value], readonly: true, class: 'formula-field-result form-control'
|
61
|
-
else
|
62
|
-
options[:builder].text_field content, readonly: true, class: 'formula-field-result form-control'
|
63
|
-
end
|
59
|
+
text_field_tag content, html_options.delete(:value), readonly: true, class: 'formula-field-result form-control'
|
64
60
|
end
|
65
61
|
|
66
62
|
def text_field_formula_input_tag
|
67
|
-
|
68
|
-
text_field_tag formula_field_name, '', html_options
|
69
|
-
else
|
70
|
-
options[:builder].text_field formula_field_name, html_options
|
71
|
-
end
|
63
|
+
text_field_tag formula_field_name, html_options.delete(:formula_field_value), html_options.except(:value)
|
72
64
|
end
|
73
65
|
|
74
66
|
def component_html_classes
|
@@ -86,14 +78,18 @@ module UiBibz::Ui::Core::Forms::Numbers
|
|
86
78
|
end
|
87
79
|
|
88
80
|
def formula_field_name
|
89
|
-
options[:formula_field_name] ||
|
81
|
+
options[:formula_field_name] || content_formula_name
|
82
|
+
end
|
83
|
+
|
84
|
+
def content_formula_name
|
85
|
+
content.to_s.split('').select{ |i| i == "]" }.count > 0 ? content.to_s.gsub(/]$/, "_formula]") : "#{ content }_formula"
|
90
86
|
end
|
91
87
|
|
92
88
|
def formula_field_sign
|
93
89
|
content_tag :span, '=', class: 'formula-field-sign input-group-addon'
|
94
90
|
end
|
95
91
|
|
96
|
-
|
92
|
+
def status
|
97
93
|
"has-#{ options[:status] }" if options[:status]
|
98
94
|
end
|
99
95
|
|
@@ -53,11 +53,7 @@ module UiBibz::Ui::Core::Forms::Textareas
|
|
53
53
|
|
54
54
|
# Render html tag
|
55
55
|
def render
|
56
|
-
|
57
|
-
text_area_tag content, html_options[:value], html_options
|
58
|
-
else
|
59
|
-
options[:builder].text_area content, html_options
|
60
|
-
end
|
56
|
+
text_area_tag content, html_options[:value], html_options
|
61
57
|
end
|
62
58
|
|
63
59
|
private
|
@@ -75,11 +75,7 @@ module UiBibz::Ui::Core::Forms::Texts
|
|
75
75
|
end
|
76
76
|
|
77
77
|
def text_field_input_tag
|
78
|
-
|
79
|
-
text_field_tag content, html_options[:value], html_options
|
80
|
-
else
|
81
|
-
options[:builder].text_field content, html_options
|
82
|
-
end
|
78
|
+
text_field_tag content, html_options[:value], html_options
|
83
79
|
end
|
84
80
|
|
85
81
|
def component_html_options
|
@@ -63,11 +63,7 @@ module UiBibz::Ui::Core::Forms::Texts
|
|
63
63
|
|
64
64
|
# Simple_form or not
|
65
65
|
def text_field_input_tag
|
66
|
-
|
67
|
-
text_field_tag content, html_options[:value], html_options
|
68
|
-
else
|
69
|
-
options[:builder].text_field content, html_options
|
70
|
-
end
|
66
|
+
text_field_tag content, html_options[:value], html_options
|
71
67
|
end
|
72
68
|
|
73
69
|
def component_html_classes
|
@@ -47,10 +47,10 @@ module UiBibz::Ui::Core::Navs
|
|
47
47
|
init_haml_helpers
|
48
48
|
@options = options
|
49
49
|
if type == :form_for
|
50
|
-
@form = form_for(model_or_url,
|
50
|
+
@form = form_for(model_or_url, new_option, &block)
|
51
51
|
else
|
52
52
|
#@form = form_tag(model_or_url, class: "navbar-form form-inline #{ position }", block)
|
53
|
-
html_options = html_options_for_form(model_or_url,
|
53
|
+
html_options = html_options_for_form(model_or_url, new_option)
|
54
54
|
@form = form_tag_with_body(html_options, capture(&block))
|
55
55
|
end
|
56
56
|
end
|
@@ -62,6 +62,10 @@ module UiBibz::Ui::Core::Navs
|
|
62
62
|
|
63
63
|
private
|
64
64
|
|
65
|
+
def new_option
|
66
|
+
(@options || {}).merge({ class: "navbar-form form-inline #{ position }" })
|
67
|
+
end
|
68
|
+
|
65
69
|
def protect_against_forgery?
|
66
70
|
false
|
67
71
|
end
|
data/lib/ui_bibz/version.rb
CHANGED
data/test/dummy/db/schema.rb
CHANGED
@@ -30,8 +30,11 @@ ActiveRecord::Schema.define(version: 20170309084453) do
|
|
30
30
|
t.string "name_en"
|
31
31
|
t.string "body_fr"
|
32
32
|
t.string "body_en"
|
33
|
-
t.
|
34
|
-
t.
|
33
|
+
t.boolean "active"
|
34
|
+
t.float "price"
|
35
|
+
t.string "price_formula"
|
36
|
+
t.datetime "created_at", null: false
|
37
|
+
t.datetime "updated_at", null: false
|
35
38
|
end
|
36
39
|
|
37
40
|
end
|
data/test/factories/user.rb
CHANGED
data/test/simple_form_test.rb
CHANGED
@@ -7,8 +7,8 @@ include SimpleForm::ActionViewExtensions::FormHelper
|
|
7
7
|
class SimpleFormTest < ActionView::TestCase
|
8
8
|
|
9
9
|
setup do
|
10
|
-
User.where(name_fr: 'test1').first_or_create
|
11
|
-
User.where(name_fr: 'test2').first_or_create
|
10
|
+
User.where(name_fr: 'test1', active: true).first_or_create
|
11
|
+
User.where(name_fr: 'test2', active: false).first_or_create
|
12
12
|
continent = Continent.where(name: 'Europe').first_or_create
|
13
13
|
Country.where(name: 'France', continent_id: continent.id).first_or_create
|
14
14
|
Country.where(name: 'Deutchland', continent_id: continent.id).first_or_create
|
@@ -24,18 +24,18 @@ class SimpleFormTest < ActionView::TestCase
|
|
24
24
|
f.input :name_fr, as: :auto_complete_field, collection: @users, label_method: :name_fr
|
25
25
|
end
|
26
26
|
|
27
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group auto_complete_field optional user_name_fr\"><label class=\"control-label auto_complete_field optional\" for=\"user_name_fr\">Name fr</label><input
|
28
|
-
<option value=\"
|
27
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group auto_complete_field optional user_name_fr\"><label class=\"control-label auto_complete_field optional\" for=\"user_name_fr\">Name fr</label><input type=\"text\" name=\"user[name_fr]\" id=\"user_name_fr\" value=\"test1\" class=\"auto_complete_field optional form-control\" autocomplete=\"true\" list=\"user_name_fr-datalist\" /><datalist id=\"user_name_fr-datalist\"><option value=\"1\">test1</option>
|
28
|
+
<option value=\"2\">test2</option></datalist></div></form>"
|
29
29
|
|
30
30
|
assert_equal expected, actual
|
31
31
|
end
|
32
32
|
|
33
33
|
test 'date picker field input in simple form' do
|
34
34
|
actual = simple_form_for @user do |f|
|
35
|
-
f.input :
|
35
|
+
f.input :created_at, as: :date_picker_field
|
36
36
|
end
|
37
37
|
|
38
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group date_picker_field optional
|
38
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group date_picker_field optional user_created_at\"><label class=\"control-label date_picker_field optional\" for=\"user_created_at\">Created at</label><input type=\"text\" name=\"user[created_at]\" id=\"user_created_at\" class=\"date_picker_field optional date_picker form-control\" data-date-locale=\"en\" data-provide=\"datepicker\" data-date-format=\"dd/mm/yyyy\" data-date-today-btn=\"linked\" /></div></form>"
|
39
39
|
|
40
40
|
assert_equal expected, actual
|
41
41
|
end
|
@@ -45,7 +45,7 @@ class SimpleFormTest < ActionView::TestCase
|
|
45
45
|
f.input :name_fr, as: :dropdown_select_field, collection: @users, label_method: :name_fr
|
46
46
|
end
|
47
47
|
|
48
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group dropdown_select_field optional user_name_fr\"><label class=\"control-label dropdown_select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"name_fr\" id=\"
|
48
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group dropdown_select_field optional user_name_fr\"><label class=\"control-label dropdown_select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"dropdown_select_field optional dropdown-select-field\"><option value=\"1\">test1</option>
|
49
49
|
<option value=\"2\">test2</option></select></div></form>"
|
50
50
|
|
51
51
|
assert_equal expected, actual
|
@@ -57,18 +57,21 @@ class SimpleFormTest < ActionView::TestCase
|
|
57
57
|
f.input :name_fr, as: :dropdown_select_field, collection: @continents, toto: 'lala', grouped: true, group_method: :countries
|
58
58
|
end
|
59
59
|
|
60
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group dropdown_select_field optional user_name_fr\"><label class=\"control-label dropdown_select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"name_fr\" id=\"
|
60
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group dropdown_select_field optional user_name_fr\"><label class=\"control-label dropdown_select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"dropdown_select_field optional dropdown-select-field\"><optgroup label=\"Europe\"><option value=\"1\">France</option>
|
61
61
|
<option value=\"2\">Deutchland</option></optgroup></select></div></form>"
|
62
62
|
|
63
63
|
assert_equal expected, actual
|
64
64
|
end
|
65
65
|
|
66
66
|
test 'formula field input in simple form' do
|
67
|
+
@user.price = 3.0
|
68
|
+
@user.price_formula = "1+2"
|
69
|
+
|
67
70
|
actual = simple_form_for @user do |f|
|
68
|
-
f.input :
|
71
|
+
f.input :price, as: :formula_field
|
69
72
|
end
|
70
73
|
|
71
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group formula_field optional
|
74
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group formula_field optional user_price\"><label class=\"control-label formula_field optional\" for=\"user_price\">Price</label><div class=\"input-group formula_field\"><input type=\"text\" name=\"user[price_formula]\" id=\"user_price_formula\" value=\"1+2\" class=\"formula_field optional formula-field form-control\" /><span class=\"formula-field-sign input-group-addon\">=</span><input type=\"text\" name=\"user[price]\" id=\"user_price\" value=\"3.0\" readonly=\"readonly\" class=\"formula-field-result form-control\" /><span class=\"formula-field-alert input-group-addon\" data-toggle=\"tooltip\"><i class=\"glyph-danger glyph fa fa-exclamation-triangle\"></i></span></div></div></form>"
|
72
75
|
|
73
76
|
assert_equal expected, actual
|
74
77
|
end
|
@@ -78,8 +81,8 @@ class SimpleFormTest < ActionView::TestCase
|
|
78
81
|
f.input :name_fr, as: :markdown_editor_field
|
79
82
|
end
|
80
83
|
|
81
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group markdown_editor_field optional user_name_fr\"><label class=\"control-label markdown_editor_field optional\" for=\"user_name_fr\">Name fr</label><textarea class=\"markdown_editor_field optional\" data-provide=\"markdown\" data-iconlibrary=\"fa\"
|
82
|
-
|
84
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group markdown_editor_field optional user_name_fr\"><label class=\"control-label markdown_editor_field optional\" for=\"user_name_fr\">Name fr</label><textarea name=\"user[name_fr]\" id=\"user_name_fr\" class=\"markdown_editor_field optional\" data-provide=\"markdown\" data-iconlibrary=\"fa\">
|
85
|
+
</textarea></div></form>"
|
83
86
|
|
84
87
|
assert_equal expected, actual
|
85
88
|
end
|
@@ -89,7 +92,7 @@ test1</textarea></div></form>"
|
|
89
92
|
f.input :name_fr, as: :multi_column_field, collection: @users, label_method: :name_fr
|
90
93
|
end
|
91
94
|
|
92
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group multi_column_field optional user_name_fr\"><label class=\"control-label multi_column_field optional\" for=\"user_name_fr\">Name fr</label><
|
95
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group multi_column_field optional user_name_fr\"><label class=\"control-label multi_column_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"name_fr[]\" id=\"name_fr\" class=\"multi_column_field optional multi-column-field\" multiple=\"multiple\"><option value=\"1\">test1</option>
|
93
96
|
<option value=\"2\">test2</option></select></div></form>"
|
94
97
|
|
95
98
|
assert_equal expected, actual
|
@@ -123,17 +126,17 @@ test1</textarea></div></form>"
|
|
123
126
|
f.input :name_fr, as: :surround_field
|
124
127
|
end
|
125
128
|
|
126
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group surround_field optional user_name_fr\"><label class=\"control-label surround_field optional\" for=\"user_name_fr\">Name fr</label><input
|
129
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group surround_field optional user_name_fr\"><label class=\"control-label surround_field optional\" for=\"user_name_fr\">Name fr</label><input type=\"text\" name=\"user[name_fr]\" id=\"user_name_fr\" class=\"surround_field optional form-control\" /></div></form>"
|
127
130
|
|
128
131
|
assert_equal expected, actual
|
129
132
|
end
|
130
133
|
|
131
134
|
test 'switch field input in simple form' do
|
132
135
|
actual = simple_form_for @user do |f|
|
133
|
-
f.input :
|
136
|
+
f.input :active, as: :switch_field, collection: @users, label_method: :name_fr
|
134
137
|
end
|
135
138
|
|
136
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group switch_field optional
|
139
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group switch_field optional user_active\"><label class=\"control-label switch_field optional\" for=\"user_active\">Active</label><input type=\"checkbox\" name=\"user[active]\" id=\"user_active\" class=\"switch_field optional switch-field\" /></div></form>"
|
137
140
|
|
138
141
|
assert_equal expected, actual
|
139
142
|
end
|
@@ -153,7 +156,7 @@ test1</textarea></div></form>"
|
|
153
156
|
f.input :name_fr, as: :select_field, collection: @users, label_method: :name_fr
|
154
157
|
end
|
155
158
|
|
156
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"name_fr\" id=\"
|
159
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"select_field optional select-field form-control\"><option value=\"1\">test1</option>
|
157
160
|
<option value=\"2\">test2</option></select></div></form>"
|
158
161
|
|
159
162
|
assert_equal expected, actual
|
@@ -164,8 +167,8 @@ test1</textarea></div></form>"
|
|
164
167
|
f.input :name_fr, as: :select_field, refresh: { target: { data: [] }}, collection: @users, label_method: :name_fr
|
165
168
|
end
|
166
169
|
|
167
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><div class=\"input-group field-refresh\"><select name=\"name_fr\" id=\"
|
168
|
-
<option value=\"2\">test2</option></select><span class=\"input-group-btn\"><button data-connect=\"{"events":"click","mode":"remote","target":{"selector":"#
|
170
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><div class=\"input-group field-refresh\"><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"select_field optional select-field form-control\"><option value=\"1\">test1</option>
|
171
|
+
<option value=\"2\">test2</option></select><span class=\"input-group-btn\"><button data-connect=\"{"events":"click","mode":"remote","target":{"selector":"#user_name_fr","url":"","data":[]}}\" class=\"btn-primary ui-bibz-connect input-refresh-button btn\"><i class=\"glyph fa fa-refresh\"></i> </button></span></div></div></form>"
|
169
172
|
|
170
173
|
assert_equal expected, actual
|
171
174
|
end
|
@@ -176,7 +179,33 @@ test1</textarea></div></form>"
|
|
176
179
|
f.input :name_fr, as: :select_field, collection: @continents, toto: 'lala', grouped: true, group_method: :countries
|
177
180
|
end
|
178
181
|
|
179
|
-
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"name_fr\" id=\"
|
182
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"select_field optional select-field form-control\"><optgroup label=\"Europe\"><option value=\"1\">France</option>
|
183
|
+
<option value=\"2\">Deutchland</option></optgroup></select></div></form>"
|
184
|
+
|
185
|
+
assert_equal expected, actual
|
186
|
+
end
|
187
|
+
|
188
|
+
test 'test collection with selected option in select field into simple form' do
|
189
|
+
|
190
|
+
@user.name_fr = 1
|
191
|
+
actual = simple_form_for @user do |f|
|
192
|
+
f.input :name_fr, as: :select_field, collection: @countries
|
193
|
+
end
|
194
|
+
|
195
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"select_field optional select-field form-control\"><option selected=\"selected\" value=\"1\">France</option>
|
196
|
+
<option value=\"2\">Deutchland</option></select></div></form>"
|
197
|
+
|
198
|
+
assert_equal expected, actual
|
199
|
+
end
|
200
|
+
|
201
|
+
test 'test collection with selected optiongroup in select field into simple form' do
|
202
|
+
|
203
|
+
@user.name_fr = 1
|
204
|
+
actual = simple_form_for @user do |f|
|
205
|
+
f.input :name_fr, as: :select_field, collection: @continents, toto: 'lala', grouped: true, group_method: :countries
|
206
|
+
end
|
207
|
+
|
208
|
+
expected = "<form class=\"simple_form edit_user\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"✓\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"form-group select_field optional user_name_fr\"><label class=\"control-label select_field optional\" for=\"user_name_fr\">Name fr</label><select name=\"user[name_fr]\" id=\"user_name_fr\" class=\"select_field optional select-field form-control\"><optgroup label=\"Europe\"><option selected=\"selected\" value=\"1\">France</option>
|
180
209
|
<option value=\"2\">Deutchland</option></optgroup></select></div></form>"
|
181
210
|
|
182
211
|
assert_equal expected, actual
|
@@ -5,7 +5,7 @@ class FormulaFieldTest < ActionView::TestCase
|
|
5
5
|
|
6
6
|
test 'formula_field' do
|
7
7
|
actual = UiBibz::Ui::Core::Forms::Numbers::FormulaField.new('value').render
|
8
|
-
expected = "<div class=\"input-group formula_field\"><input type=\"text\" name=\"value_formula\" id=\"value_formula\"
|
8
|
+
expected = "<div class=\"input-group formula_field\"><input type=\"text\" name=\"value_formula\" id=\"value_formula\" class=\"formula-field form-control\" /><span class=\"formula-field-sign input-group-addon\">=</span><input type=\"text\" name=\"value\" id=\"value\" readonly=\"readonly\" class=\"formula-field-result form-control\" /><span class=\"formula-field-alert input-group-addon\" data-toggle=\"tooltip\"><i class=\"glyph-danger glyph fa fa-exclamation-triangle\"></i></span></div>"
|
9
9
|
|
10
10
|
assert_equal expected, actual
|
11
11
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ui_bibz
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.alpha30
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thooams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -243,6 +243,7 @@ files:
|
|
243
243
|
- app/inputs/custom_inputs/multi_select_field_input.rb
|
244
244
|
- app/inputs/custom_inputs/radio_field_input.rb
|
245
245
|
- app/inputs/custom_inputs/select_field_input.rb
|
246
|
+
- app/inputs/custom_inputs/string_input.rb
|
246
247
|
- app/inputs/custom_inputs/surround_field_input.rb
|
247
248
|
- app/inputs/custom_inputs/switch_field_input.rb
|
248
249
|
- config/initializers/will_paginate.rb
|
@@ -381,7 +382,6 @@ files:
|
|
381
382
|
- test/dummy/config/locales/en.yml
|
382
383
|
- test/dummy/config/routes.rb
|
383
384
|
- test/dummy/config/secrets.yml
|
384
|
-
- test/dummy/db/migrate/20150123191721_user.rb
|
385
385
|
- test/dummy/db/migrate/20150123191805_create_users.rb
|
386
386
|
- test/dummy/db/migrate/20170309084406_continents.rb
|
387
387
|
- test/dummy/db/migrate/20170309084453_countries.rb
|
@@ -518,7 +518,6 @@ test_files:
|
|
518
518
|
- test/dummy/config/locales/en.yml
|
519
519
|
- test/dummy/config/routes.rb
|
520
520
|
- test/dummy/config/secrets.yml
|
521
|
-
- test/dummy/db/migrate/20150123191721_user.rb
|
522
521
|
- test/dummy/db/migrate/20150123191805_create_users.rb
|
523
522
|
- test/dummy/db/migrate/20170309084406_continents.rb
|
524
523
|
- test/dummy/db/migrate/20170309084453_countries.rb
|