Sha256: 5d813e76449177120fe12ebb09f0e02bcd6fdfb21bc2bb3a212057e32682d6d9

Contents?: true

Size: 548 Bytes

Versions: 14

Compression:

Stored size: 548 Bytes

Contents

# frozen_string_literal: true

module ApplicationHelper
  def options_for_enum_select(klass, attribute, selected = nil)
    container = klass.public_send(attribute.to_s.pluralize).map do |k, v|
      v ||= k
      [klass.human_enum_value(attribute, k), v]
    end

    options_for_select(container, selected)
  end

  def present(model, options = {})
    klass = options.delete(:presenter_class) || "#{model.class}Presenter".constantize
    presenter = klass.new(model, self, options)

    yield(presenter) if block_given?

    presenter
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
script_core-0.3.2 spec/dummy/app/helpers/application_helper.rb
script_core-0.3.0 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.7 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.6 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.5 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.4 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.3 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.2 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.1 spec/dummy/app/helpers/application_helper.rb
script_core-0.2.0 spec/dummy/app/helpers/application_helper.rb
script_core-0.1.1 spec/dummy/app/helpers/application_helper.rb
script_core-0.1.0 spec/dummy/app/helpers/application_helper.rb
script_core-0.0.6 spec/dummy/app/helpers/application_helper.rb
script_core-0.0.5 spec/dummy/app/helpers/application_helper.rb