Commit 81bc1578 authored by Michal Čihař's avatar Michal Čihař

Use django.shortcuts.redirect instead of own resolving

parent ba459936
......@@ -18,12 +18,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from django.shortcuts import render_to_response, get_object_or_404
from django.shortcuts import render_to_response, get_object_or_404, redirect
from django.template import RequestContext
from django.conf import settings
from django.contrib import messages
from django.utils.translation import ugettext as _
from django.http import HttpResponseRedirect
from django.contrib.auth.decorators import login_required
from django.core.mail.message import EmailMultiAlternatives
from django.utils import translation
......@@ -105,7 +104,7 @@ def user_profile(request):
set_lang(request.user, request=request, user=request.user)
# Redirect after saving (and possibly changing language)
response = HttpResponseRedirect(reverse('profile'))
response = redirect('profile')
# Set language cookie and activate new language (for message below)
lang_code = profile.language
......@@ -158,7 +157,7 @@ def contact(request):
request,
_('Message has been sent to administrator.')
)
return HttpResponseRedirect(reverse('home'))
return redirect('home')
else:
initial = {}
if request.user.is_authenticated():
......
......@@ -18,10 +18,10 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from django.shortcuts import render_to_response
from django.shortcuts import render_to_response, redirect
from django.utils.translation import ugettext as _
from django.template import RequestContext, loader
from django.http import HttpResponseNotFound, Http404, HttpResponseRedirect
from django.http import HttpResponseNotFound, Http404
from django.contrib.auth.decorators import login_required
from django.contrib import messages
from django.db.models import Sum, Count, Q
......@@ -402,7 +402,8 @@ def new_language(request, project, subproject):
_('Failed to process new translation request!')
)
return HttpResponseRedirect(reverse(
return redirect(
'subproject',
kwargs={'subproject': obj.slug, 'project': obj.project.slug}
))
subproject=obj.slug,
project=obj.project.slug
)
......@@ -18,7 +18,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from django.shortcuts import render_to_response, get_object_or_404
from django.shortcuts import render_to_response, get_object_or_404, redirect
from django.utils.translation import ugettext as _
from django.template import RequestContext
from django.http import HttpResponse, HttpResponseRedirect
......@@ -71,10 +71,11 @@ def edit_dictionary(request, project, lang):
form.cleaned_data['source'],
form.cleaned_data['target']
)
return HttpResponseRedirect(reverse(
return redirect(
'show_dictionary',
kwargs={'project': prj.slug, 'lang': lang.code}
))
project=prj.slug,
lang=lang.code
)
else:
form = WordForm(
initial={'source': word.source, 'target': word.target}
......@@ -113,9 +114,10 @@ def delete_dictionary(request, project, lang):
word.delete()
return HttpResponseRedirect(reverse(
return redirect(
'show_dictionary',
kwargs={'project': prj.slug, 'lang': lang.code})
project=prj.slug,
lang=lang.code
)
......@@ -155,10 +157,11 @@ def upload_dictionary(request, project, lang):
messages.error(request, _('Failed to process form!'))
else:
messages.error(request, _('Failed to process form!'))
return HttpResponseRedirect(reverse(
return redirect(
'show_dictionary',
kwargs={'project': prj.slug, 'lang': lang.code}
))
project=prj.slug,
lang=lang.code
)
def download_dictionary_ttkit(export_format, prj, lang, words):
......
......@@ -18,7 +18,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from django.shortcuts import render_to_response, get_object_or_404
from django.shortcuts import render_to_response, get_object_or_404, redirect
from django.utils.translation import ugettext as _
from django.template import RequestContext
from django.http import HttpResponseRedirect, HttpResponse
......@@ -108,7 +108,7 @@ def search(translation, request):
# Check if we know the search
if search_id not in request.session:
messages.error(request, _('Invalid search string!'))
return HttpResponseRedirect(translation.get_absolute_url())
return redirect(translation)
return request.session[search_id]
......@@ -168,7 +168,7 @@ def search(translation, request):
# Check empty search results
if len(unit_ids) == 0:
messages.warning(request, _('No string matched your search!'))
return HttpResponseRedirect(translation.get_absolute_url())
return redirect(translation)
# Checksum unit access
offset = 0
......@@ -178,7 +178,7 @@ def search(translation, request):
offset = unit_ids.index(unit.id)
except (Unit.DoesNotExist, IndexError):
messages.warning(request, _('No string matched your search!'))
return HttpResponseRedirect(translation.get_absolute_url())
return redirect(translation)
# Remove old search results
cleanup_session(request.session)
......@@ -506,7 +506,7 @@ def translate(request, project, subproject, lang):
# Delete search
del request.session['search_%s' % search_result['search_id']]
# Redirect to translation
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
# Some URLs we will most likely use
base_unit_url = '%s?sid=%s&offset=' % (
......@@ -550,7 +550,7 @@ def translate(request, project, subproject, lang):
except Unit.DoesNotExist:
# Can happen when using SID for other translation
messages.error(request, _('Invalid search string!'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
# Show secondary languages for logged in users
if request.user.is_authenticated():
......@@ -659,7 +659,7 @@ def auto_translation(request, project, subproject, lang):
else:
messages.error(request, _('Failed to process form!'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -687,4 +687,4 @@ def comment(request, pk):
else:
messages.error(request, _('Failed to add comment!'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
......@@ -19,7 +19,8 @@
#
from django.utils.translation import ugettext as _, ungettext
from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import redirect
from django.http import HttpResponse
from django.contrib import messages
from django.contrib.auth.decorators import login_required, permission_required
from django.http import Http404
......@@ -79,7 +80,7 @@ def upload_translation(request, project, subproject, lang):
# Check method and lock
if obj.is_locked(request) or request.method != 'POST':
messages.error(request, _('Access denied.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
# Get correct form handler based on permissions
if request.user.has_perm('trans.author_translation'):
......@@ -92,7 +93,7 @@ def upload_translation(request, project, subproject, lang):
# Check form validity
if not form.is_valid():
messages.error(request, _('Please fix errors in the form.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
# Create author name
if (request.user.has_perm('trans.author_translation')
......@@ -149,4 +150,4 @@ def upload_translation(request, project, subproject, lang):
_('File content merge failed: %s' % unicode(e))
)
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
......@@ -19,8 +19,8 @@
#
from django.utils.translation import ugettext as _
from django.http import HttpResponseRedirect
from django.contrib import messages
from django.shortcuts import redirect
from django.contrib.auth.decorators import login_required, permission_required
from trans.views.helper import get_project, get_subproject, get_translation
......@@ -33,7 +33,7 @@ def commit_project(request, project):
messages.info(request, _('All pending translations were committed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -44,7 +44,7 @@ def commit_subproject(request, project, subproject):
messages.info(request, _('All pending translations were committed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -55,7 +55,7 @@ def commit_translation(request, project, subproject, lang):
messages.info(request, _('All pending translations were committed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -66,7 +66,7 @@ def update_project(request, project):
if obj.do_update(request):
messages.info(request, _('All repositories were updated.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -77,7 +77,7 @@ def update_subproject(request, project, subproject):
if obj.do_update(request):
messages.info(request, _('All repositories were updated.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -88,7 +88,7 @@ def update_translation(request, project, subproject, lang):
if obj.do_update(request):
messages.info(request, _('All repositories were updated.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -99,7 +99,7 @@ def push_project(request, project):
if obj.do_push(request):
messages.info(request, _('All repositories were pushed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -110,7 +110,7 @@ def push_subproject(request, project, subproject):
if obj.do_push(request):
messages.info(request, _('All repositories were pushed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -121,7 +121,7 @@ def push_translation(request, project, subproject, lang):
if obj.do_push(request):
messages.info(request, _('All repositories were pushed.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -132,7 +132,7 @@ def reset_project(request, project):
if obj.do_reset(request):
messages.info(request, _('All repositories have been reset.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -143,7 +143,7 @@ def reset_subproject(request, project, subproject):
if obj.do_reset(request):
messages.info(request, _('All repositories have been reset.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -154,4 +154,4 @@ def reset_translation(request, project, subproject, lang):
if obj.do_reset(request):
messages.info(request, _('All repositories have been reset.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
......@@ -19,7 +19,8 @@
#
from django.utils.translation import ugettext as _
from django.http import HttpResponse, HttpResponseRedirect
from django.http import HttpResponse
from django.shortcuts import redirect
from django.contrib import messages
from django.contrib.auth.decorators import login_required, permission_required
......@@ -35,7 +36,7 @@ def lock_translation(request, project, subproject, lang):
obj.create_lock(request.user, True)
messages.info(request, _('Translation is now locked for you.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -60,7 +61,7 @@ def unlock_translation(request, project, subproject, lang):
_('Translation is now open for translation updates.')
)
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -78,7 +79,7 @@ def lock_subproject(request, project, subproject):
_('Subproject is now locked for translation updates!')
)
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -94,7 +95,7 @@ def unlock_subproject(request, project, subproject):
_('Subproject is now open for translation updates.')
)
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -113,7 +114,7 @@ def lock_project(request, project):
_('All subprojects are now locked for translation updates!')
)
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
@login_required
......@@ -127,4 +128,4 @@ def unlock_project(request, project):
messages.info(request, _('Project is now open for translation updates.'))
return HttpResponseRedirect(obj.get_absolute_url())
return redirect(obj)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment