From b3f7191e8cc8f35d036a2fd7b16289c6ea59e1f0 Mon Sep 17 00:00:00 2001
From: Dominik George <dominik.george@teckids.org>
Date: Mon, 9 Dec 2019 22:45:39 +0100
Subject: [PATCH] Show debug toolbar to superusers independent of IP address

---
 biscuit/core/settings.py          | 3 ++-
 biscuit/core/util/core_helpers.py | 8 ++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/biscuit/core/settings.py b/biscuit/core/settings.py
index af08323f8..0a89370df 100644
--- a/biscuit/core/settings.py
+++ b/biscuit/core/settings.py
@@ -35,7 +35,8 @@ INTERNAL_IPS = _settings.get('maintenance.internal_ips', [])
 DEBUG_TOOLBAR_CONFIG = {
     'RENDER_PANELS': True,
     'SHOW_COLLAPSED': True,
-    'JQUERY_URL': ''
+    'JQUERY_URL': '',
+    'SHOW_TOOLBAR_CALLBACK': 'biscuit.core.util.core_helpers.dt_show_toolbar'
 }
 
 ALLOWED_HOSTS = _settings.get('http.allowed_hosts', [])
diff --git a/biscuit/core/util/core_helpers.py b/biscuit/core/util/core_helpers.py
index e8c0b1fe2..83a1449f8 100644
--- a/biscuit/core/util/core_helpers.py
+++ b/biscuit/core/util/core_helpers.py
@@ -2,8 +2,16 @@ from importlib import import_module
 import pkgutil
 from typing import Sequence
 
+from django.conf import settings
 from django.http import HttpRequest
 
+from debug_toolbar.middleware import show_toolbar
+
+
+def dt_show_toolbar(request: HttpRequest) -> bool:
+    return settings.DEBUG and (show_toolbar(request) or request.user.is_superuser)
+   
+
 
 def get_app_packages() -> Sequence[str]:
     """ Find all packages within the biscuit.apps namespace. """
-- 
GitLab