Remove last use of settings.LOGIN_REDIRECT_URL

Replace with common.settings_home_view.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
Roberto Rosario
2019-05-07 13:31:35 -04:00
parent 6330e40036
commit 28114264c1
5 changed files with 49 additions and 39 deletions

View File

@@ -245,6 +245,8 @@
* Remove the related attribute of check_access.
* Remove filter_by_access. Replaced by restrict_queryset.
* Move the user set password views to the authentication app.
* All views redirect to common's home view instead of the
REDIRECT_URL setting.
3.1.11 (2019-04-XX)
===================

View File

@@ -287,6 +287,8 @@ Other changes
- InterfaceWarning
* Move the user set password views to the authentication app.
* All views redirect to common's home view instead of the
REDIRECT_URL setting.

View File

@@ -1,10 +1,10 @@
from __future__ import unicode_literals
from django.conf import settings
from django.contrib import messages
from django.core.exceptions import ImproperlyConfigured, PermissionDenied
from django.http import Http404, HttpResponseRedirect
from django.shortcuts import get_object_or_404, resolve_url
from django.shortcuts import get_object_or_404
from django.urls import reverse
from django.utils.translation import ungettext, ugettext_lazy as _
from django.views.generic.detail import SingleObjectMixin
@@ -14,6 +14,7 @@ from mayan.apps.permissions import Permission
from .exceptions import ActionError
from .forms import DynamicForm
from .literals import PK_LIST_SEPARATOR
from .settings import setting_home_view
class DeleteExtraDataMixin(object):
@@ -318,31 +319,10 @@ class ObjectPermissionCheckMixin(object):
class RedirectionMixin(object):
post_action_redirect = None
action_cancel_redirect = None
def dispatch(self, request, *args, **kwargs):
post_action_redirect = self.get_post_action_redirect()
action_cancel_redirect = self.get_action_cancel_redirect()
self.next_url = self.request.POST.get(
'next', self.request.GET.get(
'next', post_action_redirect if post_action_redirect else self.request.META.get(
'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL)
)
)
)
self.previous_url = self.request.POST.get(
'previous', self.request.GET.get(
'previous', action_cancel_redirect if action_cancel_redirect else self.request.META.get(
'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL)
)
)
)
return super(
RedirectionMixin, self
).dispatch(request, *args, **kwargs)
next_url = None
previous_url = None
post_action_redirect = None
def get_action_cancel_redirect(self):
return self.action_cancel_redirect
@@ -351,8 +331,8 @@ class RedirectionMixin(object):
context = super(RedirectionMixin, self).get_context_data(**kwargs)
context.update(
{
'next': self.next_url,
'previous': self.previous_url
'next': self.get_next_url(),
'previous': self.get_previous_url()
}
)
@@ -361,8 +341,36 @@ class RedirectionMixin(object):
def get_post_action_redirect(self):
return self.post_action_redirect
def get_next_url(self):
if self.next_url:
return self.next_url
else:
post_action_redirect = self.get_post_action_redirect()
return self.request.POST.get(
'next', self.request.GET.get(
'next', post_action_redirect if post_action_redirect else self.request.META.get(
'HTTP_REFERER', reverse(setting_home_view.value)
)
)
)
def get_previous_url(self):
if self.previous_url:
return self.previous_url
else:
action_cancel_redirect = self.get_action_cancel_redirect()
return self.request.POST.get(
'previous', self.request.GET.get(
'previous', action_cancel_redirect if action_cancel_redirect else self.request.META.get(
'HTTP_REFERER', reverse(setting_home_view.value)
)
)
)
def get_success_url(self):
return self.next_url or self.previous_url
return self.get_next_url() or self.get_previous_url()
class RestrictedQuerysetMixin(object):

View File

@@ -6,9 +6,9 @@ from django.conf import settings
from django.contrib import messages
from django.contrib.contenttypes.models import ContentType
from django.http import HttpResponseRedirect
from django.shortcuts import get_object_or_404, resolve_url
from django.shortcuts import get_object_or_404
from django.template import RequestContext
from django.urls import reverse_lazy
from django.urls import reverse, reverse_lazy
from django.utils import timezone, translation
from django.utils.http import urlencode
from django.utils.translation import ugettext_lazy as _
@@ -235,7 +235,7 @@ def multi_object_action_view(request):
next = request.POST.get(
'next', request.GET.get(
'next', request.META.get(
'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL)
'HTTP_REFERER', reverse(setting_home_view.value)
)
)
)
@@ -254,7 +254,7 @@ def multi_object_action_view(request):
)
return HttpResponseRedirect(
redirect_to=request.META.get(
'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL)
'HTTP_REFERER', reverse(setting_home_view.value)
)
)
@@ -265,7 +265,7 @@ def multi_object_action_view(request):
)
return HttpResponseRedirect(
redirect_to=request.META.get(
'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL)
'HTTP_REFERER', reverse(setting_home_view.value)
)
)

View File

@@ -2,9 +2,8 @@ from __future__ import absolute_import, unicode_literals
import logging
from django.conf import settings
from django.contrib import messages
from django.shortcuts import get_object_or_404, resolve_url
from django.shortcuts import get_object_or_404
from django.urls import reverse
from django.utils.http import urlencode
from django.utils.six.moves.urllib.parse import parse_qs, urlparse
@@ -13,6 +12,7 @@ from django.views.generic import RedirectView
from mayan.apps.acls.models import AccessControlList
from mayan.apps.common.generics import SimpleView, SingleObjectListView
from mayan.apps.common.settings import setting_home_view
from mayan.apps.common.utils import resolve
from mayan.apps.converter.literals import DEFAULT_ROTATION, DEFAULT_ZOOM_LEVEL
@@ -79,9 +79,7 @@ class DocumentPageNavigationBase(RedirectView):
def get_redirect_url(self, *args, **kwargs):
parse_result = urlparse(
self.request.META.get(
'HTTP_REFERER', resolve_url(
settings.LOGIN_REDIRECT_URL
)
'HTTP_REFERER', reverse(setting_home_view.value)
)
)