From 8722a224eb5753aa56e95f45e7a69a1113cfdf1e Mon Sep 17 00:00:00 2001
From: Fredrik Jonsson <frjo@xdeb.org>
Date: Fri, 5 Oct 2018 11:07:42 +0200
Subject: [PATCH] Add next query to social login link so next redirect is done
 when needed. Set SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS to
 STAFF_EMAIL_DOMAINS if not set.

---
 opentech/apply/users/templates/users/login.html | 2 +-
 opentech/settings/base.py                       | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/opentech/apply/users/templates/users/login.html b/opentech/apply/users/templates/users/login.html
index e80099f53..73d84763c 100644
--- a/opentech/apply/users/templates/users/login.html
+++ b/opentech/apply/users/templates/users/login.html
@@ -13,7 +13,7 @@
     </form>
 
     <div class="wrapper wrapper--inner-space-large">
-      <a class="link link--button link--button-long-text" href="{% url "social:begin" "google-oauth2" %}">Log in with your OTF email</a>
+      <a class="link link--button link--button-long-text" href="{% url "social:begin" "google-oauth2" %}{% if next %}?next={{ next }}{% endif %}">Log in with your OTF email</a>
     </div>
   </div>
 {% endblock %}
diff --git a/opentech/settings/base.py b/opentech/settings/base.py
index 7f96ff6c8..a96ad8787 100644
--- a/opentech/settings/base.py
+++ b/opentech/settings/base.py
@@ -384,7 +384,12 @@ SOCIAL_AUTH_URL_NAMESPACE = 'social'
 # To create a new set of credentials, go to https://console.developers.google.com/apis/credentials
 # Make sure the Google+ API is enabled for your API project
 STAFF_EMAIL_DOMAINS = ['opentech.fund']
-SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS = env.get('SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS', '').split(',') or STAFF_EMAIL_DOMAINS
+
+if 'SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS' in env:
+    SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS = env['SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS'].split(',')
+else:
+    SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS = STAFF_EMAIL_DOMAINS
+
 SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = env.get('SOCIAL_AUTH_GOOGLE_OAUTH2_KEY', '')
 SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = env.get('SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET', '')
 
-- 
GitLab