Sha256: 21295887f62ebb53ae40133c8d584d5d7863dd35c4fe13fe1fca9fd97f8720a8

Contents?: true

Size: 749 Bytes

Versions: 2

Compression:

Stored size: 749 Bytes

Contents

module ActiveEnum
  module FormHelpers
    module Formtastic
      def self.included(base)
        base.alias_method_chain :default_input_type, :active_enum
      end

      def default_input_type_with_active_enum(method, options)
        return :enum if @object.class.respond_to?(:active_enum_for) && @object.class.active_enum_for(method)
        default_input_type_without_active_enum(method, options)
      end

      def enum_input(method, options)
        raise "Attribute '#{method}' has no enum class" unless enum = @object.class.active_enum_for(method)
        select_input(method, options.merge(:collection => enum.to_select))
      end

    end
  end
end

Formtastic::SemanticFormBuilder.send :include, ActiveEnum::FormHelpers::Formtastic

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
active_enum-0.9.0 lib/active_enum/form_helpers/formtastic.rb
active_enum-0.8.2 lib/active_enum/form_helpers/formtastic.rb