diff --git a/gracedb/ligoauth/middleware.py b/gracedb/ligoauth/middleware.py index 3b43f5474d152b25018650ce32dccfeac872d9d3..c3214afb8b5c92cdcf030f0e3d4b885f13c7afa6 100644 --- a/gracedb/ligoauth/middleware.py +++ b/gracedb/ligoauth/middleware.py @@ -126,8 +126,11 @@ class ControlRoomMiddleware(object): # Add user to control room group(s) for ifo, ip in settings.CONTROL_ROOM_IPS.iteritems(): if (ip == user_ip): - request.user.groups.add(Group.objects.get(name= - ifo.lower() + self.control_room_group_suffix)) + control_room_group = Group.objects.get(name= + (ifo.lower() + self.control_room_group_suffix)) + request.user.groups.through.objects.get_or_create( + user=request.user, group=control_room_group) + break return request