Sha256: bc479e4c6ee8b819d0be0e5676bd1847e7a2277377640a44ab17524bf5691817

Contents?: true

Size: 931 Bytes

Versions: 1

Compression:

Stored size: 931 Bytes

Contents

module BootstrapValidatorRails
  module Helper
    def bootstrap_validation_form_for(object, options = {}, &block)
      options.reverse_merge!({builder: BootstrapValidatorRails::FormBuilder})
      bootstrap_form_for(object, options, &block)
    end

    def bv_options_for(object)
      validators = object.class.validators
      bv_options = {
        fields: {}
      }
      validators.each do |validator|
        methods = validator.attributes
        methods.each do |method|
          @generator = BootstrapValidatorRails::Validators::Generator.new(object, validator, method)
          json = @generator.generate_json
          bv_options[:fields].deep_merge! json
        end
      end
      bv_options.to_json.html_safe
    end

    def bv_javascript_for(object)
      javascript_tag("
        $(document).ready(function() {
          bv_form('.bv_form', #{bv_options_for(object)})
        });
      ")
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bootstrap_validator_rails-0.6.0 lib/bootstrap_validator_rails/helper.rb