diff --git a/app/assets/stylesheets/supplier/foundation1/components/_forms.css.sass b/app/assets/stylesheets/supplier/foundation1/components/_forms.css.sass index ea786eec..f08f6325 100644 --- a/app/assets/stylesheets/supplier/foundation1/components/_forms.css.sass +++ b/app/assets/stylesheets/supplier/foundation1/components/_forms.css.sass @@ -25,7 +25,7 @@ +grid-column($columns: 9, $last-column:true) &.half +grid-column(6) - .error + .error, .error-message color: $alert-color &.form-actions padding-top: 12px diff --git a/config/initializers/custom_form_builder.rb b/config/initializers/custom_form_builder.rb index be1e3f7a..24234b94 100644 --- a/config/initializers/custom_form_builder.rb +++ b/config/initializers/custom_form_builder.rb @@ -11,6 +11,7 @@ class CustomFormBuilder < ActionView::Helpers::FormBuilder ) t.content_tag(:div, elements.inject(&:+), class: 'form-actions') end + def row(attribute, options={}, &block) t = @template classes = [] @@ -19,5 +20,15 @@ class CustomFormBuilder < ActionView::Helpers::FormBuilder classes << 'error' if object.errors[attribute].present? t.content_tag(:div, t.capture(&block), class: classes) end + + def error_message(attribute, options={}, &block) + if errors = object.errors[attribute].presence + t = @template + classes = ['error-message'] + classes << attribute + classes |= Array.wrap(options[:class]) + t.content_tag(:span, options[:message] || errors.join(', '), class: classes) + end + end end ActionView::Base.default_form_builder = CustomFormBuilder