Commit e4258839 by Pavel Yushchenko

added translation to error json strings

parent ca2dbfcc
...@@ -30,6 +30,7 @@ from django_future.csrf import ensure_csrf_cookie ...@@ -30,6 +30,7 @@ from django_future.csrf import ensure_csrf_cookie
from django.utils.http import cookie_date from django.utils.http import cookie_date
from django.utils.http import base36_to_int from django.utils.http import base36_to_int
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from django.utils.translation import ugettext_lazy
from django.views.decorators.http import require_POST from django.views.decorators.http import require_POST
from ratelimitbackend.exceptions import RateLimitException from ratelimitbackend.exceptions import RateLimitException
...@@ -366,7 +367,7 @@ def change_enrollment(request): ...@@ -366,7 +367,7 @@ def change_enrollment(request):
action = request.POST.get("enrollment_action") action = request.POST.get("enrollment_action")
course_id = request.POST.get("course_id") course_id = request.POST.get("course_id")
if course_id is None: if course_id is None:
return HttpResponseBadRequest(_("Course id not specified")) return HttpResponseBadRequest(ungettext_lazy("Course id not specified"))
if action == "enroll": if action == "enroll":
# Make sure the course exists # Make sure the course exists
...@@ -376,10 +377,10 @@ def change_enrollment(request): ...@@ -376,10 +377,10 @@ def change_enrollment(request):
except ItemNotFoundError: except ItemNotFoundError:
log.warning("User {0} tried to enroll in non-existent course {1}" log.warning("User {0} tried to enroll in non-existent course {1}"
.format(user.username, course_id)) .format(user.username, course_id))
return HttpResponseBadRequest(_("Course id is invalid")) return HttpResponseBadRequest(ungettext_lazy("Course id is invalid"))
if not has_access(user, course, 'enroll'): if not has_access(user, course, 'enroll'):
return HttpResponseBadRequest(_("Enrollment is closed")) return HttpResponseBadRequest(ungettext_lazy("Enrollment is closed"))
org, course_num, run = course_id.split("/") org, course_num, run = course_id.split("/")
statsd.increment("common.student.enrollment", statsd.increment("common.student.enrollment",
...@@ -403,9 +404,9 @@ def change_enrollment(request): ...@@ -403,9 +404,9 @@ def change_enrollment(request):
return HttpResponse() return HttpResponse()
except CourseEnrollment.DoesNotExist: except CourseEnrollment.DoesNotExist:
return HttpResponseBadRequest(_("You are not enrolled in this course")) return HttpResponseBadRequest(ungettext_lazy("You are not enrolled in this course"))
else: else:
return HttpResponseBadRequest(_("Enrollment action is invalid")) return HttpResponseBadRequest(ungettext_lazy("Enrollment action is invalid"))
@ensure_csrf_cookie @ensure_csrf_cookie
def accounts_login(request, error=""): def accounts_login(request, error=""):
...@@ -417,7 +418,7 @@ def login_user(request, error=""): ...@@ -417,7 +418,7 @@ def login_user(request, error=""):
"""AJAX request to log in the user.""" """AJAX request to log in the user."""
if 'email' not in request.POST or 'password' not in request.POST: if 'email' not in request.POST or 'password' not in request.POST:
return HttpResponse(json.dumps({'success': False, return HttpResponse(json.dumps({'success': False,
'value': _('There was an error receiving your login information. Please email us.')})) # TODO: User error message 'value': ungettext_lazy('There was an error receiving your login information. Please email us.')})) # TODO: User error message
email = request.POST['email'] email = request.POST['email']
password = request.POST['password'] password = request.POST['password']
...@@ -436,14 +437,14 @@ def login_user(request, error=""): ...@@ -436,14 +437,14 @@ def login_user(request, error=""):
# this occurs when there are too many attempts from the same IP address # this occurs when there are too many attempts from the same IP address
except RateLimitException: except RateLimitException:
return HttpResponse(json.dumps({'success': False, return HttpResponse(json.dumps({'success': False,
'value': _('Too many failed login attempts. Try again later.')})) 'value': ungettext_lazy('Too many failed login attempts. Try again later.')}))
if user is None: if user is None:
# if we didn't find this username earlier, the account for this email # if we didn't find this username earlier, the account for this email
# doesn't exist, and doesn't have a corresponding password # doesn't exist, and doesn't have a corresponding password
if username != "": if username != "":
AUDIT_LOG.warning(u"Login failed - password for {0} is invalid".format(email)) AUDIT_LOG.warning(u"Login failed - password for {0} is invalid".format(email))
return HttpResponse(json.dumps({'success': False, return HttpResponse(json.dumps({'success': False,
'value': _('Email or password is incorrect.')})) 'value': ungettext_lazy('Email or password is incorrect.')}))
if user is not None and user.is_active: if user is not None and user.is_active:
try: try:
...@@ -561,7 +562,7 @@ def _do_create_account(post_vars): ...@@ -561,7 +562,7 @@ def _do_create_account(post_vars):
js = {'success': False} js = {'success': False}
# Figure out the cause of the integrity error # Figure out the cause of the integrity error
if len(User.objects.filter(email=post_vars['email'])) > 0: if len(User.objects.filter(email=post_vars['email'])) > 0:
js['value'] = _("An account with the Email '{email}' already exists.").format(email=post_vars['email']) js['value'] = ungettext_lazy("An account with the Email '{email}' already exists.").format(email=post_vars['email'])
js['field'] = 'email' js['field'] = 'email'
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
...@@ -645,12 +646,12 @@ def create_account(request, post_override=None): ...@@ -645,12 +646,12 @@ def create_account(request, post_override=None):
"work_occupation", "work_teaching_experience", "work_qualification_category", "work_qualification_category_year", "work_occupation", "work_teaching_experience", "work_qualification_category", "work_qualification_category_year",
"contact_phone"]: "contact_phone"]:
if a not in post_vars: if a not in post_vars:
js['value'] = _("Error (401 {field}). E-mail us.").format(field=a) js['value'] = ungettext_lazy("Error (401 {field}). E-mail us.").format(field=a)
js['field'] = a js['field'] = a
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
if post_vars.get('honor_code', 'false') != u'true': if post_vars.get('honor_code', 'false') != u'true':
js['value'] = _("To enroll, you must follow the honor code.").format(field=a) js['value'] = ungettext_lazy("To enroll, you must follow the honor code.").format(field=a)
js['field'] = 'honor_code' js['field'] = 'honor_code'
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
...@@ -661,7 +662,7 @@ def create_account(request, post_override=None): ...@@ -661,7 +662,7 @@ def create_account(request, post_override=None):
if not tos_not_required: if not tos_not_required:
if post_vars.get('terms_of_service', 'false') != u'true': if post_vars.get('terms_of_service', 'false') != u'true':
js['value'] = _("You must accept the terms of service.").format(field=a) js['value'] = ungettext_lazy("You must accept the terms of service.").format(field=a)
js['field'] = 'terms_of_service' js['field'] = 'terms_of_service'
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
...@@ -686,29 +687,29 @@ def create_account(request, post_override=None): ...@@ -686,29 +687,29 @@ def create_account(request, post_override=None):
for a in required_post_vars: for a in required_post_vars:
if len(post_vars[a]) < 1: if len(post_vars[a]) < 1:
error_str = {'username': _('Username must be minimum of two characters long.'), error_str = {'username': ungettext_lazy('Username must be minimum of two characters long.'),
'email': _('A properly formatted e-mail is required.'), 'email': ungettext_lazy('A properly formatted e-mail is required.'),
'name': _('Your legal name must be a minimum of two characters long.'), 'name': ungettext_lazy('Your legal name must be a minimum of two characters long.'),
'password': _('A valid password is required.'), 'password': ungettext_lazy('A valid password is required.'),
'terms_of_service': _('Accepting Terms of Service is required.'), 'terms_of_service': ungettext_lazy('Accepting Terms of Service is required.'),
'honor_code': _('Agreeing to the Honor Code is required.'), 'honor_code': ungettext_lazy('Agreeing to the Honor Code is required.'),
'lastname': _('Lastname must be a minimum of two characters long.'), 'lastname': ungettext_lazy('Lastname must be a minimum of two characters long.'),
'firstname': _('Firstname must be a minimum of two characters long.'), 'firstname': ungettext_lazy('Firstname must be a minimum of two characters long.'),
'middlename': _('Middlename must be a minimum of two characters long.'), 'middlename': ungettext_lazy('Middlename must be a minimum of two characters long.'),
'year_of_birth': _('Year of birth is required'), 'year_of_birth': ungettext_lazy('Year of birth is required'),
'level_of_education': _('Education level is required'), 'level_of_education': ungettext_lazy('Education level is required'),
'education_place': _('Education place is required'), 'education_place': ungettext_lazy('Education place is required'),
'education_year': _('Education year is required'), 'education_year': ungettext_lazy('Education year is required'),
'work_type': _('Work type is required'), 'work_type': ungettext_lazy('Work type is required'),
'work_number': _('Work number is required'), 'work_number': ungettext_lazy('Work number is required'),
'work_name': _('Work name is required'), 'work_name': ungettext_lazy('Work name is required'),
'work_login': _('Work StatGrad login is required'), 'work_login': ungettext_lazy('Work StatGrad login is required'),
'work_location': _('Work location is required'), 'work_location': ungettext_lazy('Work location is required'),
'work_occupation': _('Work occupation is required'), 'work_occupation': ungettext_lazy('Work occupation is required'),
'work_teaching_experience': _('Work teaching experience is required'), 'work_teaching_experience': ungettext_lazy('Work teaching experience is required'),
'work_qualification_category': _('Work qualification category is required'), 'work_qualification_category': ungettext_lazy('Work qualification category is required'),
'work_qualification_category_year': _('Work qualification year is required'), 'work_qualification_category_year': ungettext_lazy('Work qualification year is required'),
'contact_phone': _('Contact phone is required')} 'contact_phone': ungettext_lazy('Contact phone is required')}
js['value'] = error_str[a] js['value'] = error_str[a]
js['field'] = a js['field'] = a
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
...@@ -718,11 +719,11 @@ def create_account(request, post_override=None): ...@@ -718,11 +719,11 @@ def create_account(request, post_override=None):
for a in numeric_post_vars: for a in numeric_post_vars:
if len(post_vars[a]) > 0 and not post_vars[a].isdigit(): if len(post_vars[a]) > 0 and not post_vars[a].isdigit():
error_str = { error_str = {
'education_year': _('Education year must be numeric'), 'education_year': ungettext_lazy('Education year must be numeric'),
'work_teaching_experience': _('Work teaching experience must be numeric'), 'work_teaching_experience': ungettext_lazy('Work teaching experience must be numeric'),
'work_managing_experience': _('Work managing experience must be numeric'), 'work_managing_experience': ungettext_lazy('Work managing experience must be numeric'),
'work_qualification_category_year': _('Work qualification year must be numeric'), 'work_qualification_category_year': ungettext_lazy('Work qualification year must be numeric'),
'contact_phone': _('Contact phone must be numeric')} 'contact_phone': ungettext_lazy('Contact phone must be numeric')}
js['value'] = error_str[a] js['value'] = error_str[a]
js['field'] = a js['field'] = a
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
...@@ -732,14 +733,14 @@ def create_account(request, post_override=None): ...@@ -732,14 +733,14 @@ def create_account(request, post_override=None):
try: try:
validate_email(post_vars['email']) validate_email(post_vars['email'])
except ValidationError: except ValidationError:
js['value'] = _("Valid e-mail is required.").format(field=a) js['value'] = ungettext_lazy("Valid e-mail is required.").format(field=a)
js['field'] = 'email' js['field'] = 'email'
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
try: try:
_validate_statgradlogin(post_vars['work_login']) _validate_statgradlogin(post_vars['work_login'])
except ValidationError: except ValidationError:
js['value'] = _("Valid StatGrad login is required.").format(field=a) js['value'] = ungettext_lazy("Valid StatGrad login is required.").format(field=a)
js['field'] = 'work_login' js['field'] = 'work_login'
return HttpResponse(json.dumps(js)) return HttpResponse(json.dumps(js))
......
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