diff --git a/common/djangoapps/enrollment/urls.py b/common/djangoapps/enrollment/urls.py index 9b8dd077aa..e3621a2e94 100644 --- a/common/djangoapps/enrollment/urls.py +++ b/common/djangoapps/enrollment/urls.py @@ -7,12 +7,15 @@ from django.conf.urls import patterns, url from .views import get_course_enrollment, list_student_enrollments -urlpatterns = patterns( - 'enrollment.views', - url(r'^student$', list_student_enrollments, name='courseenrollments'), - url( - r'^course/{course_key}$'.format(course_key=settings.COURSE_ID_PATTERN), - get_course_enrollment, - name='courseenrollment' - ), -) +urlpatterns = [] + +if settings.FEATURES.get('ENABLE_COMBINED_LOGIN_REGISTRATION'): + urlpatterns += patterns( + 'enrollment.views', + url(r'^student$', list_student_enrollments, name='courseenrollments'), + url( + r'^course/{course_key}$'.format(course_key=settings.COURSE_ID_PATTERN), + get_course_enrollment, + name='courseenrollment' + ), + ) diff --git a/common/djangoapps/user_api/urls.py b/common/djangoapps/user_api/urls.py index dc470ceed6..7ae4f5f350 100644 --- a/common/djangoapps/user_api/urls.py +++ b/common/djangoapps/user_api/urls.py @@ -1,3 +1,4 @@ +from django.conf import settings from django.conf.urls import include, patterns, url from rest_framework import routers from user_api import views as user_api_views @@ -10,9 +11,6 @@ user_api_router.register(r'user_prefs', user_api_views.UserPreferenceViewSet) urlpatterns = patterns( '', url(r'^v1/', include(user_api_router.urls)), - url(r'^v1/account/login_session/$', user_api_views.LoginSessionView.as_view(), name="user_api_login_session"), - url(r'^v1/account/registration/$', user_api_views.RegistrationView.as_view(), name="user_api_registration"), - url(r'^v1/account/password_reset/$', user_api_views.PasswordResetView.as_view(), name="user_api_password_reset"), url( r'^v1/preferences/(?P{})/users/$'.format(UserPreference.KEY_REGEX), user_api_views.PreferenceUsersListView.as_view() @@ -22,3 +20,11 @@ urlpatterns = patterns( user_api_views.ForumRoleUsersListView.as_view() ), ) + +if settings.FEATURES.get('ENABLE_COMBINED_LOGIN_REGISTRATION'): + urlpatterns += patterns( + '', + url(r'^v1/account/login_session/$', user_api_views.LoginSessionView.as_view(), name="user_api_login_session"), + url(r'^v1/account/registration/$', user_api_views.RegistrationView.as_view(), name="user_api_registration"), + url(r'^v1/account/password_reset/$', user_api_views.PasswordResetView.as_view(), name="user_api_password_reset"), + ) diff --git a/lms/djangoapps/student_account/urls.py b/lms/djangoapps/student_account/urls.py index 6f7e5aa3e4..945edbd9cd 100644 --- a/lms/djangoapps/student_account/urls.py +++ b/lms/djangoapps/student_account/urls.py @@ -2,12 +2,15 @@ from django.conf.urls import patterns, url from django.conf import settings -urlpatterns = patterns( - 'student_account.views', - url(r'^login/$', 'login_and_registration_form', {'initial_mode': 'login'}, name='account_login'), - url(r'^register/$', 'login_and_registration_form', {'initial_mode': 'register'}, name='account_register'), - url(r'^password$', 'password_change_request_handler', name='password_change_request'), -) +urlpatterns = [] + +if settings.FEATURES.get('ENABLE_COMBINED_LOGIN_REGISTRATION'): + urlpatterns += patterns( + 'student_account.views', + url(r'^login/$', 'login_and_registration_form', {'initial_mode': 'login'}, name='account_login'), + url(r'^register/$', 'login_and_registration_form', {'initial_mode': 'register'}, name='account_register'), + url(r'^password$', 'password_change_request_handler', name='password_change_request'), + ) if settings.FEATURES.get('ENABLE_NEW_DASHBOARD'): urlpatterns += patterns( diff --git a/lms/envs/common.py b/lms/envs/common.py index 77468e4112..246c4c4666 100644 --- a/lms/envs/common.py +++ b/lms/envs/common.py @@ -288,6 +288,9 @@ FEATURES = { # Enable the new dashboard, account, and profile pages 'ENABLE_NEW_DASHBOARD': False, + # Enable the combined login/registration form + 'ENABLE_COMBINED_LOGIN_REGISTRATION': False, + # Show a section in the membership tab of the instructor dashboard # to allow an upload of a CSV file that contains a list of new accounts to create # and register for course. diff --git a/lms/envs/test.py b/lms/envs/test.py index 8019cd1a4c..497f2ea2b9 100644 --- a/lms/envs/test.py +++ b/lms/envs/test.py @@ -53,6 +53,8 @@ FEATURES['ALLOW_COURSE_STAFF_GRADE_DOWNLOADS'] = True # Toggles embargo on for testing FEATURES['EMBARGO'] = True +FEATURES['ENABLE_COMBINED_LOGIN_REGISTRATION'] = True + # Need wiki for courseware views to work. TODO (vshnayder): shouldn't need it. WIKI_ENABLED = True