Sha256: 1505b63e0fa4b101b65eb8b0242dd726c79940a7ee4e1393e1d45414dcfa6a85

Contents?: true

Size: 634 Bytes

Versions: 1

Compression:

Stored size: 634 Bytes

Contents

# frozen_string_literal: true

class ServiceType
  include EnumField::DefineEnum
  attr_reader :code, :theme

  def initialize(code, theme = :default)
    @code = code.to_sym
    @theme = theme
  end

  def title
    I18n.t(code, scope: [:service_type])
  end

  define_enum do |builder|
    builder.member :default,      object: new(:default)
    builder.member :certified,    object: new(:certified)
    builder.member :proofreading, object: new(:proofreading)
    builder.member :localization, object: new(:localization)
  end

  all.map(&:code).each do |code|
    define_method "#{code}?" do
      @code == code
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
translation_cms-0.1.5 app/models/enums/service_type.rb