Skip to content

Commit

Permalink
Remove uses of django.utils.translation.ungettext
Browse files Browse the repository at this point in the history
This is just an alias of django.utils.translation.ngettext on Python 3,
and it's deprecated starting Django 3.0.
  • Loading branch information
quantum5 committed Oct 16, 2021
1 parent 394e97e commit ce30a09
Show file tree
Hide file tree
Showing 10 changed files with 58 additions and 58 deletions.
14 changes: 7 additions & 7 deletions judge/admin/comments.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django.forms import ModelForm
from django.urls import reverse_lazy
from django.utils.html import format_html
from django.utils.translation import gettext_lazy as _, ungettext
from django.utils.translation import gettext_lazy as _, ngettext
from reversion.admin import VersionAdmin

from judge.models import Comment
Expand Down Expand Up @@ -37,16 +37,16 @@ def get_queryset(self, request):

def hide_comment(self, request, queryset):
count = queryset.update(hidden=True)
self.message_user(request, ungettext('%d comment successfully hidden.',
'%d comments successfully hidden.',
count) % count)
self.message_user(request, ngettext('%d comment successfully hidden.',
'%d comments successfully hidden.',
count) % count)
hide_comment.short_description = _('Hide comments')

def unhide_comment(self, request, queryset):
count = queryset.update(hidden=False)
self.message_user(request, ungettext('%d comment successfully unhidden.',
'%d comments successfully unhidden.',
count) % count)
self.message_user(request, ngettext('%d comment successfully unhidden.',
'%d comments successfully unhidden.',
count) % count)
unhide_comment.short_description = _('Unhide comments')

def linked_page(self, obj):
Expand Down
38 changes: 19 additions & 19 deletions judge/admin/contest.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from django.urls import reverse, reverse_lazy
from django.utils import timezone
from django.utils.html import format_html
from django.utils.translation import gettext_lazy as _, ungettext
from django.utils.translation import gettext_lazy as _, ngettext
from reversion.admin import VersionAdmin

from django_ace import AceWidget
Expand Down Expand Up @@ -212,36 +212,36 @@ def make_visible(self, request, queryset):
if not request.user.has_perm('judge.change_contest_visibility'):
queryset = queryset.filter(Q(is_private=True) | Q(is_organization_private=True))
count = queryset.update(is_visible=True)
self.message_user(request, ungettext('%d contest successfully marked as visible.',
'%d contests successfully marked as visible.',
count) % count)
self.message_user(request, ngettext('%d contest successfully marked as visible.',
'%d contests successfully marked as visible.',
count) % count)
make_visible.short_description = _('Mark contests as visible')

def make_hidden(self, request, queryset):
if not request.user.has_perm('judge.change_contest_visibility'):
queryset = queryset.filter(Q(is_private=True) | Q(is_organization_private=True))
count = queryset.update(is_visible=True)
self.message_user(request, ungettext('%d contest successfully marked as hidden.',
'%d contests successfully marked as hidden.',
count) % count)
self.message_user(request, ngettext('%d contest successfully marked as hidden.',
'%d contests successfully marked as hidden.',
count) % count)
make_hidden.short_description = _('Mark contests as hidden')

def set_locked(self, request, queryset):
for row in queryset:
self.set_locked_after(row, timezone.now())
count = queryset.count()
self.message_user(request, ungettext('%d contest successfully locked.',
'%d contests successfully locked.',
count) % count)
self.message_user(request, ngettext('%d contest successfully locked.',
'%d contests successfully locked.',
count) % count)
set_locked.short_description = _('Lock contest submissions')

def set_unlocked(self, request, queryset):
for row in queryset:
self.set_locked_after(row, None)
count = queryset.count()
self.message_user(request, ungettext('%d contest successfully unlocked.',
'%d contests successfully unlocked.',
count) % count)
self.message_user(request, ngettext('%d contest successfully unlocked.',
'%d contests successfully unlocked.',
count) % count)
set_unlocked.short_description = _('Unlock contest submissions')

def set_locked_after(self, contest, locked_after):
Expand All @@ -263,9 +263,9 @@ def rejudge_view(self, request, contest_id, problem_id):
for model in queryset:
model.submission.judge(rejudge=True)

self.message_user(request, ungettext('%d submission was successfully scheduled for rejudging.',
'%d submissions were successfully scheduled for rejudging.',
len(queryset)) % len(queryset))
self.message_user(request, ngettext('%d submission was successfully scheduled for rejudging.',
'%d submissions were successfully scheduled for rejudging.',
len(queryset)) % len(queryset))
return HttpResponseRedirect(reverse('admin:judge_contest_change', args=(contest_id,)))

