commit cc66b8d11ae93375981bf2dc711d11a59a6ef715
parent c04e9b629d8d9293bdb0ab8d565318d512d75dff
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sat, 17 Jun 2023 13:40:04 -0700
user can use analyze tool
Diffstat:
5 files changed, 46 insertions(+), 28 deletions(-)
diff --git a/cmd/dkf/migrations/144.sql b/cmd/dkf/migrations/144.sql
@@ -0,0 +1,4 @@
+-- +migrate Up
+ALTER TABLE users ADD COLUMN can_use_chess_analyze TINYINT(1) NOT NULL DEFAULT 0;
+
+-- +migrate Down
diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go
@@ -99,6 +99,7 @@ type User struct {
CanUseUppercase bool
CanChangeColor bool
CanUseMultiline bool
+ CanUseChessAnalyze bool
Vetted bool
RegistrationDuration int64
LastSeenPublic bool
@@ -589,6 +590,7 @@ func (d *DkfDB) createUser(usernameStr, password, repassword, gpgPublicKey strin
newUser.DisplayPms = 0
newUser.CanUseForum = true
newUser.CanUseMultiline = false
+ newUser.CanUseChessAnalyze = false
newUser.CanChangeUsername = true
newUser.CanUseUppercase = true
newUser.CanUploadFile = true
diff --git a/pkg/web/handlers/admin.go b/pkg/web/handlers/admin.go
@@ -570,6 +570,7 @@ func AdminEditUserHandler(c echo.Context) error {
data.CanUploadFile = user.CanUploadFile
data.CanUseForum = user.CanUseForum
data.CanUseMultiline = user.CanUseMultiline
+ data.CanUseChessAnalyze = user.CanUseChessAnalyze
data.CanSeeHellbanned = user.CanSeeHellbanned
data.IsIncognito = user.IsIncognito
data.CanChangeUsername = user.CanChangeUsername
@@ -601,6 +602,7 @@ func AdminEditUserHandler(c echo.Context) error {
data.CanUploadFile = utils.DoParseBool(c.FormValue("can_upload_file"))
data.CanUseForum = utils.DoParseBool(c.FormValue("can_use_forum"))
data.CanUseMultiline = utils.DoParseBool(c.FormValue("can_use_multiline"))
+ data.CanUseChessAnalyze = utils.DoParseBool(c.FormValue("can_use_chess_analyze"))
data.CanSeeHellbanned = utils.DoParseBool(c.FormValue("can_see_hellbanned"))
data.IsIncognito = utils.DoParseBool(c.FormValue("is_incognito"))
data.CanChangeUsername = utils.DoParseBool(c.FormValue("can_change_username"))
@@ -655,6 +657,7 @@ func AdminEditUserHandler(c echo.Context) error {
user.CanUploadFile = data.CanUploadFile
user.CanUseForum = data.CanUseForum
user.CanUseMultiline = data.CanUseMultiline
+ user.CanUseChessAnalyze = data.CanUseChessAnalyze
user.CanSeeHellbanned = data.CanSeeHellbanned
user.IsIncognito = data.IsIncognito
user.CanChangeUsername = data.CanChangeUsername
diff --git a/pkg/web/handlers/data.go b/pkg/web/handlers/data.go
@@ -806,34 +806,35 @@ type settingsWebsiteData struct {
}
type adminEditUsereData struct {
- IsEdit bool
- ActiveTab string
- User database.User
- Username database.Username
- Password string
- RePassword string
- ApiKey string
- Role string
- IsAdmin bool
- IsHellbanned bool
- Verified bool
- IsClubMember bool
- CanUploadFile bool
- CanUseForum bool
- CanUseMultiline bool
- CanSeeHellbanned bool
- IsIncognito bool
- CanChangeUsername bool
- CanUseUppercase bool
- CanChangeColor bool
- Vetted bool
- ChatColor string
- ChatFont int64
- SignupMetadata string
- CollectMetadata bool
- ChatTutorial int64
- Errors database.UserErrors
- AllFonts []utils.Font
+ IsEdit bool
+ ActiveTab string
+ User database.User
+ Username database.Username
+ Password string
+ RePassword string
+ ApiKey string
+ Role string
+ IsAdmin bool
+ IsHellbanned bool
+ Verified bool
+ IsClubMember bool
+ CanUploadFile bool
+ CanUseForum bool
+ CanUseMultiline bool
+ CanUseChessAnalyze bool
+ CanSeeHellbanned bool
+ IsIncognito bool
+ CanChangeUsername bool
+ CanUseUppercase bool
+ CanChangeColor bool
+ Vetted bool
+ ChatColor string
+ ChatFont int64
+ SignupMetadata string
+ CollectMetadata bool
+ ChatTutorial int64
+ Errors database.UserErrors
+ AllFonts []utils.Font
}
type adminEditRoomData struct {
diff --git a/pkg/web/public/views/pages/admin/user-edit.gohtml b/pkg/web/public/views/pages/admin/user-edit.gohtml
@@ -149,6 +149,14 @@
<div class="form-check form-check-1">
<div class="checkbox-wrapper form-check-input">
+ <input class="my-cbx" type="checkbox" name="can_use_chess_analyze" id="can_use_chess_analyze" value="1"{{ if .Data.CanUseChessAnalyze }} checked{{ end }} />
+ <label for="can_use_chess_analyze" class="toggle"><span></span></label>
+ </div>
+ <label class="form-check-label" for="can_use_chess_analyze">{{ t "Can use chess analyze" . }}</label>
+ </div>
+
+ <div class="form-check form-check-1">
+ <div class="checkbox-wrapper form-check-input">
<input class="my-cbx" type="checkbox" name="can_see_hellbanned" id="can_see_hellbanned" value="1"{{ if .Data.CanSeeHellbanned }} checked{{ end }} />
<label for="can_see_hellbanned" class="toggle"><span></span></label>
</div>