From e509f7513197e2b01ed7110ef43949e37c39a40f Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Apr 27 2015 12:50:18 +0000 Subject: Improve the pagure.lib.add_group method - Make it more prudent - Fix call to add_user_to_group - Fix session used --- diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py index 36d9a9f..0c79319 100644 --- a/pagure/lib/__init__.py +++ b/pagure/lib/__init__.py @@ -1885,16 +1885,22 @@ def add_group(session, group_name, group_type, user, is_admin): raise pagure.exceptions.PagureException( 'Invalide type for this group') + username = user user = search_user(session, username=user) + if not user: + raise pagure.exceptions.PagureException( + 'Could not find user %s' % username) grp = pagure.lib.model.PagureGroup( group_name=group_name, group_type=group_type, user_id=user.id, ) - pagure.SESSION.add(grp) + session.add(grp) + session.flush() - return add_user_to_group(session, user.username, grp, user.username) + return add_user_to_group( + session, user.username, grp, user.username, is_admin) def get_group(session, group):