diff --git a/cmd/butterrobot/main.go b/cmd/butterrobot/main.go index bf217de..3bc56cb 100644 --- a/cmd/butterrobot/main.go +++ b/cmd/butterrobot/main.go @@ -45,4 +45,4 @@ func main() { logger.Error("Application error", "error", err) os.Exit(1) } -} \ No newline at end of file +} diff --git a/internal/admin/admin.go b/internal/admin/admin.go index dee4197..2b41820 100644 --- a/internal/admin/admin.go +++ b/internal/admin/admin.go @@ -673,7 +673,7 @@ func (a *Admin) handleChannelPluginConfig(w http.ResponseWriter, r *http.Request // Create config map from form values config := make(map[string]interface{}) - + // Process form values based on plugin type if channelPlugin.PluginID == "security.domainblock" { // Get blocked domains from form diff --git a/internal/app/app.go b/internal/app/app.go index bd64b80..4614325 100644 --- a/internal/app/app.go +++ b/internal/app/app.go @@ -325,7 +325,7 @@ func (a *App) handleMessage(item queue.Item) { } else { a.logger.Error("Send message action with nil message") } - + case model.ActionDeleteMessage: // Delete a message using direct DeleteMessage call if err := platform.DeleteMessage(action.Chat, action.MessageID); err != nil { @@ -333,7 +333,7 @@ func (a *App) handleMessage(item queue.Item) { } else { a.logger.Info("Message deleted", "message_id", action.MessageID) } - + default: a.logger.Error("Unknown action type", "type", action.Type) } @@ -409,4 +409,4 @@ func (a *App) processReminder(reminder *model.Reminder) { if err := a.db.MarkReminderAsProcessed(reminder.ID); err != nil { a.logger.Error("Error marking reminder as processed", "error", err) } -} \ No newline at end of file +} diff --git a/internal/model/message.go b/internal/model/message.go index ea3b316..26ec5da 100644 --- a/internal/model/message.go +++ b/internal/model/message.go @@ -17,10 +17,10 @@ const ( // MessageAction represents an action to be performed on the platform type MessageAction struct { Type ActionType - Message *Message // For send_message - MessageID string // For delete_message - Chat string // Chat where the action happens - Channel *Channel // Channel reference + Message *Message // For send_message + MessageID string // For delete_message + Chat string // Chat where the action happens + Channel *Channel // Channel reference Raw map[string]interface{} // Additional data for the action } diff --git a/internal/platform/slack/slack.go b/internal/platform/slack/slack.go index 28e8363..2ca7bef 100644 --- a/internal/platform/slack/slack.go +++ b/internal/platform/slack/slack.go @@ -268,10 +268,10 @@ func (s *SlackPlatform) deleteMessage(msg *model.Message) error { if !ok { return fmt.Errorf("no message ID provided for deletion") } - + // Convert to string if needed messageIDStr := fmt.Sprintf("%v", messageID) - + return s.DeleteMessage(msg.Chat, messageIDStr) } diff --git a/internal/plugin/domainblock/domainblock_test.go b/internal/plugin/domainblock/domainblock_test.go index 3f75a18..69cd8b8 100644 --- a/internal/plugin/domainblock/domainblock_test.go +++ b/internal/plugin/domainblock/domainblock_test.go @@ -137,4 +137,4 @@ func TestOnMessage(t *testing.T) { } }) } -} \ No newline at end of file +} diff --git a/internal/plugin/ping/ping.go b/internal/plugin/ping/ping.go index e77cb78..3dacf6f 100644 --- a/internal/plugin/ping/ping.go +++ b/internal/plugin/ping/ping.go @@ -36,7 +36,7 @@ func (p *PingPlugin) OnMessage(msg *model.Message, config map[string]interface{} ReplyTo: msg.ID, Channel: msg.Channel, } - + // Create an action to send the message action := &model.MessageAction{ Type: model.ActionSendMessage, diff --git a/internal/plugin/reminder/reminder.go b/internal/plugin/reminder/reminder.go index c162e6e..029c8d9 100644 --- a/internal/plugin/reminder/reminder.go +++ b/internal/plugin/reminder/reminder.go @@ -65,7 +65,7 @@ func (r *Reminder) OnMessage(msg *model.Message, config map[string]interface{}) Date: time.Now(), ReplyTo: msg.ID, } - + return []*model.MessageAction{ { Type: model.ActionSendMessage, @@ -102,7 +102,7 @@ func (r *Reminder) OnMessage(msg *model.Message, config map[string]interface{}) Date: time.Now(), ReplyTo: msg.ID, } - + return []*model.MessageAction{ { Type: model.ActionSendMessage, @@ -150,7 +150,7 @@ func (r *Reminder) OnMessage(msg *model.Message, config map[string]interface{}) Date: time.Now(), ReplyTo: msg.ID, } - + return []*model.MessageAction{ { Type: model.ActionSendMessage, @@ -188,7 +188,7 @@ func (r *Reminder) OnMessage(msg *model.Message, config map[string]interface{}) Date: time.Now(), ReplyTo: msg.ID, } - + return []*model.MessageAction{ { Type: model.ActionSendMessage, @@ -197,4 +197,4 @@ func (r *Reminder) OnMessage(msg *model.Message, config map[string]interface{}) Channel: msg.Channel, }, } -} \ No newline at end of file +} diff --git a/internal/plugin/reminder/reminder_test.go b/internal/plugin/reminder/reminder_test.go index b54e281..8e611ce 100644 --- a/internal/plugin/reminder/reminder_test.go +++ b/internal/plugin/reminder/reminder_test.go @@ -157,7 +157,7 @@ func TestReminderOnMessage(t *testing.T) { if actions[0].Type != model.ActionSendMessage { t.Errorf("Expected action type to be %s, but got %s", model.ActionSendMessage, actions[0].Type) } - + if actions[0].Message == nil { t.Errorf("Expected message in action to not be nil") }