# pylint: disable=missing-docstring 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 from user_api.models import UserPreference user_api_router = routers.DefaultRouter() user_api_router.register(r'users', user_api_views.UserViewSet) user_api_router.register(r'user_prefs', user_api_views.UserPreferenceViewSet) urlpatterns = patterns( '', url(r'^v1/', include(user_api_router.urls)), url( r'^v1/preferences/(?P{})/users/$'.format(UserPreference.KEY_REGEX), user_api_views.PreferenceUsersListView.as_view() ), url( r'^v1/forum_roles/(?P[a-zA-Z]+)/users/$', user_api_views.ForumRoleUsersListView.as_view() ), url( r'^v1/preferences/email_opt_in/$', user_api_views.UpdateEmailOptInPreference.as_view(), name="preferences_email_opt_in" ), ) 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"), )