0005-sessions-unlog-inactive-users-42428.patch
tests/test_sessions.py | ||
---|---|---|
208 | 208 |
freezer.move_to(datetime.datetime.now() + datetime.timedelta(5)) # last usage limit |
209 | 209 |
pub.clean_sessions() |
210 | 210 |
assert pub.session_manager.session_class.count() == 0 |
211 | ||
212 | ||
213 |
def test_inactive_user(pub, user, app): |
|
214 |
login(app, username='foo', password='foo') |
|
215 |
assert 'Logout' in app.get('/') |
|
216 |
user.is_active = False |
|
217 |
user.store() |
|
218 |
assert 'Logout' not in app.get('/') |
wcs/qommon/sessions.py | ||
---|---|---|
215 | 215 |
user.anonymous = True |
216 | 216 |
user.name_identifiers = [ self.name_identifier ] |
217 | 217 |
user.lasso_dump = self.lasso_anonymous_identity_dump |
218 |
return user |
|
219 | 218 |
else: |
220 | 219 |
try: |
221 |
return get_publisher().user_class.get(user_id)
|
|
220 |
user = get_publisher().user_class.get(user_id)
|
|
222 | 221 |
except KeyError: |
223 |
pass |
|
222 |
return None |
|
223 |
if user.is_active: |
|
224 |
return user |
|
224 | 225 |
return None |
225 | 226 | |
226 | 227 |
def set_user(self, user_id): |
227 |
- |