package storage import ( "time" "gorm.io/gorm" ) type RemoteServer struct { ID string `gorm:"primarykey"` // ID is also server url CreatedAt time.Time // When this entry was created UpdatedAt time.Time // When this entry was last updated // When this entry was deleted (for soft deletions) // Soft delete means that this entry still exists in the db, but gorm won't include it anymore unless specifically told to // If not null, this entry is marked as deleted DeletedAt gorm.DeletedAt `gorm:"index"` ServerType RemoteServerType // What software the server is running. Useful for formatting Name string // What the server wants to be known as (usually same as url) Icon string // ID of a media file IsSelf bool // Whether this server is yours truly } var placeholderServer = &RemoteServer{ ID: "placeholder", ServerType: REMOTE_SERVER_LINSTROM, Name: "placeholder", Icon: "placeholder", IsSelf: false, }