Skip to content

Commit

Permalink
Merge pull request #930 from MasoniteFramework/fix/ajax-user
Browse files Browse the repository at this point in the history
users now login immediately
  • Loading branch information
josephmancuso committed Oct 29, 2019
2 parents 79fbc06 + 0aaac9f commit cdb47da
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 1 deletion.
2 changes: 1 addition & 1 deletion masonite/__version__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
__title__ = 'masonite'
__description__ = 'The core for the Masonite framework'
__url__ = 'https://github.com/MasoniteFramework/masonite'
__version__ = '2.2.25'
__version__ = '2.2.26'
__author__ = 'Joseph Mancuso'
__author_email__ = 'joe@masoniteproject.com'
__licence__ = 'MIT'
4 changes: 4 additions & 0 deletions masonite/auth/Auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,8 @@ def login(self, name, password):
model.remember_token = remember_token
model.save()
self.request.app().make('AuthManager').driver(self.driver).save(remember_token, model=model)

self.request.set_user(model)
return model

except Exception as exception:
Expand All @@ -99,6 +101,7 @@ def logout(self):
self
"""
self.request.app().make('AuthManager').driver(self.driver).delete()
self.request.reset_user()
return self

def login_by_id(self, user_id):
Expand All @@ -118,6 +121,7 @@ def login_by_id(self, user_id):
model.remember_token = remember_token
model.save()
self.request.app().make('AuthManager').driver(self.driver).save(remember_token, model=model)
self.request.set_user(model)
return model

return False
Expand Down
5 changes: 5 additions & 0 deletions masonite/request.py
Original file line number Diff line number Diff line change
Expand Up @@ -613,6 +613,11 @@ def set_user(self, user_model):

return self

def reset_user(self):
"""Resets the user back to none
"""
self.user_model = None

def user(self):
"""Load the user into the class.
Expand Down
3 changes: 3 additions & 0 deletions tests/core/test_auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ def test_get_user(self):
for driver in ('cookie', 'jwt'):
self.auth.driver = driver
self.assertTrue(self.auth.login_by_id(1))
self.assertTrue(self.request.user())

def test_get_user_returns_false_if_not_loggedin(self):
for driver in ('cookie', 'jwt'):
Expand All @@ -114,10 +115,12 @@ def test_logout_user(self):
self.auth.login('user@email.com', 'secret')
self.assertTrue(self.request.get_cookie('token'))
self.assertTrue(self.auth.user())
self.assertTrue(self.request.user())

self.auth.logout()
self.assertFalse(self.request.get_cookie('token'))
self.assertFalse(self.auth.user())
self.assertFalse(self.request.user())

def test_login_user_fails(self):
for driver in ('cookie', 'jwt'):
Expand Down

0 comments on commit cdb47da

Please sign in to comment.