def rate_all_view(self, request):
Expand Down Expand Up @@ -338,9 +338,9 @@ def recalculate_results(self, request, queryset):
for participation in queryset:
participation.recompute_results()
count += 1
self.message_user(request, ungettext('%d participation recalculated.',
'%d participations recalculated.',
count) % count)
self.message_user(request, ngettext('%d participation recalculated.',
'%d participations recalculated.',
count) % count)
recalculate_results.short_description = _('Recalculate results')

def username(self, obj):
Expand Down
20 changes: 10 additions & 10 deletions judge/admin/problem.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from django.urls import reverse_lazy
from django.utils import timezone
from django.utils.html import format_html
from django.utils.translation import gettext, gettext_lazy as _, ungettext
from django.utils.translation import gettext, gettext_lazy as _, ngettext
from reversion.admin import VersionAdmin

from judge.models import LanguageLimit, Problem, ProblemClarification, ProblemTranslation, Profile, Solution
Expand Down Expand Up @@ -189,29 +189,29 @@ def _rescore(self, request, problem_id):

def update_publish_date(self, request, queryset):
count = queryset.update(date=timezone.now())
self.message_user(request, ungettext("%d problem's publish date successfully updated.",
"%d problems' publish date successfully updated.",
count) % count)
self.message_user(request, ngettext("%d problem's publish date successfully updated.",
"%d problems' publish date successfully updated.",
count) % count)

update_publish_date.short_description = _('Set publish date to now')

def make_public(self, request, queryset):
count = queryset.update(is_public=True)
for problem_id in queryset.values_list('id', flat=True):
self._rescore(request, problem_id)
self.message_user(request, ungettext('%d problem successfully marked as public.',
'%d problems successfully marked as public.',
count) % count)
self.message_user(request, ngettext('%d problem successfully marked as public.',
'%d problems successfully marked as public.',
count) % count)

make_public.short_description = _('Mark problems as public')

def make_private(self, request, queryset):
count = queryset.update(is_public=False)
for problem_id in queryset.values_list('id', flat=True):
self._rescore(request, problem_id)
self.message_user(request, ungettext('%d problem successfully marked as private.',
'%d problems successfully marked as private.',
count) % count)
self.message_user(request, ngettext('%d problem successfully marked as private.',
'%d problems successfully marked as private.',
count) % count)

make_private.short_description = _('Mark problems as private')

Expand Down
8 changes: 4 additions & 4 deletions judge/admin/profile.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from django.forms import ModelForm
from django.urls import reverse_lazy
from django.utils.html import format_html
from django.utils.translation import gettext, gettext_lazy as _, ungettext
from django.utils.translation import gettext, gettext_lazy as _, ngettext
from reversion.admin import VersionAdmin

from django_ace import AceWidget
Expand Down Expand Up @@ -117,9 +117,9 @@ def recalculate_points(self, request, queryset):
for profile in queryset:
profile.calculate_points()
count += 1
self.message_user(request, ungettext('%d user have scores recalculated.',
'%d users have scores recalculated.',
count) % count)
self.message_user(request, ngettext('%d user have scores recalculated.',
'%d users have scores recalculated.',
count) % count)
recalculate_points.short_description = _('Recalculate scores')

def get_form(self, request, obj=None, **kwargs):
Expand Down
14 changes: 7 additions & 7 deletions judge/admin/submission.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from django.http import HttpResponseRedirect
from django.shortcuts import get_object_or_404
from django.utils.html import format_html
from django.utils.translation import gettext, gettext_lazy as _, pgettext, ungettext
from django.utils.translation import gettext, gettext_lazy as _, ngettext, pgettext

from django_ace import AceWidget
from judge.models import ContestParticipation, ContestProblem, ContestSubmission, Profile, Submission, \
Expand Down Expand Up @@ -167,9 +167,9 @@ def judge(self, request, queryset):
judged = len(queryset)
for model in queryset:
model.judge(rejudge=True, batch_rejudge=True)
self.message_user(request, ungettext('%d submission was successfully scheduled for rejudging.',
'%d submissions were successfully scheduled for rejudging.',
judged) % judged)
self.message_user(request, ngettext('%d submission was successfully scheduled for rejudging.',
'%d submissions were successfully scheduled for rejudging.',
judged) % judged)
judge.short_description = _('Rejudge the selected submissions')

def recalculate_score(self, request, queryset):
Expand All @@ -196,9 +196,9 @@ def recalculate_score(self, request, queryset):
id__in=queryset.values_list('contest__participation_id')).prefetch_related('contest'):
participation.recompute_results()

self.message_user(request, ungettext('%d submission were successfully rescored.',
'%d submissions were successfully rescored.',
len(submissions)) % len(submissions))
self.message_user(request, ngettext('%d submission were successfully rescored.',
'%d submissions were successfully rescored.',
len(submissions)) % len(submissions))
recalculate_score.short_description = _('Rescore the selected submissions')

