def submitResetPass(self, *args): username = self.reset_userSelector.text answer = self.reset_answer.get() newPass = self.reset_newPass.get() newPass2 = self.reset_newPass2.get() # Error checking: username doesn't exist if not User.userExists(username): self.reset_notifier.config(text="Username does not exist.", foreground='red') return # Error checking: wrong answer elif not User.verifySecretAnswer(username, answer): self.reset_notifier.config(text="Wrong answer.", foreground="red") return # Error checking: blank fields elif username=="" or answer=="" or newPass=="" or newPass2=="": self.reset_notifier.config(text="Please fill up all fields.", foreground="red") return elif newPass!=newPass2: self.reset_notifier.config(text="New passwords don't match.", foreground="red") return user = User(username, "") user.changePassword(newPass) self.reset_notifier.config(text="Password successfully changed.", foreground='darkgreen') self.clearResetPasswordEntries()
def submitChangePass(self,*a): user = User(self.change_user.get(), self.change_oldPass.get()) newPass = self.change_newPass.get() newPass2 = self.change_newPass2.get() # Error checking: username doesn't exist if not user.userExists(user.username): self.change_notifier.config(text='Username does not exist.', foreground='red') return # Error checking: wrong password elif not user.auth(): self.change_notifier.config(text='Wrong password.', foreground='red') return # Error checking: blank fields elif newPass=="" or newPass2=="": self.change_notifier.config(text='Please fill up all fields.', foreground='red') return # Error checking: unmatched new passwords elif newPass!=newPass2: self.change_notifier.config(text="New passwords don't match.", foreground='red') return user.changePassword(newPass) self.change_notifier.config(text="Password successfully changed.", foreground='darkgreen') self.clearChangePasswordEntries()
def submitCreateUser(self,*a): admin = User(self.create_adminUser.get(), self.create_adminPass.get()) newUser = User(self.create_newUser.get(), self.create_newPass.get()) newUserSecretQ = self.create_secretQ.get() newUserSecretA = self.create_secretA.get() reEnteredPass = self.create_newPass2.get() # Error checking: wrong admin username-password combo if not admin.auth(): self.create_notifier.config(text='Wrong administrator credentials.', foreground='red') return # Error checking: entered admin account isn't root elif not admin.checkIfRoot(): message = 'User ' + admin.username + ' is not an administrator.' self.create_notifier.config(text=message, foreground='red') return # Error checking: blank fields in new user input fields if newUser.username=="" or newUser.password=="" or newUserSecretA=="" or newUserSecretQ=="" or reEnteredPass=="": self.create_notifier.config(text='Please fill up all fields.', foreground='red') return # Error checking: username already taken elif User.userExists(newUser.username): message = 'Username ' + newUser.username + ' is already taken.' self.create_notifier.config(text=message, foreground='red') return # Error checking: two password fields don't match elif newUser.password!=reEnteredPass: self.create_notifier.config(text="Passwords don't match", foreground='red') return # Create the new user newUser.saveUser(newUserSecretQ, newUserSecretA, isRoot=self.create_isAdmin.get()) self.create_notifier.config(text="New user created.", foreground='darkgreen') self.clearCreateAccountEntries() # Refresh the Reset Password tab's user drop down menu choices self.reset_userSelector.comboBox.config(values=User.listUsernames())
def submitLogIn(self,*a): user = User(self.logIn_username.get(), self.logIn_password.get()) if not user.auth(): self.logIn_notifier.config(text='Wrong credentials. Try again.', foreground='red') else: # Destroy log in screen self.notebook.pack_forget() # Move on to main program self.parent.geometry("800x500") self.mainProgram = mainProgram = MainProgram(self.parent) mainProgram.pack(fill=BOTH,expand=1) self.mainProgram.bind("<<Logout>>",self.logoutCB) mainProgram.app._activeUser = user self.clearAllEntries()
def submitFirstUser(self,*a): user = User(self.first_username.get(), self.first_pass.get()) reEnteredPass = self.first_pass2.get() secretQ = self.first_question.get() secretA = self.first_answer.get() if user.password!=reEnteredPass: self.first_notifier.config(text="Passwords don't match.", foreground='red') return elif user.username=="" or user.password=="" or reEnteredPass=="" or secretQ=="" or secretA=="": self.first_notifier.config(text="Please fill up all fields.", foreground='red') return # Save the user into the database user.saveUser(secretQ, secretA, 1) # Move on to login screen self.frame.pack_forget() self.frame.destroy() self.initUI()