Skip to content

Commit

Permalink
Fixed "continue translate" button error
Browse files Browse the repository at this point in the history
  • Loading branch information
ejimenez committed Mar 19, 2014
1 parent 0b3e8c2 commit 7fb01c7
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions rosetta/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ def fix_nls(in_, out_):

storage = get_storage(request)
version = rosetta.get_version(True)
query_arg = ''
if storage.has('rosetta_i18n_fn'):
rosetta_i18n_fn = storage.get('rosetta_i18n_fn')
rosetta_i18n_app = get_app_name(rosetta_i18n_fn)
Expand Down Expand Up @@ -177,7 +178,6 @@ def fix_nls(in_, out_):
except:
storage.set('rosetta_i18n_write', False)
storage.set('rosetta_i18n_pofile', rosetta_i18n_pofile)

# Retain query arguments
query_arg = '?_next=1'
if 'query' in request.GET or 'query' in request.POST:
Expand All @@ -187,9 +187,12 @@ def fix_nls(in_, out_):
return HttpResponseRedirect(reverse('rosetta-home') + iri_to_uri(query_arg))
rosetta_i18n_lang_name = _(storage.get('rosetta_i18n_lang_name'))
rosetta_i18n_lang_code = storage.get('rosetta_i18n_lang_code')

if 'query' in request.REQUEST and request.REQUEST.get('query', '').strip():
query = request.REQUEST.get('query').strip()
if query_arg:
query_arg += '&query=%s' % request.REQUEST.get('query')
else:
query_arg = '?query=%s' % request.REQUEST.get('query')
rx = re.compile(re.escape(query), re.IGNORECASE)
paginator = Paginator([e for e in rosetta_i18n_pofile if not e.obsolete and rx.search(smart_unicode(e.msgstr) + smart_unicode(e.msgid) + u''.join([o[0] for o in e.occurrences]))], rosetta_settings.MESSAGES_PER_PAGE)
else:
Expand All @@ -201,7 +204,6 @@ def fix_nls(in_, out_):
paginator = Paginator([e for e in rosetta_i18n_pofile.fuzzy_entries() if not e.obsolete], rosetta_settings.MESSAGES_PER_PAGE)
else:
paginator = Paginator([e for e in rosetta_i18n_pofile if not e.obsolete], rosetta_settings.MESSAGES_PER_PAGE)

if 'page' in request.GET and int(request.GET.get('page')) <= paginator.num_pages and int(request.GET.get('page')) > 0:
page = int(request.GET.get('page'))
else:
Expand Down Expand Up @@ -478,6 +480,7 @@ def lang_sel(request, langid, idx):
"""
Selects a file to be translated
"""
query_arg = ''
storage = get_storage(request)
if langid not in [l[0] for l in settings.LANGUAGES]:
raise Http404
Expand Down Expand Up @@ -507,7 +510,13 @@ def lang_sel(request, langid, idx):
except OSError:
storage.set('rosetta_i18n_write', False)

return HttpResponseRedirect(reverse('rosetta-home'))
if 'query' in request.REQUEST and request.REQUEST.get('query', '').strip():
if query_arg:
query_arg += '&query=%s' % request.REQUEST.get('query')
else:
query_arg = '?query=%s' % request.REQUEST.get('query')

return HttpResponseRedirect(reverse('rosetta-home') + query_arg)
lang_sel = never_cache(lang_sel)
lang_sel = user_passes_test(lambda user: can_translate(user), settings.LOGIN_URL)(lang_sel)

Expand Down

0 comments on commit 7fb01c7

Please sign in to comment.