From d3ef5a171fef04471f8d614f163abe77e57dc49e Mon Sep 17 00:00:00 2001
From: Tanner Prestegard <tanner.prestegard@ligo.org>
Date: Tue, 25 Jun 2019 08:28:37 -0500
Subject: [PATCH] Add 'is_internal' utility for checking user memberships

---
 gracedb/ligoauth/context_processors.py | 5 ++++-
 gracedb/ligoauth/utils.py              | 5 +++++
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/gracedb/ligoauth/context_processors.py b/gracedb/ligoauth/context_processors.py
index 98724f9e6..508df144a 100644
--- a/gracedb/ligoauth/context_processors.py
+++ b/gracedb/ligoauth/context_processors.py
@@ -1,12 +1,15 @@
 from django.conf import settings
 
+from .utils import is_internal
+
+
 def LigoAuthContext(request):
 
     user_is_internal = False
     user_is_lvem = False
     user_is_advocate = False # user is an EM advocate
     if request.user:
-        if request.user.groups.filter(name=settings.LVC_GROUP).exists():
+        if is_internal(request.user):
             user_is_internal = True
         if request.user.groups.filter(name=settings.LVEM_GROUP).exists():
             user_is_lvem = True
diff --git a/gracedb/ligoauth/utils.py b/gracedb/ligoauth/utils.py
index 91cf80f57..f3626ddcd 100644
--- a/gracedb/ligoauth/utils.py
+++ b/gracedb/ligoauth/utils.py
@@ -1,6 +1,8 @@
+from django.conf import settings
 from django.http import HttpResponseForbidden
 from django.utils.functional import wraps
 
+
 def groups_allowed(group_names):
     """
     Decorator to allow access to specified group(s).
@@ -23,3 +25,6 @@ def groups_allowed(group_names):
         return wrapper
     return decorator
 
+
+def is_internal(user):
+    return user.groups.filter(name=settings.LVC_GROUP).exists()
-- 
GitLab