Sha256: 1f998a5dd6036df73be6a6be99df939f6c0b39c247703034a2d7b00bd2779a61

Contents?: true

Size: 741 Bytes

Versions: 1

Compression:

Stored size: 741 Bytes

Contents

# frozen_string_literal: true

class FeatureBadge
  include EnumField::DefineEnum

  attr_reader :code, :css

  def initialize(code, css = nil)
    @code = code.to_sym
    @css = (css || 'basic').to_s
  end

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

  def valid?(value)
    value.blank? ? false : true
  end

  define_enum do |builder|
    builder.member :default, object: new(:default)
    builder.member :premium, object: new(:premium, 'premium')
    builder.member :best,    object: new(:best)
    builder.member :popular, object: new(:popular)
    builder.member :top,     object: new(:top, 'professional top')
    builder.member :novel,   object: new(:novel)
    builder.member :sale,    object: new(:sale)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

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