diff --git a/oneplus/context_processors.py b/oneplus/context_processors.py index a21d88ce..6b1a7ac2 100644 --- a/oneplus/context_processors.py +++ b/oneplus/context_processors.py @@ -1,6 +1,7 @@ def social_media(request): from django.conf import settings return { + 'SOCIAL_MEDIA_ACTIVE': settings.SOCIAL_MEDIA_ACTIVE, 'FB_APP_NUM': settings.FB_APP_NUM, 'FB_REDIRECT': settings.FB_REDIRECT, 'FB_SITE_TITLE': settings.FB_SITE_TITLE, diff --git a/oneplus/public_views.py b/oneplus/public_views.py index 8e67f7c0..e3b55bdc 100644 --- a/oneplus/public_views.py +++ b/oneplus/public_views.py @@ -2,7 +2,7 @@ import logging from django.conf import settings -from django.shortcuts import render +from django.shortcuts import redirect, render from auth.models import Learner from core.models import Participant, ParticipantBadgeTemplateRel from gamification.models import GamificationBadgeTemplate @@ -24,6 +24,9 @@ def get_learner_label(learner): @oneplus_check_user def badges(request, state, user): + if not settings.SOCIAL_MEDIA_ACTIVE: + return redirect('arrive') + def get(): badge_id = request.GET.get('b', None) participant_id = request.GET.get('p', None) @@ -77,6 +80,9 @@ def get(): @oneplus_check_user def level(request, state, user): + if not settings.SOCIAL_MEDIA_ACTIVE: + return redirect('arrive') + def get(): participant_id = request.GET.get('p', None) @@ -122,6 +128,9 @@ def get(): @oneplus_check_user def leaderboard(request, state, user, board_type=''): + if not settings.SOCIAL_MEDIA_ACTIVE: + return redirect('arrive') + def get(): participant_id = request.GET.get('p', None) max_uncollapsed = 3 diff --git a/oneplus/sharing_views.py b/oneplus/sharing_views.py index 4bb7d8a5..375452ae 100644 --- a/oneplus/sharing_views.py +++ b/oneplus/sharing_views.py @@ -9,6 +9,9 @@ @oneplus_participant_required def level(request, state, user, participant): + if not settings.SOCIAL_MEDIA_ACTIVE: + return redirect('arrive') + # get learner state _participant = participant learner = _participant.learner @@ -49,6 +52,9 @@ def get(): @oneplus_participant_required def leaderboard(request, state, user, participant, board_type=''): + if not settings.SOCIAL_MEDIA_ACTIVE: + return redirect('arrive') + max_uncollapsed = 3 if board_type == 'class': diff --git a/oneplus/templates/core/main.html b/oneplus/templates/core/main.html index 7cbb16d9..874bd504 100644 --- a/oneplus/templates/core/main.html +++ b/oneplus/templates/core/main.html @@ -58,41 +58,42 @@