commit c5cc601260abf42a03e98cac8cbecf5a896c2934
parent 36846850d1ce216fbd5eb05555af6f942483843f
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Thu, 2 Mar 2023 20:31:09 -0800
cleanup
Diffstat:
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/pkg/database/table_forum_threads.go b/pkg/database/table_forum_threads.go
@@ -3,6 +3,7 @@ package database
import (
"dkforest/pkg/utils"
"github.com/ProtonMail/go-crypto/openpgp/clearsign"
+ "github.com/google/uuid"
html2 "html"
"regexp"
"strings"
@@ -67,6 +68,10 @@ type ForumMessage struct {
User User
}
+func MakeForumMessage(message string, userID UserID, threadID ForumThreadID) ForumMessage {
+ return ForumMessage{UUID: ForumMessageUUID(uuid.New().String()), Message: message, UserID: userID, ThreadID: threadID}
+}
+
type ForumReadRecord struct {
UserID UserID
ThreadID ForumThreadID
diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go
@@ -1918,7 +1918,7 @@ func ThreadReplyHandler(c echo.Context) error {
authUser.DoSave()
return c.Redirect(http.StatusFound, "/")
}
- message := database.ForumMessage{UUID: database.ForumMessageUUID(uuid.New().String()), Message: data.Message, UserID: authUser.ID, ThreadID: thread.ID}
+ message := database.MakeForumMessage(data.Message, authUser.ID, thread.ID)
message.IsSigned = message.ValidateSignature(authUser.GPGPublicKey)
if err := database.DB.Create(&message).Error; err != nil {
logrus.Error(err)
@@ -2276,7 +2276,7 @@ func NewThreadHandler(c echo.Context) error {
}
thread := database.ForumThread{UUID: database.ForumThreadUUID(uuid.New().String()), Name: data.ThreadName, UserID: authUser.ID, CategoryID: 1}
database.DB.Create(&thread)
- message := database.ForumMessage{UUID: database.ForumMessageUUID(uuid.New().String()), Message: data.Message, UserID: authUser.ID, ThreadID: thread.ID}
+ message := database.MakeForumMessage(data.Message, authUser.ID, thread.ID)
message.IsSigned = message.ValidateSignature(authUser.GPGPublicKey)
database.DB.Create(&message)
_ = database.SubscribeToForumThread(authUser.ID, thread.ID)