Compentize Workload (#4)

This commit is contained in:
2023-03-30 23:51:05 -04:00
committed by GitHub
parent 228c293b70
commit 3d15d09dd7
21 changed files with 528 additions and 319 deletions

View File

@ -8,7 +8,7 @@ import (
"github.com/bwmarrin/discordgo"
"github.com/stretchr/testify/mock"
"github.com/yeslayla/birdbot/core"
"github.com/yeslayla/birdbot/common"
)
type Discord struct {
@ -64,7 +64,7 @@ func (discord *Discord) OnReady(handler func(*Discord)) {
}
// OnEventCreate registers a handler when a guild scheduled event is created
func (discord *Discord) OnEventCreate(handler func(*Discord, *core.Event)) {
func (discord *Discord) OnEventCreate(handler func(*Discord, common.Event)) {
discord.session.AddHandler(func(s *discordgo.Session, r *discordgo.GuildScheduledEventCreate) {
if r.GuildID != discord.guildID {
return
@ -75,7 +75,7 @@ func (discord *Discord) OnEventCreate(handler func(*Discord, *core.Event)) {
}
// OnEventDelete registers a handler when a guild scheduled event is deleted
func (discord *Discord) OnEventDelete(handler func(*Discord, *core.Event)) {
func (discord *Discord) OnEventDelete(handler func(*Discord, common.Event)) {
discord.session.AddHandler(func(s *discordgo.Session, r *discordgo.GuildScheduledEventDelete) {
if r.GuildID != discord.guildID {
return
@ -86,7 +86,7 @@ func (discord *Discord) OnEventDelete(handler func(*Discord, *core.Event)) {
}
// OnEventUpdate registers a handler when a guild scheduled event is updated
func (discord *Discord) OnEventUpdate(handler func(*Discord, *core.Event)) {
func (discord *Discord) OnEventUpdate(handler func(*Discord, common.Event)) {
discord.session.AddHandler(func(s *discordgo.Session, r *discordgo.GuildScheduledEventUpdate) {
if r.GuildID != discord.guildID {
return

View File

@ -4,27 +4,28 @@ import (
"time"
"github.com/bwmarrin/discordgo"
"github.com/yeslayla/birdbot/common"
"github.com/yeslayla/birdbot/core"
)
// NewEvent converts a discordgo.GuildScheduledEvent to birdbot event
func NewEvent(guildEvent *discordgo.GuildScheduledEvent) *core.Event {
event := &core.Event{
func NewEvent(guildEvent *discordgo.GuildScheduledEvent) common.Event {
event := common.Event{
Name: guildEvent.Name,
Description: guildEvent.Description,
ID: guildEvent.ID,
Organizer: &core.User{
Organizer: common.User{
ID: guildEvent.CreatorID,
},
DateTime: guildEvent.ScheduledStartTime,
Image: guildEvent.Image,
ImageURL: guildEvent.Image,
}
if guildEvent.ScheduledEndTime != nil {
event.CompleteTime = *guildEvent.ScheduledEndTime
event.CompleteDateTime = *guildEvent.ScheduledEndTime
} else {
year, month, day := guildEvent.ScheduledStartTime.Date()
event.CompleteTime = time.Date(year, month, day, 0, 0, 0, 0, guildEvent.ScheduledStartTime.Location())
event.CompleteDateTime = time.Date(year, month, day, 0, 0, 0, 0, guildEvent.ScheduledStartTime.Location())
}
event.Completed = guildEvent.Status == discordgo.GuildScheduledEventStatusCompleted
@ -38,14 +39,14 @@ func NewEvent(guildEvent *discordgo.GuildScheduledEvent) *core.Event {
return event
}
func (discord *Discord) CreateEvent(event *core.Event) error {
func (discord *Discord) CreateEvent(event common.Event) error {
params := &discordgo.GuildScheduledEventParams{
Name: event.Name,
Description: event.Description,
ScheduledStartTime: &event.DateTime,
ScheduledEndTime: &event.CompleteTime,
Image: event.Image,
ScheduledEndTime: &event.CompleteDateTime,
Image: event.ImageURL,
EntityType: discordgo.GuildScheduledEventEntityTypeExternal,
PrivacyLevel: discordgo.GuildScheduledEventPrivacyLevelGuildOnly,
}

View File

@ -4,17 +4,19 @@ import (
"log"
"github.com/bwmarrin/discordgo"
"github.com/yeslayla/birdbot/core"
"github.com/yeslayla/birdbot/common"
)
// NewUser creates a new user object from a discordgo.User object
func NewUser(user *discordgo.User) *core.User {
func NewUser(user *discordgo.User) common.User {
if user == nil {
log.Print("Cannot user object, user is nil!")
return nil
return common.User{
ID: "-1",
}
}
return &core.User{
return common.User{
ID: user.ID,
}
}