From 5a6020acfbfaf09e9840acadc517fe9a0a2db4fd Mon Sep 17 00:00:00 2001 From: nd <git@notandy.de> Date: Fri, 17 Jul 2020 19:32:25 +0200 Subject: [PATCH] fixup! fix some ldap crap --- uffd/user/models.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/uffd/user/models.py b/uffd/user/models.py index bc4e038f..fb04136e 100644 --- a/uffd/user/models.py +++ b/uffd/user/models.py @@ -19,7 +19,10 @@ class User(): # if you are in no groups, the "memberOf" attribute does not exist # if you are only in one group, ldap returns a string not an array with one element # we sanitize this to always be an array - sanitized_groups = ldapobject['memberOf'].value if hasattr(ldapobject, 'memberOf') else [] + try: + sanitized_groups = ldapobject['memberOf'].value if hasattr(ldapobject, 'memberOf') else [] + except: + sanitized_groups = [] if isinstance(sanitized_groups, str): sanitized_groups = [sanitized_groups] return User( @@ -121,7 +124,10 @@ class Group(): @classmethod def from_ldap(cls, ldapobject): - description = ldapobject['description'].value if hasattr(ldapobject, 'description') else '' + try: + description = ldapobject['description'].value if hasattr(ldapobject, 'description') else '' + except: + description = '' # if a group has no members, "uniqueMember" attribute does not exist # if a group has exactly one member, ldap returns a string not an array with one element # we sanitize this to always be an array -- GitLab