diff --git a/static/assets/js/phenopolis.js b/static/assets/js/phenopolis.js index c078e6b..f1d4b92 100644 --- a/static/assets/js/phenopolis.js +++ b/static/assets/js/phenopolis.js @@ -150,7 +150,7 @@ if (!PP) { new_password_2: { equalTo: 'Both new passwords must match.' } - } + }, submitHandler: function(form) { $('#auth_modal').modal({ dismissible: false, endingTop: '20%' }); $('#auth_modal').modal('open'); @@ -168,7 +168,7 @@ if (!PP) { $('#change_password_successful').show(); $("#change_password_successful").text(data.success); }, - error: function (xhr, msg) { + error: function (data, msg) { $('#auth_modal').modal('close'); $("#username, #password, #new_password_1, #new_password_2").addClass("invalid"); $("#username, #password, #new_password_1, #new_password_2").prop("aria-invalid", "true"); diff --git a/templates/components/change_password_modal.html b/templates/components/change_password_modal.html index 1213ac2..9fa0936 100644 --- a/templates/components/change_password_modal.html +++ b/templates/components/change_password_modal.html @@ -4,8 +4,8 @@ close

Change Password

-
+
lock diff --git a/templates/components/login_modal.html b/templates/components/login_modal.html index 56acaaa..9fea5c9 100644 --- a/templates/components/login_modal.html +++ b/templates/components/login_modal.html @@ -16,7 +16,7 @@

Login

- +

Alternatively, select the 'Demo Login' button below to login as a demo user.

diff --git a/tests/test_login.py b/tests/test_login.py index 8614d47..d0a927a 100644 --- a/tests/test_login.py +++ b/tests/test_login.py @@ -33,12 +33,11 @@ def login(self, username, password): def logout(self): return self.app.get('/logout', follow_redirects=True) - def change_password(self, username, password, new_pass_1, new_pass_2): + def change_password(self, username, password, new_pass_1): return self.app.post('/change_password', data=dict( - name=username, + change_pwd_name=username, current_password=password, new_password_1=new_pass_1, - new_password_2=new_pass_2 ), follow_redirects=True) def test_login_logout(self): @@ -60,7 +59,7 @@ def test_change_password(self): assert rv.status_code == 200 assert 'Authenticated' in rv.data - rv = self.change_password('test', 'test123', 'test456', 'test456') + rv = self.change_password('test', 'test123', 'test456') assert rv.status_code == 200 print(rv.data) assert 'Password for username \'test\' changed' in rv.data @@ -72,19 +71,16 @@ def test_change_password(self): rv = self.login('test', 'test123') assert rv.status_code == 401 - rv = self.change_password('test', 'test456', 'test123', 'test123') + rv = self.change_password('test', 'test456', 'test123') assert rv.status_code == 200 - rv = self.change_password('demo', 'demo123', 'demo456', 'demo456') - assert rv.status_code == 401 - - rv = self.change_password('test', 'test123', 'x', 'test456') + rv = self.change_password('demo', 'demo123', 'demo456') assert rv.status_code == 401 - rv = self.change_password('test', 'x', 'test456', 'test456') + rv = self.change_password('test', 'x', 'test456') assert rv.status_code == 401 - rv = self.change_password('x', 'test123', 'test456', 'test456') + rv = self.change_password('x', 'test123', 'test456') assert rv.status_code == 401 if __name__ == '__main__': diff --git a/views/__init__.py b/views/__init__.py index 0fe894c..4a24e01 100644 --- a/views/__init__.py +++ b/views/__init__.py @@ -193,14 +193,11 @@ def logout(): # @app.route('/change_password', methods=['POST']) def change_password(): - username = request.form['name'] + username = request.form['change_pwd_name'] password = request.form['current_password'] new_password_1 = request.form['new_password_1'] - new_password_2 = request.form['new_password_2'] if username == 'demo': return jsonify(error='You do not have permission to change the password for username \'demo\'.'), 401 - elif new_password_1 != new_password_2: - return jsonify(error='New password and re-typed password do not match. Please try again.'), 401 elif not check_auth(username,password): print 'Change password:- Login Failed' return jsonify(error='Username and current password incorrect. Please try again.'), 401