# Use this setup block to configure all options available in SimpleForm. SimpleForm.setup do |config| config.error_notification_class = 'alert alert-danger' config.button_class = 'btn btn-default' config.boolean_label_class = nil config.wrappers :vertical_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.use :placeholder b.optional :maxlength b.optional :pattern b.optional :min_max b.optional :readonly b.use :label, class: 'control-label' b.use :input, class: 'form-control' b.use :error, wrap_with: { tag: 'span', class: 'help-block' } b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end config.wrappers :vertical_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.use :placeholder b.optional :maxlength b.optional :readonly b.use :label, class: 'control-label' b.use :input b.use :error, wrap_with: { tag: 'span', class: 'help-block' } b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end config.wrappers :vertical_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.optional :readonly b.wrapper tag: 'div', class: 'checkbox checkbox-primary' do |ba| ba.use :label_input end b.use :error, wrap_with: { tag: 'span', class: 'help-block' } b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end config.wrappers :vertical_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.optional :readonly b.use :label, class: 'control-label' b.use :input b.use :error, wrap_with: { tag: 'span', class: 'help-block' } b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end config.wrappers :horizontal_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.use :placeholder b.optional :maxlength b.optional :pattern b.optional :min_max b.optional :readonly b.use :label, class: 'col-sm-3 control-label' b.wrapper tag: 'div', class: 'col-sm-9' do |ba| ba.use :input, class: 'form-control' ba.use :error, wrap_with: { tag: 'span', class: 'help-block' } ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end end config.wrappers :horizontal_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.use :placeholder b.optional :maxlength b.optional :readonly b.use :label, class: 'col-sm-3 control-label' b.wrapper tag: 'div', class: 'col-sm-9' do |ba| ba.use :input ba.use :error, wrap_with: { tag: 'span', class: 'help-block' } ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end end config.wrappers :horizontal_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.optional :readonly b.wrapper tag: 'div', class: 'col-sm-offset-3 col-sm-9' do |wr| wr.wrapper tag: 'div', class: 'checkbox' do |ba| ba.use :label_input, class: 'col-sm-9' end wr.use :error, wrap_with: { tag: 'span', class: 'help-block' } wr.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end end config.wrappers :horizontal_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.optional :readonly b.use :label, class: 'col-sm-3 control-label' b.wrapper tag: 'div', class: 'col-sm-9' do |ba| ba.use :input ba.use :error, wrap_with: { tag: 'span', class: 'help-block' } ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end end config.wrappers :inline_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| b.use :html5 b.use :placeholder b.optional :maxlength b.optional :pattern b.optional :min_max b.optional :readonly b.use :label, class: 'sr-only' b.use :input, class: 'form-control' b.use :error, wrap_with: { tag: 'span', class: 'help-block' } b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } end # Wrappers for forms and inputs using the Bootstrap toolkit. # Check the Bootstrap docs (http://getbootstrap.com) # to learn about the different styles for forms and inputs, # buttons and other elements. config.default_wrapper = :vertical_form config.wrapper_mappings = { check_boxes: :vertical_radio_and_checkboxes, radio_buttons: :vertical_radio_and_checkboxes, file: :vertical_file_input, boolean: :vertical_boolean, } end # # Use this setup block to configure all options available in SimpleForm. # # File Path: RAILS_ROOT/config/initializers/simple_form_bootstrap.rb # SimpleForm.setup do |config| # config.wrappers :bootstrap, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| # b.use :html5 # b.use :placeholder # b.use :label, class: 'control-label' # b.use :input # b.use :error, wrap_with: { tag: 'span', class: 'help-block' } # b.use :hint, wrap_with: { tag: 'p', class: 'help-block' } # end # # config.wrappers :prepend, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| # b.use :html5 # b.use :placeholder # b.use :label, class: 'control-label' # b.wrapper tag: 'div', class: 'input-group' do |input| # input.wrapper tag: 'div', class: 'input-prepend' do |prepend| # prepend.use :input # end # input.use :hint, wrap_with: { tag: 'span', class: 'help-block' } # input.use :error, wrap_with: { tag: 'span', class: 'help-inline' } # end # end # # config.wrappers :append, tag: 'div', class: 'form-group', error_class: 'has-error' do |b| # b.use :html5 # b.use :placeholder # b.use :label # b.wrapper tag: 'div', class: 'input-group' do |input| # input.wrapper tag: 'div', class: 'input-append' do |append| # append.use :input # end # input.use :hint, wrap_with: { tag: 'span', class: 'help-block' } # input.use :error, wrap_with: { tag: 'span', class: 'help-inline' } # end # end # config.error_notification_class = 'alert alert-danger' # # # Wrappers for forms and inputs using the Twitter Bootstrap toolkit. # # Check the Bootstrap docs (http://twitter.github.com/bootstrap) # # to learn about the different styles for forms and inputs, # # buttons and other elements. # config.default_wrapper = :bootstrap # end # # # inputs = %w[ # CollectionSelectInput # DateTimeInput # FileInput # GroupedCollectionSelectInput # NumericInput # PasswordInput # RangeInput # StringInput # TextInput # ] # # inputs.each do |input_type| # superclass = "SimpleForm::Inputs::#{input_type}".constantize # # new_class = Class.new(superclass) do # def input_html_classes # super.push('form-control') # end # end # # Object.const_set(input_type, new_class) # end