commit 23d70fd60650857c0c4e450283113b753a73bfdc
parent ebe25fc36639a8d5490d2a6880dc13b2ebd88cf7
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Mon, 1 Jan 2024 17:45:58 -0500
cleanup
Diffstat:
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go
@@ -363,6 +363,14 @@ func (u *User) DoSave(db *DkfDB) {
}
}
+func (u *User) IncrChatTutorial(db *DkfDB) {
+ db.db.Model(u).Select("ChatTutorial").Updates(User{ChatTutorial: u.ChatTutorial + 1})
+}
+
+func (u *User) SetChatTutorialTime(db *DkfDB, chatTutorialTime time.Time) {
+ db.db.Model(u).Select("ChatTutorialTime").Updates(User{ChatTutorialTime: chatTutorialTime})
+}
+
func (u *User) SetCanUseForum(db *DkfDB, canUseForum bool) {
db.db.Model(u).Select("CanUseForum").Updates(User{CanUseForum: canUseForum})
}
diff --git a/pkg/web/handlers/chat.go b/pkg/web/handlers/chat.go
@@ -84,8 +84,7 @@ func chatHandler(c echo.Context, redRoom, stream bool) error {
data.TutoSecs = getTutorialStepDuration()
data.TutoFrames = generateCssFrames(data.TutoSecs, nil, true)
if c.Request().Method == http.MethodGet {
- authUser.ChatTutorialTime = time.Now()
- authUser.DoSave(db)
+ authUser.SetChatTutorialTime(db, time.Now())
}
}
}
@@ -138,8 +137,7 @@ func handleLogoutPost(c echo.Context, room database.ChatRoom) error {
func handleTutorialPost(db *database.DkfDB, c echo.Context, data chatData, authUser *database.User) error {
if authUser.ChatTutorial < 3 && time.Since(authUser.ChatTutorialTime) >= time.Duration(data.TutoSecs)*time.Second {
- authUser.ChatTutorial++
- authUser.DoSave(db)
+ authUser.IncrChatTutorial(db)
}
return hutils.RedirectReferer(c)
}