Class: DiscordRDA::GuildScheduledEvent

Inherits:
Entity
  • Object
show all
Defined in:
lib/discord_rda/event/scheduled_event.rb

Overview

Represents a scheduled event entity

Constant Summary collapse

PRIVACY_LEVELS =

Privacy levels

{
  guild_only: 2
}.freeze
ENTITY_TYPES =

Entity types

{
  stage_instance: 1,
  voice: 2,
  external: 3
}.freeze
STATUSES =

Statuses

{
  scheduled: 1,
  active: 2,
  completed: 3,
  cancelled: 4
}.freeze

Instance Attribute Summary

Attributes inherited from Entity

#id

Instance Method Summary collapse

Methods inherited from Entity

#==, attribute, #created_at, from_hash, #hash, #initialize, #inspect, #to_h, #to_json

Constructor Details

This class inherits a constructor from DiscordRDA::Entity

Instance Method Details

#active?Boolean

Returns:

  • (Boolean)


229
230
231
# File 'lib/discord_rda/event/scheduled_event.rb', line 229

def active?
  status == 2
end

#cancelled?Boolean

Returns:

  • (Boolean)


237
238
239
# File 'lib/discord_rda/event/scheduled_event.rb', line 237

def cancelled?
  status == 4
end

#completed?Boolean

Returns:

  • (Boolean)


233
234
235
# File 'lib/discord_rda/event/scheduled_event.rb', line 233

def completed?
  status == 3
end

#creatorObject



213
214
215
# File 'lib/discord_rda/event/scheduled_event.rb', line 213

def creator
  @creator ||= User.new(@raw_data['creator']) if @raw_data['creator']
end

#entity_type_nameObject



217
218
219
# File 'lib/discord_rda/event/scheduled_event.rb', line 217

def entity_type_name
  ENTITY_TYPES.key(entity_type) || :unknown
end

#external?Boolean

Returns:

  • (Boolean)


249
250
251
# File 'lib/discord_rda/event/scheduled_event.rb', line 249

def external?
  entity_type == 3
end

#locationObject



253
254
255
# File 'lib/discord_rda/event/scheduled_event.rb', line 253

def location
  &.dig('location')
end

#scheduled?Boolean

Returns:

  • (Boolean)


225
226
227
# File 'lib/discord_rda/event/scheduled_event.rb', line 225

def scheduled?
  status == 1
end

#stage_instance?Boolean

Returns:

  • (Boolean)


241
242
243
# File 'lib/discord_rda/event/scheduled_event.rb', line 241

def stage_instance?
  entity_type == 1
end

#status_nameObject



221
222
223
# File 'lib/discord_rda/event/scheduled_event.rb', line 221

def status_name
  STATUSES.key(status) || :unknown
end

#voice?Boolean

Returns:

  • (Boolean)


245
246
247
# File 'lib/discord_rda/event/scheduled_event.rb', line 245

def voice?
  entity_type == 2
end