Sha256: 7ef96cd165a964d1ceed54b2c241363219c812362b636b30c497b3aba80df141

Contents?: true

Size: 815 Bytes

Versions: 3

Compression:

Stored size: 815 Bytes

Contents

# frozen_string_literal: true
module Thredded
  class NullUser
    include ::Thredded::UserPermissions::Read::All
    include ::Thredded::UserPermissions::Write::None
    include ::Thredded::UserPermissions::Message::ReadersOfWriteableBoards
    include ::Thredded::UserPermissions::Moderate::None
    include ::Thredded::UserPermissions::Admin::None

    def thredded_private_topics
      Thredded::PrivateTopic.none
    end

    def id
      0
    end

    def member_of?(_)
      false
    end

    def name
      'Anonymous User'
    end

    def to_s
      name
    end

    def valid?
      false
    end

    def thredded_anonymous?
      true
    end

    def thredded_user_detail
      Thredded::UserDetail.new
    end

    def thredded_user_preference
      Thredded::UserPreference.new
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
thredded-0.3.2 app/models/thredded/null_user.rb
thredded-0.3.1 app/models/thredded/null_user.rb
thredded-0.3.0 app/models/thredded/null_user.rb