From 05554016bb285175e82cde778ca48f69a5f6dd02 Mon Sep 17 00:00:00 2001 From: Eduardo Robles Date: Thu, 21 Apr 2022 18:46:55 +0200 Subject: [PATCH] fixing adding census to user-and-password users (#195) --- authapi/authmethods/utils.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/authapi/authmethods/utils.py b/authapi/authmethods/utils.py index 0f82de65..ad2a5b61 100644 --- a/authapi/authmethods/utils.py +++ b/authapi/authmethods/utils.py @@ -787,6 +787,8 @@ def edit_user(user, req, auth_event): if auth_event.extra_fields: for extra in auth_event.extra_fields: + if extra.get('type') not in req: + continue if extra.get('type') == 'email' and req.get(extra.get('name')): user.email = req.get(extra.get('name')) req.pop(extra.get('name')) @@ -851,7 +853,10 @@ def get_trimmed_user_req(req, ae): if ae.extra_fields: for extra in ae.extra_fields: - if extra.get('type') in ['password', 'image']: + if ( + extra.get('type') in ['password', 'image'] and + extra.get('name') in metadata + ): metadata.pop(extra.get('name')) return metadata @@ -865,7 +870,10 @@ def get_trimmed_user(user, ae): if ae.extra_fields: for extra in ae.extra_fields: - if extra.get('type') in ['password', 'image']: + if ( + extra.get('type') in ['password', 'image'] and + extra.get('name') in metadata + ): metadata.pop(extra.get('name')) if user.email: