aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--go-src/user.go17
-rw-r--r--go-src/windows.go15
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)