def problem_code(self, obj):
Expand Down
4 changes: 2 additions & 2 deletions judge/contest_format/atcoder.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from django.urls import reverse
from django.utils.html import format_html
from django.utils.safestring import mark_safe
from django.utils.translation import gettext as _, gettext_lazy, ungettext
from django.utils.translation import gettext as _, gettext_lazy, ngettext

from judge.contest_format.default import DefaultContestFormat
from judge.contest_format.registry import register_contest_format
Expand Down Expand Up @@ -118,7 +118,7 @@ def get_short_form_display(self):

penalty = self.config['penalty']
if penalty:
yield ungettext(
yield ngettext(
'Each submission before the first maximum score submission will incur a **penalty of %d minute**.',
'Each submission before the first maximum score submission will incur a **penalty of %d minutes**.',
penalty,
Expand Down
4 changes: 2 additions & 2 deletions judge/contest_format/ecoo.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from django.urls import reverse
from django.utils.html import format_html
from django.utils.safestring import mark_safe
from django.utils.translation import gettext as _, gettext_lazy, ungettext
from django.utils.translation import gettext as _, gettext_lazy, ngettext

from judge.contest_format.default import DefaultContestFormat
from judge.contest_format.registry import register_contest_format
Expand Down Expand Up @@ -137,7 +137,7 @@ def get_short_form_display(self):

time_bonus = self.config['time_bonus']
if time_bonus:
yield ungettext(
yield ngettext(
'For every **%d minute** you submit before the end of your window, there will be a **1** point bonus.',
'For every **%d minutes** you submit before the end of your window, there will be a **1** point bonus.',
time_bonus,
Expand Down
4 changes: 2 additions & 2 deletions judge/utils/pwned.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
from django.conf import settings
from django.contrib.auth.password_validation import CommonPasswordValidator
from django.core.exceptions import ValidationError
from django.utils.translation import gettext as _, ungettext
from django.utils.translation import gettext as _, ngettext

from judge.utils.unicode import utf8bytes

Expand Down Expand Up @@ -123,7 +123,7 @@ def validate(self, password, user=None):
CommonPasswordValidator().validate(password, user)
elif amount:
raise ValidationError(
ungettext(
ngettext(
self.error_message['singular'],
self.error_message['plural'],
amount,
Expand Down
4 changes: 2 additions & 2 deletions judge/utils/timedelta.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import datetime

from django.utils.translation import npgettext, pgettext, ungettext
from django.utils.translation import ngettext, npgettext, pgettext


def nice_repr(timedelta, display='long', sep=', '):
Expand Down Expand Up @@ -58,7 +58,7 @@ def nice_repr(timedelta, display='long', sep=', '):
if hours or minutes:
return npgettext('time format no seconds with day', '%d day %h:%m', '%d days %h:%m', days) \
.replace('%d', str(days)).replace('%h', '%02d' % hours).replace('%m', '%02d' % minutes)
return ungettext('%d day', '%d days', days) % days
return ngettext('%d day', '%d days', days) % days
else:
return pgettext('hours and minutes', '%h:%m').replace('%h', '%02d' % hours).replace('%m', '%02d' % minutes)
elif display == 'concise':
Expand Down
6 changes: 3 additions & 3 deletions judge/views/organization.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from django.forms import Form, modelformset_factory
from django.http import Http404, HttpResponsePermanentRedirect, HttpResponseRedirect
from django.urls import reverse
from django.utils.translation import gettext as _, gettext_lazy, ungettext
from django.utils.translation import gettext as _, gettext_lazy, ngettext
from django.views.generic import DetailView, FormView, ListView, UpdateView, View
from django.views.generic.detail import SingleObjectMixin, SingleObjectTemplateResponseMixin
from reversion import revisions
Expand Down Expand Up @@ -250,8 +250,8 @@ def post(self, request, *args, **kwargs):
elif obj.state == 'R':
rejected += 1
messages.success(request,
ungettext('Approved %d user.', 'Approved %d users.', approved) % approved + '\n' +
ungettext('Rejected %d user.', 'Rejected %d users.', rejected) % rejected)
ngettext('Approved %d user.', 'Approved %d users.', approved) % approved + '\n' +
ngettext('Rejected %d user.', 'Rejected %d users.', rejected) % rejected)
cache.delete(make_template_fragment_key('org_member_count', (organization.id,)))
return HttpResponseRedirect(request.get_full_path())
return self.render_to_response(self.get_context_data(object=organization))
Expand Down

0 comments on commit ce30a09

Please # to comment.