diff --git a/InvenTree/InvenTree/urls.py b/InvenTree/InvenTree/urls.py index b700743c98..d0c0bc076a 100644 --- a/InvenTree/InvenTree/urls.py +++ b/InvenTree/InvenTree/urls.py @@ -37,7 +37,7 @@ from rest_framework.documentation import include_docs_urls from .views import auth_request from .views import IndexView, SearchView, DatabaseStatsView -from .views import SettingsView, EditUserView, SetPasswordView +from .views import SettingsView, EditUserView, SetPasswordView, CustomEmailView from .views import CurrencyRefreshView from .views import AppearanceSelectView, SettingCategorySelectView from .views import DynamicJsView @@ -160,7 +160,11 @@ urlpatterns = [ url(r'^api-doc/', include_docs_urls(title='InvenTree API')), url(r'^markdownx/', include('markdownx.urls')), - url(r'^accounts/', include('allauth.urls')), # SSO + + # Single Sign On / allauth + # overrides of urlpatterns + url(r'^accounts/email/', CustomEmailView.as_view(), name='account_email'), + url(r'^accounts/', include('allauth.urls')), # included urlpatterns ] # Server running in "DEBUG" mode? diff --git a/InvenTree/InvenTree/views.py b/InvenTree/InvenTree/views.py index 0528c6c694..a8b9b792fc 100644 --- a/InvenTree/InvenTree/views.py +++ b/InvenTree/InvenTree/views.py @@ -812,6 +812,16 @@ class SettingsView(TemplateView): return ctx +class CustomEmailView(LoginRequiredMixin, EmailView): + """ + Override of allauths EmailView to always show the settings but leave the functions allow + """ + success_url = reverse_lazy("settings") + + def get(self, request, *args, **kwargs): + # always redirect to settings + return HttpResponseRedirect(self.success_url) + class CurrencyRefreshView(RedirectView): """