Sha256: 01c203f2ec0b7b6f0c74f2dfd7d1ba87885159287322e158c4fc039bd45fa0bc

Contents?: true

Size: 561 Bytes

Versions: 9

Compression:

Stored size: 561 Bytes

Contents

module Kuhsaft
  class PublishState
    extend ActiveModel::Translation

    UNPUBLISHED = 0
    PUBLISHED = 1
    PUBLISHED_AT = 2

    attr_reader :name
    attr_reader :value

    def initialize(options)
      options.each_pair { |k, v| instance_variable_set("@#{k}", v) if respond_to?(k) }
    end

    def self.all
      @all ||= [
        PublishState.new(name: 'published', value: PUBLISHED),
        PublishState.new(name: 'unpublished', value: UNPUBLISHED),
        PublishState.new(name: 'published_at', value: PUBLISHED_AT)
      ]
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
kuhsaft-2.6.3 app/models/kuhsaft/publish_state.rb
kuhsaft-2.6.2 app/models/kuhsaft/publish_state.rb
kuhsaft-2.6.1 app/models/kuhsaft/publish_state.rb
kuhsaft-2.5.2 app/models/kuhsaft/publish_state.rb
kuhsaft-2.6.0 app/models/kuhsaft/publish_state.rb
kuhsaft-2.5.1 app/models/kuhsaft/publish_state.rb
kuhsaft-2.5.0 app/models/kuhsaft/publish_state.rb
qbrick-2.5.0.pre app/models/kuhsaft/publish_state.rb
kuhsaft-2.4.3 app/models/kuhsaft/publish_state.rb