parent
9436a4385f
commit
2d60384002
@ -0,0 +1,17 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
type Channel struct {
|
||||||
|
ID string
|
||||||
|
Guild Guild
|
||||||
|
Admin bool
|
||||||
|
Default bool
|
||||||
|
NewPatron bool
|
||||||
|
}
|
||||||
|
|
||||||
|
type ChannelService interface {
|
||||||
|
Channel(id string) (*Channel, error)
|
||||||
|
CreateChannel(c *Channel) (*Channel, error)
|
||||||
|
DeleteChannel(c *Channel) error
|
||||||
|
GuildChannels(g *Guild) ([]*Channel, error)
|
||||||
|
UpdateChannel(c *Channel) (*Channel, error)
|
||||||
|
}
|
||||||
@ -0,0 +1,25 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
type Guild struct {
|
||||||
|
ID string
|
||||||
|
NewPatronMessage string
|
||||||
|
Prefixes []string
|
||||||
|
}
|
||||||
|
|
||||||
|
type Role struct {
|
||||||
|
ID string
|
||||||
|
RoleType int
|
||||||
|
Guild Guild
|
||||||
|
}
|
||||||
|
|
||||||
|
type GuildService interface {
|
||||||
|
Guild(id string) (*Guild, error)
|
||||||
|
CreateGuild(g *Guild) (*Guild, error)
|
||||||
|
DeleteGuild(g *Guild) error
|
||||||
|
UpdateGuild(g *Guild) (*Guild, error)
|
||||||
|
GuildRoles(g *Guild) ([]*Role, error)
|
||||||
|
CreateRole(r *Role) (*Role, error)
|
||||||
|
Role(id string) (*Role, error)
|
||||||
|
UpdateRole(r *Role) (*Role, error)
|
||||||
|
DeleteRole(r *Role) error
|
||||||
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
import "github.com/bwmarrin/discordgo"
|
||||||
|
|
||||||
|
type Message struct {
|
||||||
|
ID string
|
||||||
|
CreatedAt int64
|
||||||
|
ModifiedAd int64
|
||||||
|
Content string
|
||||||
|
PreviousContent []string
|
||||||
|
Channel *Channel
|
||||||
|
Author *User
|
||||||
|
Embed *discordgo.MessageEmbed
|
||||||
|
PreviousEmbeds []*discordgo.MessageEmbed
|
||||||
|
}
|
||||||
|
|
||||||
|
type MessageService interface {
|
||||||
|
Message(id string) (*Message, error)
|
||||||
|
CreateMessage(m *Message) (*Message, error)
|
||||||
|
DeleteMessage(m *Message) error
|
||||||
|
ChannelMessages(c *Channel) ([]*Message, error)
|
||||||
|
UpdateMessage(m *Message) (*Message, error)
|
||||||
|
}
|
||||||
@ -0,0 +1,29 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
type PatreonCreator struct {
|
||||||
|
ID int
|
||||||
|
Creator string
|
||||||
|
Link string
|
||||||
|
}
|
||||||
|
|
||||||
|
type PatreonTier struct {
|
||||||
|
ID int
|
||||||
|
Name string
|
||||||
|
Description string
|
||||||
|
Creator *PatreonCreator
|
||||||
|
Role *Role
|
||||||
|
NextTier *PatreonTier
|
||||||
|
}
|
||||||
|
|
||||||
|
type PatreonService interface {
|
||||||
|
PatreonCreatorByID(id int) (*PatreonCreator, error)
|
||||||
|
PatreonCreatorByName(name string) (*PatreonCreator, error)
|
||||||
|
CreatePatreonCreator(c *PatreonCreator) (*PatreonCreator, error)
|
||||||
|
UpdatePatreonCreator(c *PatreonCreator) (*PatreonCreator, error)
|
||||||
|
DeletePatreonCreator(c *PatreonCreator) error
|
||||||
|
PatreonTierByID(id int) (*PatreonTier, error)
|
||||||
|
PatreonTierByName(name string) (*PatreonTier, error)
|
||||||
|
CreatePatreonTier(t *PatreonTier) (*PatreonTier, error)
|
||||||
|
UpdatePatreonTier(t *PatreonTier) (*PatreonTier, error)
|
||||||
|
DeletePatreonTier(t *PatreonTier) error
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
import "time"
|
||||||
|
|
||||||
|
type Request struct {
|
||||||
|
ID int64
|
||||||
|
Author *User
|
||||||
|
Channel *Channel
|
||||||
|
Content string
|
||||||
|
RequestedAt time.Time
|
||||||
|
CompletedAt time.Time
|
||||||
|
CompletedBy *User
|
||||||
|
Message *Message
|
||||||
|
CompletedMessage string
|
||||||
|
}
|
||||||
|
|
||||||
|
type Comment struct {
|
||||||
|
ID int64
|
||||||
|
Author *User
|
||||||
|
Request *Request
|
||||||
|
CommentAt time.Time
|
||||||
|
Content string
|
||||||
|
}
|
||||||
|
|
||||||
|
type RequestService interface {
|
||||||
|
Request(id int64) (*Request, error)
|
||||||
|
UserRequests(u *User, completed bool) ([]*Request, error)
|
||||||
|
GuildRequests(g *Guild, completed bool) ([]*Request, error)
|
||||||
|
CreateRequest(r *Request) (*Request, error)
|
||||||
|
UpdateRequest(r *Request) (*Request, error)
|
||||||
|
DeleteRequest(r *Request) error
|
||||||
|
Comment(id int64) (*Comment, error)
|
||||||
|
RequestComments(r *Request) ([]*Comment, error)
|
||||||
|
RequestCommentCount(r *Request) (int, error)
|
||||||
|
CreateComment(c *Comment) (*Comment, error)
|
||||||
|
DeleteComment(c *Comment) error
|
||||||
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
type Server struct {
|
||||||
|
ID int
|
||||||
|
Name string
|
||||||
|
IPAddr string
|
||||||
|
Port int
|
||||||
|
Password string
|
||||||
|
AlertsChannel *Channel
|
||||||
|
Guild *Guild
|
||||||
|
InfoChannel *Channel
|
||||||
|
InfoMessage *Message
|
||||||
|
SettingsMessage *Message
|
||||||
|
}
|
||||||
|
|
||||||
|
type ServerService interface {
|
||||||
|
ServerByID(id int) (*Server, error)
|
||||||
|
ServerByName(name string) (*Server, error)
|
||||||
|
CreateServer(s *Server) (*Server, error)
|
||||||
|
DeleteServer(s *Server) error
|
||||||
|
UpdateServer(s *Server) (*Server, error)
|
||||||
|
GuildServers(g *Guild) ([]*Server, error)
|
||||||
|
}
|
||||||
@ -0,0 +1,18 @@
|
|||||||
|
package geeksbot
|
||||||
|
|
||||||
|
import "database/sql"
|
||||||
|
|
||||||
|
type User struct {
|
||||||
|
ID string
|
||||||
|
SteamID sql.NullString
|
||||||
|
IsActive bool
|
||||||
|
IsStaff bool
|
||||||
|
IsAdmin bool
|
||||||
|
}
|
||||||
|
|
||||||
|
type UserService interface {
|
||||||
|
User(id string) (*User, error)
|
||||||
|
CreateUser(u *User) (*User, error)
|
||||||
|
DeleteUser(u *User) error
|
||||||
|
UpdateUser(u *User) (*User, error)
|
||||||
|
}
|
||||||
Loading…
Reference in new issue