From 05ad824dcb8fe71916291a7a03231ef66ed15a31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Wed, 20 Dec 2017 13:34:11 +0100 Subject: [PATCH] Allow UserClass instantiation without database ID This allows us to inspect the capabilities that would be given to a user, without actually creating the user in the database first. --- pillar/auth/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pillar/auth/__init__.py b/pillar/auth/__init__.py index 28b2c475..a00e90c0 100644 --- a/pillar/auth/__init__.py +++ b/pillar/auth/__init__.py @@ -49,7 +49,7 @@ class UserClass(flask_login.UserMixin): user = cls(token) - user.user_id = db_user['_id'] + user.user_id = db_user.get('_id') user.roles = db_user.get('roles') or [] user.group_ids = db_user.get('groups') or [] user.email = db_user.get('email') or '' @@ -57,7 +57,7 @@ class UserClass(flask_login.UserMixin): user.full_name = db_user.get('full_name') or '' # Derived properties - user.objectid = str(db_user['_id']) + user.objectid = str(user.user_id or '') user.gravatar = utils.gravatar(user.email) user.groups = [str(g) for g in user.group_ids] user.collect_capabilities()