Module: models/Event

Event Model for Satoshi Showdown. Defines the structure and constraints for events within the Satoshi Showdown platform. Encapsulates event information, schedule, participation details, financial aspects, and metadata. Instrumental in representing and managing event data in the application's database.

Source:

Requires

  • module:mongoose
  • module:uuid

Type Definitions

EventModel

Event model based on the defined schema. Represents an event within the Satoshi Showdown platform, encapsulating all data and behaviors related to event management. This includes event creation, modification, participant management, and handling of associated financial transactions and user feedback.

Type:
Source:

EventSchema

EventSchema: Defines structure and rules for event-related data. Includes event name, type, schedule, participant information, and financial aspects. Manages event lifecycle stages, open/closed status, and closure time.

Type:
  • Object
Properties:
Name Type Description
eventId string

Unique identifier.

name string

Event name.

description string

Event description.

type string

Event type.

startTime Date

Scheduled start time.

endTime Date

Scheduled end time.

status string

Event lifecycle status.

entryFee number

Participant entry fee.

prizePool number

Prize amount available.

creator mongoose.Schema.Types.ObjectId

Reference to the event creator.

participants Array

Array of participant references with join timestamps.

maxParticipants number

Maximum allowed participants.

minParticipants number

Minimum required participants.

isOpen boolean

Open status for new participants.

closedAt Date

Timestamp of event closure.

transactions Array

References to associated financial transactions.

winners Array

References to event winners.

config Object

Configuration details.

streamingUrl string

Live streaming URL.

streamingSchedule Object

Live streaming schedule.

bettingOptions Array

Betting options details.

viewCount number

Event view count.

feedback Array

User feedback references.

socialSharingLinks Array

Social sharing links.

ageRestriction number

Age restriction for participation.

geographicRestrictions Array

Geographic limitations.

settlementType string

Method used to determine the outcome of the event.

voteResults Array

Voting results from participants.

isDisputed boolean

Whether the event result is disputed.

disputeEvidence Array

Evidence submitted for disputed results.

disputeResolutionStatus string

Status of dispute resolution.

settlementStatus string

Status of event settlement.

finalOutcome Object

Final outcome details with winners and settlement time.

Source: