model

package
v0.0.0-...-1310ae7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2020 License: MIT Imports: 4 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewModel

func NewModel(db *sqlx.DB) *model

Types

type Database

type Database interface {
	LoginUser(user *User, token *Token) (err error)
	GetToken(id uint64) (token *Token, err error)
	AddGuilds(guilds []*Guild) (err error)
	AddGuild(guild *Guild) (err error)
	AddUserGuilds(userGuilds []*UserGuild) (err error)
	GetBotExistsGuilds() (guilds []*Guild, err error)
	UpdateGuild(guild *Guild) (err error)
	UpdateGuildBotExists(id uint64, exists bool) (err error)
	GetBotAndUserExistsGuilds(userid uint64) ([]*Guild, error)
	AddEmojis(emojis []*discord.Emoji) (err error)
	AddEmoji(emoji *discord.Emoji) (err error)
	AddUserEmojis(userid uint64) (err error)
	GetUserEmojis(userid uint64) ([]*Emoji, error)
	GetEmojiUsers(userid uint64) ([]*EmojiUser, error)
	UpdateUserEmojis(obj UpdateEmojis) (err error)
	UpdateEmojiIfNotExists(guildid string, emojiids []string) (err error)
}

type Emoji

type Emoji struct {
	ID       uint64 `json:"id,string" db:"id"`
	GuildID  uint64 `json:"guildid,string" db:"guild_id"`
	Name     string `json:"name" db:"name"`
	Animated bool   `json:"animated" db:"is_animated"`
	UserID   uint64 `json:"userid,string" db:"user_id"`
	Enabled  bool   `json:"enabled" db:"is_enabled"`
}

type EmojiUser

type EmojiUser struct {
	UserID            uint64 `json:"id,string" db:"id"`
	UserName          string `json:"name" db:"username"`
	UserDiscriminator string `json:"discriminator" db:"discriminator"`
	UserAvatar        string `json:"avatar" db:"avatar"`
}

type Guild

type Guild struct {
	ID        uint64 `json:"id,string" db:"id"`
	Name      string `json:"name" db:"name"`
	Icon      string `json:"icon" db:"icon"`
	BotExists bool   `json:"-" db:"is_bot_exists"`
}

type Token

type Token struct {
	UserID       uint64    `db:"user_id"`
	AccessToken  string    `db:"access_token"`
	TokenType    string    `db:"token_type"`
	RefreshToken string    `db:"refresh_token"`
	Expiry       time.Time `db:"expiry"`
}

func ToModelToken

func ToModelToken(id uint64, t *oauth2.Token) *Token

func (*Token) ToOAuth2Token

func (t *Token) ToOAuth2Token() *oauth2.Token

type UpdateEmojis

type UpdateEmojis struct {
	UserID  uint64
	EmojiID []string
	Enabled bool
}

type User

type User struct {
	ID            uint64 `json:"id,string" db:"id"`
	Username      string `json:"username" db:"username"`
	Discriminator string `json:"discriminator" db:"discriminator"`
	Avatar        string `json:"avatar" db:"avatar"`
	Locale        string `json:"locale" db:"locale"`
	CreatedAt     string `json:",omitempty" db:"created_at"`
	LastLogin     string `json:",omitempty" db:"last_login"`
}

type UserGuild

type UserGuild struct {
	UserID      uint64 `db:"user_id"`
	GuildID     uint64 `json:"id,string" db:"guild_id"`
	IsOwner     bool   `json:"owner" db:"is_owner"`
	Permissions uint   `json:"permissions" db:"permissions"`
	CanInvite   bool   `db:"can_invite"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL