diff options
| author | Syndamia <kamen.d.mladenov@protonmail.com> | 2021-07-23 08:28:04 +0300 |
|---|---|---|
| committer | Syndamia <kamen.d.mladenov@protonmail.com> | 2021-07-23 08:28:04 +0300 |
| commit | 0b281b813a9ab00d7c69eb140ab5ac2952987316 (patch) | |
| tree | a4550195b02554b0cbfc91d6f48822353f4cfb59 | |
| parent | 009b1f9e9ea3d7da6f20b6b521a162c935ca7b83 (diff) | |
| download | ctfc-0b281b813a9ab00d7c69eb140ab5ac2952987316.tar ctfc-0b281b813a9ab00d7c69eb140ab5ac2952987316.tar.gz ctfc-0b281b813a9ab00d7c69eb140ab5ac2952987316.zip | |
Roughly implemented account name change
| -rw-r--r-- | go-src/user.go | 17 | ||||
| -rw-r--r-- | go-src/windows.go | 15 |
2 files changed, 29 insertions, 3 deletions
diff --git a/go-src/user.go b/go-src/user.go index 9ea269a..1456340 100644 --- a/go-src/user.go +++ b/go-src/user.go @@ -51,6 +51,21 @@ func updatePassword(oldPassword string, newPassword string) bool { if !validatePassword(loggedInUser.Username, oldPassword) { return false } - os.WriteFile(folderPaths.FileAtUsersFolder(loggedInUser.Username), []byte(loggedInUser.Username+"\n"+newPassword+"\n"+loggedInUser.Name), 755) + os.WriteFile( + folderPaths.FileAtUsersFolder(loggedInUser.Username), + []byte(loggedInUser.Username+"\n"+newPassword+"\n"+loggedInUser.Name), + 0644) + return true +} + +func updateName(password string, newName string) bool { + if !validatePassword(loggedInUser.Username, password) { + return false + } + os.WriteFile( + folderPaths.FileAtUsersFolder(loggedInUser.Username), + []byte(loggedInUser.Username+"\n"+password+"\n"+newName), + 0644) + loggedInUser.Name = newName return true } diff --git a/go-src/windows.go b/go-src/windows.go index f32d0a7..b88c224 100644 --- a/go-src/windows.go +++ b/go-src/windows.go @@ -249,8 +249,19 @@ func accountWindow(...string) { if !updatePassword(pass[0], pass[1]) { defer showError(invalidArgument, accountWindow) } else { - logoutUser() - defer StartupWindow() + defer accountWindow() + } + case 2: + newName := formWindow("Editing", accountWindow, + []formInput{ + {"Current password", inputBackSpec, nil}, + {"New name", "", stringValidName}, + }, + ) + if !updateName(newName[0], newName[1]) { + defer showError(invalidArgument, accountWindow) + } else { + defer accountWindow() } default: defer showError(invalidCommand, accountWindow) |
