diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py index 49df99d4b55814b22d09338426ff649d3bab5425..fc3c2c0383a486329ae73eb8674b62eaff90fb4b 100644 --- a/common/djangoapps/student/views.py +++ b/common/djangoapps/student/views.py @@ -398,7 +398,7 @@ def register_user(request, extra_context=None): # If third-party auth is enabled, prepopulate the form with data from the # selected provider. - if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH') and pipeline.running(request): + if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')) and pipeline.running(request): running_pipeline = pipeline.get(request) current_provider = provider.Registry.get_by_backend_name(running_pipeline.get('backend')) overrides = current_provider.get_register_form_data(running_pipeline.get('kwargs')) @@ -577,7 +577,7 @@ def dashboard(request): 'provider_states': [], } - if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH'): + if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')): context['duplicate_provider'] = pipeline.get_duplicate_provider(messages.get_messages(request)) context['provider_user_states'] = pipeline.get_provider_user_states(user) @@ -861,7 +861,7 @@ def login_user(request, error=""): # pylint: disable-msg=too-many-statements,un redirect_url = None response = None running_pipeline = None - third_party_auth_requested = settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH') and pipeline.running(request) + third_party_auth_requested = microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')) and pipeline.running(request) third_party_auth_successful = False trumped_by_first_party_auth = bool(request.POST.get('email')) or bool(request.POST.get('password')) user = None @@ -885,10 +885,10 @@ def login_user(request, error=""): # pylint: disable-msg=too-many-statements,un username=username, backend_name=backend_name)) return HttpResponseBadRequest( _("You've successfully logged into your {provider_name} account, but this account isn't linked with an {platform_name} account yet.").format( - platform_name=settings.PLATFORM_NAME, provider_name=requested_provider.NAME) + platform_name=settings.PLATFORM_NAME, provider_name=requested_provider.NAME) + "<br/><br/>" + _("Use your {platform_name} username and password to log into {platform_name} below, " "and then link your {platform_name} account with {provider_name} from your dashboard.").format( - platform_name=settings.PLATFORM_NAME, provider_name=requested_provider.NAME) + platform_name=settings.PLATFORM_NAME, provider_name=requested_provider.NAME) + "<br/><br/>" + _("If you don't have an {platform_name} account yet, click <strong>Register Now</strong> at the top of the page.").format( platform_name=settings.PLATFORM_NAME), content_type="text/plain", @@ -1002,7 +1002,7 @@ def login_user(request, error=""): # pylint: disable-msg=too-many-statements,un }, context={ 'Google Analytics': { - 'clientId': tracking_context.get('client_id') + 'clientId': tracking_context.get('client_id') } } ) @@ -1288,7 +1288,7 @@ def create_account(request, post_override=None): # pylint: disable-msg=too-many getattr(settings, 'REGISTRATION_EXTRA_FIELDS', {}) ) - if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH') and pipeline.running(request): + if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')) and pipeline.running(request): post_vars = dict(post_vars.items()) post_vars.update({'password': pipeline.make_random_password()}) @@ -1469,14 +1469,14 @@ def create_account(request, post_override=None): # pylint: disable-msg=too-many registration_course_id = request.session.get('registration_course_id') analytics.track( user.id, - "edx.bi.user.account.registered", + "edx.bi.user.account.registered", { "category": "conversion", "label": registration_course_id }, context={ 'Google Analytics': { - 'clientId': tracking_context.get('client_id') + 'clientId': tracking_context.get('client_id') } } ) @@ -1546,7 +1546,7 @@ def create_account(request, post_override=None): # pylint: disable-msg=too-many redirect_url = try_change_enrollment(request) # Resume the third-party-auth pipeline if necessary. - if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH') and pipeline.running(request): + if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')) and pipeline.running(request): running_pipeline = pipeline.get(request) redirect_url = pipeline.get_complete_url(running_pipeline['backend']) diff --git a/lms/templates/dashboard.html b/lms/templates/dashboard.html index 3509fe0f6c3bb4bcf940c212633b62036de93008..c011c33db45b9d45de9f0a56db5bea6a18aada6d 100644 --- a/lms/templates/dashboard.html +++ b/lms/templates/dashboard.html @@ -1,6 +1,7 @@ <%! from django.utils.translation import ugettext as _ %> <%! from django.template import RequestContext %> <%! from third_party_auth import pipeline %> +<%! from microsite_configuration import microsite %> <%! from django.core.urlresolvers import reverse @@ -223,7 +224,7 @@ <%include file='dashboard/_dashboard_info_language.html' /> %endif - % if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH'): + % if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')): <li class="controls--account"> <span class="title"> ## Translators: this section lists all the third-party authentication providers (for example, Google and LinkedIn) the user can link with or unlink from their edX account. diff --git a/lms/templates/login.html b/lms/templates/login.html index 3b73266407a73f5e0fa41eb5f2b3936f79b59425..ae78227d330372c532a90aafc8f96d6acb8d5b9b 100644 --- a/lms/templates/login.html +++ b/lms/templates/login.html @@ -194,7 +194,7 @@ </div> </form> - % if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH'): + % if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')): <span class="deco-divider"> ## Developers: this is a sentence fragment, which is usually frowned upon. The design of the pags uses this fragment to provide an "else" clause underneath a number of choices. It's OK to leave it. diff --git a/lms/templates/register.html b/lms/templates/register.html index 365fb17ff5f8664113b1615a195ec03b2740e28f..666f9c08734db061ffdccdbcfb9ffd4a883f56c6 100644 --- a/lms/templates/register.html +++ b/lms/templates/register.html @@ -116,7 +116,7 @@ <ul class="message-copy"> </ul> </div> - % if settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH'): + % if microsite.get_value('ENABLE_THIRD_PARTY_AUTH', settings.FEATURES.get('ENABLE_THIRD_PARTY_AUTH')): % if not running_pipeline: