diff --git a/mayan/apps/documents/views.py b/mayan/apps/documents/views.py index 3825177f23..10a239bf8a 100644 --- a/mayan/apps/documents/views.py +++ b/mayan/apps/documents/views.py @@ -180,15 +180,15 @@ def document_delete(request, document_id=None, document_id_list=None): documents = [get_object_or_404(Document, pk=document_id) for document_id in document_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one document.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) try: Permission.objects.check_permissions(request.user, [PERMISSION_DOCUMENT_DELETE]) except PermissionDenied: documents = AccessEntry.objects.filter_objects_by_access(PERMISSION_DOCUMENT_DELETE, request.user, documents, exception_on_empty=True) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': for document in documents: @@ -290,7 +290,7 @@ def get_document_image(request, document_id, size=PREVIEW_SIZE): def document_download(request, document_id=None, document_id_list=None, document_version_pk=None): - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if document_id: document_versions = [get_object_or_404(Document, pk=document_id).latest_version] @@ -456,7 +456,7 @@ def document_update_page_count(request): office_converter = OfficeConverter() qs = DocumentVersion.objects.exclude(filename__iendswith='dxf').filter(mimetype__in=office_converter.mimetypes()) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': updated = 0 @@ -491,7 +491,7 @@ def document_clear_transformations(request, document_id=None, document_id_list=N post_redirect = None else: messages.error(request, _(u'Must provide at least one document.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', u'/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) try: Permission.objects.check_permissions(request.user, [PERMISSION_DOCUMENT_TRANSFORM]) @@ -655,11 +655,11 @@ def document_page_navigation_next(request, document_page_id): except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document_page.document) - view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).path) + view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).path) if document_page.page_number >= document_page.siblings.count(): messages.warning(request, _(u'There are no more pages in this document')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', u'/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) else: document_page = get_object_or_404(document_page.siblings, page_number=document_page.page_number + 1) return HttpResponseRedirect(reverse(view, args=[document_page.pk])) @@ -673,11 +673,11 @@ def document_page_navigation_previous(request, document_page_id): except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document_page.document) - view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).path) + view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).path) if document_page.page_number <= 1: messages.warning(request, _(u'You are already at the first page of this document')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', u'/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) else: document_page = get_object_or_404(document_page.siblings, page_number=document_page.page_number - 1) return HttpResponseRedirect(reverse(view, args=[document_page.pk])) @@ -692,7 +692,7 @@ def document_page_navigation_first(request, document_page_id): except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document_page.document) - view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).path) + view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).path) return HttpResponseRedirect(reverse(view, args=[document_page.pk])) @@ -706,7 +706,7 @@ def document_page_navigation_last(request, document_page_id): except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document_page.document) - view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).path) + view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).path) return HttpResponseRedirect(reverse(view, args=[document_page.pk])) @@ -730,10 +730,10 @@ def transform_page(request, document_page_id, zoom_function=None, rotation_funct except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document_page.document) - view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).path) + view = resolve_to_name(urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).path) # Get the query string from the referer url - query = urlparse.urlparse(request.META.get('HTTP_REFERER', u'/')).query + query = urlparse.urlparse(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))).query # Parse the query string and get the zoom value # parse_qs return a dictionary whose values are lists zoom = int(urlparse.parse_qs(query).get('zoom', ['100'])[0]) @@ -917,8 +917,8 @@ def document_type_delete(request, document_type_id): post_action_redirect = reverse('documents:document_type_list') - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': try: @@ -1036,8 +1036,8 @@ def document_type_filename_delete(request, document_type_filename_id): post_action_redirect = reverse('documents:document_type_filename_list', args=[document_type_filename.document_type_id]) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': try: @@ -1107,7 +1107,7 @@ def document_type_filename_create(request, document_type_id): def document_clear_image_cache(request): Permission.objects.check_permissions(request.user, [PERMISSION_DOCUMENT_TOOLS]) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': try: @@ -1181,7 +1181,7 @@ def document_version_revert(request, document_version_pk): except PermissionDenied: AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VERSION_REVERT, request.user, document_version.document) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': try: diff --git a/mayan/apps/permissions/views.py b/mayan/apps/permissions/views.py index d3e626e33e..d2487598ba 100644 --- a/mayan/apps/permissions/views.py +++ b/mayan/apps/permissions/views.py @@ -8,6 +8,7 @@ from django.contrib import messages from django.contrib.auth.models import Group, User from django.contrib.contenttypes.models import ContentType from django.core.urlresolvers import reverse_lazy +from django.conf import settings from django.http import Http404, HttpResponseRedirect from django.shortcuts import get_object_or_404, render_to_response from django.template import RequestContext @@ -111,8 +112,8 @@ def permission_grant(request): items_property_list = loads(request.GET.get('items_property_list', [])) post_action_redirect = None - next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) items = [] for item_properties in items_property_list: diff --git a/mayan/apps/sources/views.py b/mayan/apps/sources/views.py index 6fb03d18a0..88e6de3a8a 100644 --- a/mayan/apps/sources/views.py +++ b/mayan/apps/sources/views.py @@ -4,6 +4,7 @@ from django.conf import settings from django.contrib import messages from django.core.exceptions import PermissionDenied from django.core.urlresolvers import reverse +from django.conf import settings from django.http import HttpResponseRedirect from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext @@ -376,8 +377,8 @@ def staging_file_delete(request, staging_folder_pk, encoded_filename): staging_folder = get_object_or_404(StagingFolder, pk=staging_folder_pk) staging_file = staging_folder.get_file(encoded_filename=encoded_filename) - next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) + next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': try: @@ -437,7 +438,7 @@ def setup_source_edit(request, source_type, source_id): form_class = WatchFolderSetupForm source = get_object_or_404(cls, pk=source_id) - next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) + next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': form = form_class(instance=source, data=request.POST) diff --git a/mayan/apps/tags/views.py b/mayan/apps/tags/views.py index fadb59216e..f76f738788 100644 --- a/mayan/apps/tags/views.py +++ b/mayan/apps/tags/views.py @@ -5,6 +5,7 @@ import logging from django.contrib import messages from django.core.exceptions import PermissionDenied from django.core.urlresolvers import reverse +from django.conf import settings from django.http import HttpResponseRedirect from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext @@ -67,7 +68,7 @@ def tag_attach(request, document_id=None, document_id_list=None): documents = [get_object_or_404(Document, pk=document_id) for document_id in document_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one document.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) try: Permission.objects.check_permissions(request.user, [PERMISSION_TAG_ATTACH]) @@ -75,8 +76,8 @@ def tag_attach(request, document_id=None, document_id_list=None): documents = AccessEntry.objects.filter_objects_by_access(PERMISSION_TAG_ATTACH, request.user, documents) post_action_redirect = None - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': form = TagListForm(request.POST, user=request.user) @@ -152,15 +153,15 @@ def tag_delete(request, tag_id=None, tag_id_list=None): tags = [get_object_or_404(Tag, pk=tag_id) for tag_id in tag_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one tag.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) try: Permission.objects.check_permissions(request.user, [PERMISSION_TAG_DELETE]) except PermissionDenied: tags = AccessEntry.objects.filter_objects_by_access(PERMISSION_TAG_DELETE, request.user, tags) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': for tag in tags: @@ -272,7 +273,7 @@ def tag_remove(request, document_id=None, document_id_list=None, tag_id=None, ta documents = [get_object_or_404(Document, pk=document_id) for document_id in document_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one tagged document.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) try: Permission.objects.check_permissions(request.user, [PERMISSION_TAG_REMOVE]) @@ -281,8 +282,8 @@ def tag_remove(request, document_id=None, document_id_list=None, tag_id=None, ta post_action_redirect = None - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) context = { 'previous': previous, diff --git a/mayan/apps/user_management/views.py b/mayan/apps/user_management/views.py index 6709f2794c..e10ce189fe 100644 --- a/mayan/apps/user_management/views.py +++ b/mayan/apps/user_management/views.py @@ -4,6 +4,7 @@ from django.contrib import messages from django.contrib.auth import get_user_model from django.contrib.auth.models import User, Group from django.core.urlresolvers import reverse +from django.conf import settings from django.http import HttpResponseRedirect from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext @@ -58,7 +59,7 @@ def user_edit(request, user_id): if user.is_superuser or user.is_staff: messages.error(request, _(u'Super user and staff user editing is not allowed, use the admin interface for these cases.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) if request.method == 'POST': form = UserForm(instance=user, data=request.POST) @@ -108,10 +109,10 @@ def user_delete(request, user_id=None, user_id_list=None): users = [get_object_or_404(User, pk=user_id) for user_id in user_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one user.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': for user in users: @@ -162,9 +163,9 @@ def user_set_password(request, user_id=None, user_id_list=None): users = [get_object_or_404(User, pk=user_id) for user_id in user_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one user.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': form = PasswordForm(request.POST) @@ -315,10 +316,10 @@ def group_delete(request, group_id=None, group_id_list=None): groups = [get_object_or_404(Group, pk=group_id) for group_id in group_id_list.split(',')] else: messages.error(request, _(u'Must provide at least one group.')) - return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) + return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))) - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) - next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) + next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) if request.method == 'POST': for group in groups: