${_("Welcome, {0}!".format(user.username))}
+${_("Welcome, {0}!").format(user.username)}
%if len(courses) > 0:${_("Unit Location")}
${_("Unit Identifier:")} - +
-
diff --git a/common/djangoapps/django_comment_common/models.py b/common/djangoapps/django_comment_common/models.py
index 7878f1b453cf..6e088e5e5842 100644
--- a/common/djangoapps/django_comment_common/models.py
+++ b/common/djangoapps/django_comment_common/models.py
@@ -11,10 +11,12 @@
from xmodule.modulestore.django import modulestore
from xmodule.course_module import CourseDescriptor
-FORUM_ROLE_ADMINISTRATOR = 'Administrator'
-FORUM_ROLE_MODERATOR = 'Moderator'
-FORUM_ROLE_COMMUNITY_TA = 'Community TA'
-FORUM_ROLE_STUDENT = 'Student'
+from django.utils.translation import ugettext_noop
+
+FORUM_ROLE_ADMINISTRATOR = ugettext_noop('Administrator')
+FORUM_ROLE_MODERATOR = ugettext_noop('Moderator')
+FORUM_ROLE_COMMUNITY_TA = ugettext_noop('Community TA')
+FORUM_ROLE_STUDENT = ugettext_noop('Student')
@receiver(post_save, sender=CourseEnrollment)
diff --git a/common/static/coffee/src/discussion/discussion_module_view.coffee b/common/static/coffee/src/discussion/discussion_module_view.coffee
index f99eba3872e7..8b74b7d49854 100644
--- a/common/static/coffee/src/discussion/discussion_module_view.coffee
+++ b/common/static/coffee/src/discussion/discussion_module_view.coffee
@@ -28,7 +28,7 @@ if Backbone?
else
@newPostForm.show()
@toggleDiscussionBtn.addClass('shown')
- @toggleDiscussionBtn.find('.button-text').html("Hide Discussion")
+ @toggleDiscussionBtn.find('.button-text').html(gettext("Hide Discussion"))
@$("section.discussion").slideDown()
@showed = true
@@ -39,7 +39,7 @@ if Backbone?
hideDiscussion: ->
@$("section.discussion").slideUp()
@toggleDiscussionBtn.removeClass('shown')
- @toggleDiscussionBtn.find('.button-text').html("Show Discussion")
+ @toggleDiscussionBtn.find('.button-text').html(gettext("Show Discussion"))
@showed = false
toggleDiscussion: (event) ->
@@ -47,7 +47,7 @@ if Backbone?
@hideDiscussion()
else
@toggleDiscussionBtn.addClass('shown')
- @toggleDiscussionBtn.find('.button-text').html("Hide Discussion")
+ @toggleDiscussionBtn.find('.button-text').html(gettext("Hide Discussion"))
if @retrieved
@$("section.discussion").slideDown()
diff --git a/common/static/coffee/src/discussion/views/discussion_thread_list_view.coffee b/common/static/coffee/src/discussion/views/discussion_thread_list_view.coffee
index 57385c15bd7e..3637e7fefa6e 100644
--- a/common/static/coffee/src/discussion/views/discussion_thread_list_view.coffee
+++ b/common/static/coffee/src/discussion/views/discussion_thread_list_view.coffee
@@ -119,12 +119,12 @@ if Backbone?
renderMorePages: ->
if @displayedCollection.hasMorePages()
- @$(".post-list").append("
- Load more ") + @$(".post-list").append("
- " + gettext('Load more')+ " ") loadMorePages: (event) -> if event event.preventDefault() - @$(".more-pages").html('
%s" % escape(err) + msg += "" + _u("Couldn't find module with that urlname.") + " " + msg += "
{err}".format(err = escape(err))
smdat = []
if smdat:
datatable = {'header': ['username', 'state']}
datatable['data'] = [[x.student.username, x.state] for x in smdat]
- datatable['title'] = 'Student state for problem %s' % problem_to_dump
- return return_csv('student_state_from_%s.csv' % problem_to_dump, datatable)
+ datatable['title'] = _u('Student state for problem {problem}').format(problem = problem_to_dump)
+ return return_csv('student_state_from_{problem}.csv'.format(problem = problem_to_dump), datatable)
elif 'Download CSV of all student anonymized IDs' in action:
students = User.objects.filter(
@@ -555,7 +551,7 @@ def getdat(u):
elif 'List beta testers' in action:
role = CourseBetaTesterRole(course.location)
- datatable = _role_members_table(role, "List of Beta Testers", course_id)
+ datatable = _role_members_table(role, _("List of Beta Testers"), course_id)
track.views.server_track(request, "list-beta-testers", {}, page="idashboard")
elif action == 'Add beta testers':
@@ -694,9 +690,9 @@ def getdat(u):
else:
# If sending the task succeeds, deliver a success message to the user.
if email_to_option == "all":
- email_msg = 'Your email was successfully queued for sending. Please note that for large classes, it may take up to an hour (or more, if other courses are simultaneously sending email) to send all emails.
' + _u('Your email was successfully queued for sending. Please note that for large classes, it may take up to an hour (or more, if other courses are simultaneously sending email) to send all emails.') + '
Your email was successfully queued for sending.
' + _u('Your email was successfully queued for sending.') + '
" % rgurl - msg += "Error: %s" % err - msg += "
resp=%s" % resp.content - msg += "
data=%s" % data + msg = _u("Failed to communicate with gradebook server at {url}").format(url = rgurl) + "
" + msg += _u("Error: {err}").format(err = err) + msg += "
resp={resp}".format(resp = resp.content) + msg += "
data={data}".format(data = data) return msg, {} - msg = '
%s' % retdict['msg'].replace('\n', '
') + msg = '
{msg}'.format(msg = retdict['msg'].replace('\n', '')) retdata = retdict['data'] # a list of dicts if retdata: datatable = {'header': retdata[0].keys()} datatable['data'] = [x.values() for x in retdata] - datatable['title'] = 'Remote gradebook response for %s' % action + datatable['title'] = _u('Remote gradebook response for {action}').format(action = action) datatable['retdata'] = retdata else: datatable = {} @@ -906,13 +902,13 @@ def _list_course_forum_members(course_id, rolename, datatable): Returns message status string to append to displayed message, if role is unknown. """ # make sure datatable is set up properly for display first, before checking for errors - datatable['header'] = ['Username', 'Full name', 'Roles'] - datatable['title'] = 'List of Forum {0}s in course {1}'.format(rolename, course_id) + datatable['header'] = [_u('Username'), _u('Full name'), _u('Roles')] + datatable['title'] = _u('List of Forum {name}s in course {id}').format(name = rolename, id = course_id) datatable['data'] = [] try: role = Role.objects.get(name=rolename, course_id=course_id) except Role.DoesNotExist: - return 'Error: unknown rolename "{0}"'.format(rolename) + return '' + _u('Error: unknown rolename "{0}"').format(rolename) + '' uset = role.users.all().order_by('username') msg = 'Role = {0}'.format(rolename) log.debug('role={0}'.format(rolename)) @@ -936,11 +932,11 @@ def _update_forum_role_membership(uname, course, rolename, add_or_remove): try: user = User.objects.get(username=uname) except User.DoesNotExist: - return 'Error: unknown username "{0}"'.format(uname) + return '' + _u('Error: unknown username "{0}"').format(uname) + '' try: role = Role.objects.get(name=rolename, course_id=course.id) except Role.DoesNotExist: - return 'Error: unknown rolename "{0}"'.format(rolename) + return '' + _u('Error: unknown rolename "{0}"').format(rolename) + '' # check whether role already has the specified user: alreadyexists = role.users.filter(username=uname).exists() @@ -948,19 +944,19 @@ def _update_forum_role_membership(uname, course, rolename, add_or_remove): log.debug('rolename={0}'.format(rolename)) if add_or_remove == FORUM_ROLE_REMOVE: if not alreadyexists: - msg = 'Error: user "{0}" does not have rolename "{1}", cannot remove'.format(uname, rolename) + msg = '' + _u('Error: user "{0}" does not have rolename "{1}", cannot remove').format(uname, rolename) + '' else: user.roles.remove(role) - msg = 'Removed "{0}" from "{1}" forum role = "{2}"'.format(user, course.id, rolename) + msg = '' + _u('Removed "{0}" from "{1}" forum role = "{2}"').format(user, course.id, rolename) + '' else: if alreadyexists: - msg = 'Error: user "{0}" already has rolename "{1}", cannot add'.format(uname, rolename) + msg = '' + _u('Error: user "{0}" already has rolename "{1}", cannot add').format(uname, rolename) + '' else: if (rolename == FORUM_ROLE_ADMINISTRATOR and not has_access(user, course, 'staff')): - msg = 'Error: user "{0}" should first be added as staff before adding as a forum administrator, cannot add'.format(uname) + msg = '' + _u('Error: user "{0}" should first be added as staff before adding as a forum administrator, cannot add').format(uname) + '' else: user.roles.add(role) - msg = 'Added "{0}" to "{1}" forum role = "{2}"'.format(user, course.id, rolename) + msg = '' + _u('Added "{0}" to "{1}" forum role = "{2}"').format(user, course.id, rolename) + '' return msg @@ -980,9 +976,9 @@ def _role_members_table(role, title, course_id): 'title': "{title} in course {course}" """ uset = role.users_with_role() - datatable = {'header': ['Username', 'Full name']} + datatable = {'header': [_u('Username'), _u('Full name')]} datatable['data'] = [[x.username, x.profile.name] for x in uset] - datatable['title'] = '{0} in course {1}'.format(title, course_id) + datatable['title'] = _u('{0} in course {1}').format(title, course_id) return datatable @@ -1105,7 +1101,7 @@ def get_student_grade_summary_data(request, course, course_id, get_grades=True, courseenrollment__is_active=1, ).prefetch_related("groups").order_by('username') - header = ['ID', 'Username', 'Full Name', 'edX email', 'External email'] + header = [_u('ID'), _u('Username'), _u('Full Name'), _u('edX email'), _u('External email')] assignments = [] if get_grades and enrolled_students.count() > 0: # just to construct the header @@ -1290,7 +1286,7 @@ def _do_enroll_students(course, course_id, students, overload=False, auto_enroll datatable = {'header': ['StudentEmail', 'action']} datatable['data'] = [[x, status[x]] for x in sorted(status)] - datatable['title'] = 'Enrollment of students' + datatable['title'] = _u('Enrollment of students') def sf(stat): return [x for x in status if status[x] == stat] @@ -1363,7 +1359,7 @@ def _do_unenroll_students(course_id, students, email_students=False): datatable = {'header': ['StudentEmail', 'action']} datatable['data'] = [[x, status[x]] for x in sorted(status)] - datatable['title'] = 'Un-enrollment of students' + datatable['title'] = _u('Un-enrollment of students') data = dict(datatable=datatable) return data @@ -1546,10 +1542,10 @@ def get_background_task_table(course_id, problem_url=None, student=None, task_ty if problem_url is None: msg += 'Failed to find any background tasks for course "{course}".'.format(course=course_id) elif student is not None: - template = 'Failed to find any background tasks for course "{course}", module "{problem}" and student "{student}".' + template = '' + _u('Failed to find any background tasks for course "{course}", module "{problem}" and student "{student}".') + '' msg += template.format(course=course_id, problem=problem_url, student=student.username) else: - msg += 'Failed to find any background tasks for course "{course}" and module "{problem}".'.format(course=course_id, problem=problem_url) + msg += '' + _u('Failed to find any background tasks for course "{course}" and module "{problem}".').format(course=course_id, problem=problem_url) + '' else: datatable['header'] = ["Task Type", "Task Id", diff --git a/lms/static/coffee/src/staff_grading/staff_grading.coffee b/lms/static/coffee/src/staff_grading/staff_grading.coffee index 80487f24ee34..db474f6da47f 100644 --- a/lms/static/coffee/src/staff_grading/staff_grading.coffee +++ b/lms/static/coffee/src/staff_grading/staff_grading.coffee @@ -189,7 +189,6 @@ class @StaffGrading $(window).keyup @keyup_handler @question_header = $('.question-header') @question_header.click @collapse_question - @collapse_question() # model state @state = state_no_data @@ -296,7 +295,7 @@ class @StaffGrading submission_id: @submission_id location: @location submission_flagged: @flag_submission_checkbox.is(':checked') - @gentle_alert "Grades saved. Fetching the next submission to grade." + @gentle_alert gettext("Grades saved. Fetching the next submission to grade.") @backend.post('save_grade', data, @ajax_callback) gentle_alert: (msg) => @@ -344,11 +343,11 @@ class @StaffGrading # clear the problem list and breadcrumbs @problem_list.html('''
") + meta_list.append("") + meta_list.append("") + meta_list.append("
") @problem_meta_info.html(meta_list) @prompt_container.html(@prompt) @@ -439,15 +438,15 @@ class @StaffGrading @setup_score_selection() else if @state == state_graded - @set_button_text('Submit') + @set_button_text(gettext('Submit')) show_action_button = false else if @state == state_no_data @message_container.html(@message) - @set_button_text('Re-check for submissions') + @set_button_text(gettext('Re-check for submissions')) else - @error('System got into invalid state ' + @state) + @error(gettext('System got into invalid state ') + @state) @submit_button.toggle(show_submit_button) @action_button.toggle(show_action_button) @@ -462,17 +461,17 @@ class @StaffGrading else if @state == state_no_data @get_next_submission(@location) else - @error('System got into invalid state for submission: ' + @state) + @error(gettext('System got into invalid state for submission: ') + @state) collapse_question: () => @prompt_container.slideToggle() @prompt_container.toggleClass('open') - if @question_header.text() == "(Hide)" + if @question_header.text() == gettext("(Hide)") Logger.log 'staff_grading_hide_question', {location: @location} - new_text = "(Show)" + new_text = gettext("(Show)") else Logger.log 'staff_grading_show_question', {location: @location} - new_text = "(Hide)" + new_text = gettext("(Hide)") @question_header.text(new_text) scroll_to_top: () => diff --git a/lms/templates/combinedopenended/combined_open_ended.html b/lms/templates/combinedopenended/combined_open_ended.html index c8f4c029dc7f..5b0f94f6bb09 100644 --- a/lms/templates/combinedopenended/combined_open_ended.html +++ b/lms/templates/combinedopenended/combined_open_ended.html @@ -58,7 +58,7 @@
${display_name}
Select the criteria you feel best represents this submission in each category.
+${_("Select the criteria you feel best represents this submission in each category.")}
${_("Gradebook")}
- ${"{0:.3n} of {1:.3n} possible points".format( float(earned), float(total) )}
+ ${_("{earned:.3n} of {total:.3n} possible points").format( earned = float(earned), total = float(total) )}
%endif
%if total > 0 or earned > 0:
@@ -72,7 +72,7 @@
%if len(section['scores']) > 0:
- ${ "Problem Scores: " if section['graded'] else "Practice Scores: "}
+ ${ _("Problem Scores: ") if section['graded'] else _("Practice Scores: ")}
%for score in section['scores']:
- ${"{0:.3n}/{1:.3n}".format(float(score.earned),float(score.possible))}
diff --git a/lms/templates/discussion/_discussion_module.html b/lms/templates/discussion/_discussion_module.html
index 37f8052520b2..09dd9d06d8f5 100644
--- a/lms/templates/discussion/_discussion_module.html
+++ b/lms/templates/discussion/_discussion_module.html
@@ -2,6 +2,6 @@
<%include file="_underscore_templates.html" />
diff --git a/lms/templates/discussion/_filter_dropdown.html b/lms/templates/discussion/_filter_dropdown.html
index c70fcb47cf88..b108be6d2e09 100644
--- a/lms/templates/discussion/_filter_dropdown.html
+++ b/lms/templates/discussion/_filter_dropdown.html
@@ -27,7 +27,7 @@
${ "Problem Scores: " if section['graded'] else "Practice Scores: "}
+${ _("Problem Scores: ") if section['graded'] else _("Practice Scores: ")}
-
%for score in section['scores']:
- ${"{0:.3n}/{1:.3n}".format(float(score.earned),float(score.possible))} diff --git a/lms/templates/discussion/_discussion_module.html b/lms/templates/discussion/_discussion_module.html index 37f8052520b2..09dd9d06d8f5 100644 --- a/lms/templates/discussion/_discussion_module.html +++ b/lms/templates/discussion/_discussion_module.html @@ -2,6 +2,6 @@ <%include file="_underscore_templates.html" /> diff --git a/lms/templates/discussion/_filter_dropdown.html b/lms/templates/discussion/_filter_dropdown.html index c70fcb47cf88..b108be6d2e09 100644 --- a/lms/templates/discussion/_filter_dropdown.html +++ b/lms/templates/discussion/_filter_dropdown.html @@ -27,7 +27,7 @@