mirror of
https://github.com/inventree/InvenTree.git
synced 2025-04-28 11:36:44 +00:00
backport email fix (#5409)
- Backport of https://github.com/inventree/InvenTree/pull/5396
This commit is contained in:
parent
f526dcdeec
commit
57eada1da1
@ -292,6 +292,15 @@ class CustomAccountAdapter(CustomUrlMixin, RegistratonMixin, OTPAdapter, Default
|
|||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def get_email_confirmation_url(self, request, emailconfirmation):
|
||||||
|
"""Construct the email confirmation url"""
|
||||||
|
|
||||||
|
from InvenTree.helpers_model import construct_absolute_url
|
||||||
|
|
||||||
|
url = super().get_email_confirmation_url(request, emailconfirmation)
|
||||||
|
url = construct_absolute_url(url)
|
||||||
|
return url
|
||||||
|
|
||||||
|
|
||||||
class CustomSocialAccountAdapter(CustomUrlMixin, RegistratonMixin, DefaultSocialAccountAdapter):
|
class CustomSocialAccountAdapter(CustomUrlMixin, RegistratonMixin, DefaultSocialAccountAdapter):
|
||||||
"""Override of adapter to use dynamic settings."""
|
"""Override of adapter to use dynamic settings."""
|
||||||
|
@ -50,9 +50,7 @@ def construct_absolute_url(*arg, **kwargs):
|
|||||||
# Otherwise, try to use the InvenTree setting
|
# Otherwise, try to use the InvenTree setting
|
||||||
try:
|
try:
|
||||||
site_url = common.models.InvenTreeSetting.get_setting('INVENTREE_BASE_URL', create=False, cache=False)
|
site_url = common.models.InvenTreeSetting.get_setting('INVENTREE_BASE_URL', create=False, cache=False)
|
||||||
except ProgrammingError:
|
except (ProgrammingError, OperationalError):
|
||||||
pass
|
|
||||||
except OperationalError:
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if not site_url:
|
if not site_url:
|
||||||
|
@ -601,6 +601,8 @@ DATABASES = {
|
|||||||
REMOTE_LOGIN = get_boolean_setting('INVENTREE_REMOTE_LOGIN', 'remote_login_enabled', False)
|
REMOTE_LOGIN = get_boolean_setting('INVENTREE_REMOTE_LOGIN', 'remote_login_enabled', False)
|
||||||
REMOTE_LOGIN_HEADER = get_setting('INVENTREE_REMOTE_LOGIN_HEADER', 'remote_login_header', 'REMOTE_USER')
|
REMOTE_LOGIN_HEADER = get_setting('INVENTREE_REMOTE_LOGIN_HEADER', 'remote_login_header', 'REMOTE_USER')
|
||||||
|
|
||||||
|
LOGIN_REDIRECT_URL = "/index/"
|
||||||
|
|
||||||
# sentry.io integration for error reporting
|
# sentry.io integration for error reporting
|
||||||
SENTRY_ENABLED = get_boolean_setting('INVENTREE_SENTRY_ENABLED', 'sentry_enabled', False)
|
SENTRY_ENABLED = get_boolean_setting('INVENTREE_SENTRY_ENABLED', 'sentry_enabled', False)
|
||||||
|
|
||||||
|
@ -9,7 +9,8 @@ from django.contrib import admin
|
|||||||
from django.urls import include, path, re_path
|
from django.urls import include, path, re_path
|
||||||
from django.views.generic.base import RedirectView
|
from django.views.generic.base import RedirectView
|
||||||
|
|
||||||
from dj_rest_auth.registration.views import (SocialAccountDisconnectView,
|
from dj_rest_auth.registration.views import (ConfirmEmailView,
|
||||||
|
SocialAccountDisconnectView,
|
||||||
SocialAccountListView)
|
SocialAccountListView)
|
||||||
from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView
|
from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView
|
||||||
|
|
||||||
@ -74,13 +75,16 @@ apipatterns = [
|
|||||||
# InvenTree information endpoint
|
# InvenTree information endpoint
|
||||||
path('', InfoView.as_view(), name='api-inventree-info'),
|
path('', InfoView.as_view(), name='api-inventree-info'),
|
||||||
|
|
||||||
# Third party API endpoints
|
# Auth API endpoints
|
||||||
path('auth/', include('dj_rest_auth.urls')),
|
path('auth/', include([
|
||||||
path('auth/registration/', include('dj_rest_auth.registration.urls')),
|
re_path(r'^registration/account-confirm-email/(?P<key>[-:\w]+)/$', ConfirmEmailView.as_view(), name='account_confirm_email'),
|
||||||
path('auth/providers/', SocialProvierListView.as_view(), name='social_providers'),
|
path('registration/', include('dj_rest_auth.registration.urls')),
|
||||||
path('auth/social/', include(social_auth_urlpatterns)),
|
path('providers/', SocialProvierListView.as_view(), name='social_providers'),
|
||||||
path('auth/social/', SocialAccountListView.as_view(), name='social_account_list'),
|
path('social/', include(social_auth_urlpatterns)),
|
||||||
path('auth/social/<int:pk>/disconnect/', SocialAccountDisconnectView.as_view(), name='social_account_disconnect'),
|
path('social/', SocialAccountListView.as_view(), name='social_account_list'),
|
||||||
|
path('social/<int:pk>/disconnect/', SocialAccountDisconnectView.as_view(), name='social_account_disconnect'),
|
||||||
|
path('', include('dj_rest_auth.urls')),
|
||||||
|
])),
|
||||||
|
|
||||||
# Unknown endpoint
|
# Unknown endpoint
|
||||||
re_path(r'^.*$', NotFoundView.as_view(), name='api-404'),
|
re_path(r'^.*$', NotFoundView.as_view(), name='api-404'),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user