Orgs: some small fixes, mostly for stability / corner cases

This commit is contained in:
2017-08-23 16:03:54 +02:00
parent e9cb235640
commit 4116357447
4 changed files with 11 additions and 6 deletions

View File

@@ -115,7 +115,7 @@ class OrgManager:
# Compute the new members.
members = set(org_doc.get('members') or []) | existing_users
unknown_members = set(org_doc.get('unknown_members')) | unknown_users
unknown_members = set(org_doc.get('unknown_members') or []) | unknown_users
# Make sure we don't exceed the current seat count.
new_seat_count = len(members) + len(unknown_members)
@@ -270,7 +270,7 @@ class OrgManager:
return False
org = self._get_org(org_id, projection={'admin_uid': 1})
return org['admin_uid'] == uid
return org.get('admin_uid') == uid
def unknown_member_roles(self, member_email: str) -> typing.Set[str]:
"""Returns the set of organization roles for this user.
@@ -321,6 +321,9 @@ class OrgManager:
"""
from pillar.api.utils import str2id
if not member_sting_ids:
return []
member_ids = [str2id(uid) for uid in member_sting_ids]
users_coll = current_app.db('users')
users = users_coll.find({'_id': {'$in': member_ids}},

View File

@@ -55,6 +55,9 @@ def view_embed(organization_id: str):
member['avatar'] = gravatar(member.get('email'))
member['_id'] = str(member['_id'])
# Make sure it's never None
organization.unknown_members = organization.unknown_members or []
can_edit = om.user_is_admin(organization_oid)
csrf = flask_wtf.csrf.generate_csrf()