delete acc and better use of user
This commit is contained in:
parent
5c867185c5
commit
40fe81e858
@ -91,3 +91,29 @@ class User:
|
|||||||
else:
|
else:
|
||||||
print('Something went wrong while trying to update username..')
|
print('Something went wrong while trying to update username..')
|
||||||
|
|
||||||
|
|
||||||
|
def deleteAccount(self):
|
||||||
|
|
||||||
|
while True:
|
||||||
|
print('Are you sure you want to delete this account? (y/n)\n(this will burn all coins available in this account) (y/n)')
|
||||||
|
confirm = input('> ')
|
||||||
|
if confirm == 'y' or confirm == 'Y':
|
||||||
|
print('Deleting account..')
|
||||||
|
break
|
||||||
|
|
||||||
|
elif confirm == 'n' or confirm == 'N':
|
||||||
|
return False
|
||||||
|
|
||||||
|
else:
|
||||||
|
print('Invalid input')
|
||||||
|
|
||||||
|
private_key_bytes = Signature.privateKeyToBytes(self.private_key)
|
||||||
|
|
||||||
|
if self.db.deleteUser(private_key_bytes) == True:
|
||||||
|
print('Account deleted')
|
||||||
|
self.logout()
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
print('Something went wrong while trying to delete account..')
|
||||||
|
return False
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ class bcolors:
|
|||||||
class MenuHelper:
|
class MenuHelper:
|
||||||
def __init__(self, db):
|
def __init__(self, db):
|
||||||
self.db = db
|
self.db = db
|
||||||
|
self.user = None
|
||||||
|
|
||||||
self.start_menu = {}
|
self.start_menu = {}
|
||||||
self.user_main_menu = {}
|
self.user_main_menu = {}
|
||||||
@ -69,27 +70,29 @@ class MenuHelper:
|
|||||||
print("TODO")
|
print("TODO")
|
||||||
|
|
||||||
case "Login":
|
case "Login":
|
||||||
user = User(self.db)
|
self.user = User(self.db)
|
||||||
logged_in = user.login()
|
logged_in = self.user.login()
|
||||||
self.clearScreen()
|
self.clearScreen()
|
||||||
if logged_in:
|
if logged_in:
|
||||||
print(f'Welcome {user.username}')
|
print(f'Welcome {self.user.username}')
|
||||||
return user
|
return
|
||||||
print("Login failed")
|
print("Login failed")
|
||||||
|
self.user = None
|
||||||
|
|
||||||
case "Sign up":
|
case "Sign up":
|
||||||
new_user = User(self.db)
|
self.user = User(self.db)
|
||||||
registered = new_user.register()
|
registered = self.user.register()
|
||||||
if registered:
|
if registered:
|
||||||
print("Registration successful")
|
print("Registration successful")
|
||||||
return new_user
|
return
|
||||||
print("Registration failed")
|
print("Registration failed")
|
||||||
|
self.user = None
|
||||||
|
|
||||||
case _:
|
case _:
|
||||||
print("Wrong input, try again")
|
print("Wrong input, try again")
|
||||||
|
|
||||||
def runUserMainMenu(self, user):
|
def runUserMainMenu(self):
|
||||||
while(user):
|
while(self.user):
|
||||||
|
|
||||||
choice = self.getMenuInput(self.user_main_menu)
|
choice = self.getMenuInput(self.user_main_menu)
|
||||||
if choice == None:
|
if choice == None:
|
||||||
@ -102,20 +105,20 @@ class MenuHelper:
|
|||||||
exit()
|
exit()
|
||||||
|
|
||||||
case "Log out":
|
case "Log out":
|
||||||
user.logout()
|
self.user.logout()
|
||||||
user = None
|
self.user = None
|
||||||
|
|
||||||
case "User Settings":
|
case "User Settings":
|
||||||
self.runUserSettingsMenu(user)
|
self.runUserSettingsMenu()
|
||||||
|
|
||||||
case "Blockchain":
|
case "Blockchain":
|
||||||
self.runUserBlockchainMenu(user)
|
self.runUserBlockchainMenu()
|
||||||
|
|
||||||
case _:
|
case _:
|
||||||
print("Wrong input, try again")
|
print("Wrong input, try again")
|
||||||
|
|
||||||
def runUserBlockchainMenu(self, user):
|
def runUserBlockchainMenu(self):
|
||||||
while(user):
|
while(self.user):
|
||||||
|
|
||||||
choice = self.getMenuInput(self.user_blockchain_menu)
|
choice = self.getMenuInput(self.user_blockchain_menu)
|
||||||
if choice == None:
|
if choice == None:
|
||||||
@ -127,7 +130,7 @@ class MenuHelper:
|
|||||||
return
|
return
|
||||||
|
|
||||||
case "Explore the Blockchain":
|
case "Explore the Blockchain":
|
||||||
print(user.private_key)
|
print(self.user.private_key)
|
||||||
|
|
||||||
case "Transfer coins":
|
case "Transfer coins":
|
||||||
input("Enter the username of the receiver: ")
|
input("Enter the username of the receiver: ")
|
||||||
@ -148,8 +151,8 @@ class MenuHelper:
|
|||||||
case _:
|
case _:
|
||||||
print("Wrong input, try again")
|
print("Wrong input, try again")
|
||||||
|
|
||||||
def runUserSettingsMenu(self, user):
|
def runUserSettingsMenu(self):
|
||||||
while(user):
|
while(self.user):
|
||||||
|
|
||||||
choice = self.getMenuInput(self.user_settings_menu)
|
choice = self.getMenuInput(self.user_settings_menu)
|
||||||
if choice == None:
|
if choice == None:
|
||||||
@ -161,16 +164,18 @@ class MenuHelper:
|
|||||||
return
|
return
|
||||||
|
|
||||||
case "View account info":
|
case "View account info":
|
||||||
print(user.private_key)
|
print(self.user.private_key)
|
||||||
|
|
||||||
case "Change username":
|
case "Change username":
|
||||||
user.updateAccount()
|
self.user.updateAccount()
|
||||||
|
|
||||||
case "Change password":
|
case "Change password":
|
||||||
user.updatePassword()
|
self.user.updatePassword()
|
||||||
|
|
||||||
case "DELETE ACCOUNT":
|
case "DELETE ACCOUNT":
|
||||||
print("TODO")
|
if self.user.deleteAccount():
|
||||||
|
self.user = None
|
||||||
|
|
||||||
|
|
||||||
case _:
|
case _:
|
||||||
print("Wrong input, try again")
|
print("Wrong input, try again")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user