Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
edx-platform
Commits
daaff14b
Commit
daaff14b
authored
Oct 11, 2017
by
McKenzie Welter
Committed by
Dillon Dumesnil
Oct 31, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
extended parameters of language-less certificate templates
parent
b5e817fc
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
45 additions
and
3 deletions
+45
-3
lms/djangoapps/certificates/api.py
+10
-3
lms/djangoapps/certificates/tests/test_webview_views.py
+35
-0
No files found.
lms/djangoapps/certificates/api.py
View file @
daaff14b
...
...
@@ -513,12 +513,12 @@ def get_language_specific_template_or_default(language, templates):
Returns default templates If no language matches, or language passed is None
"""
two_letter_language
=
_get_two_letter_language_code
(
language
)
language_or_default_templates
=
list
(
templates
.
filter
(
Q
(
language
=
two_letter_language
)
|
Q
(
language
=
None
)))
language_specific_template
=
get_language_specific_template
(
language
,
language_or_default_templates
)
language_or_default_templates
=
list
(
templates
.
filter
(
Q
(
language
=
two_letter_language
)
|
Q
(
language
=
None
)
|
Q
(
language
=
''
)
))
language_specific_template
=
get_language_specific_template
(
two_letter_
language
,
language_or_default_templates
)
if
language_specific_template
:
return
language_specific_template
else
:
return
language_or_default_templates
[
0
]
if
language_or_default_templates
else
None
return
get_all_languages_or_default_template
(
language_or_default_templates
)
def
get_language_specific_template
(
language
,
templates
):
...
...
@@ -528,6 +528,13 @@ def get_language_specific_template(language, templates):
return
None
def
get_all_languages_or_default_template
(
templates
):
for
template
in
templates
:
if
template
.
language
==
''
:
return
template
return
templates
[
0
]
if
templates
else
None
def
_get_two_letter_language_code
(
language_code
):
"""
Shortens language to only first two characters (e.g. es-419 becomes es)
...
...
lms/djangoapps/certificates/tests/test_webview_views.py
View file @
daaff14b
...
...
@@ -1074,6 +1074,13 @@ class CertificatesViewsTests(CommonCertificatesTestCase):
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_null_lang_template'
)
#create an org_mode_and_coursekey template language=''
self
.
_create_custom_named_template
(
'test_all_languages_template'
,
org_id
=
1
,
mode
=
'honor'
,
course_key
=
unicode
(
self
.
course
.
id
),
language
=
''
)
#verify returns null lang template
response
=
self
.
client
.
get
(
test_url
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_all_languages_template'
)
#create a org_mode_and_coursekey template language=lang
self
.
_create_custom_named_template
(
'test_right_lang_template'
,
org_id
=
1
,
mode
=
'honor'
,
course_key
=
unicode
(
self
.
course
.
id
),
language
=
right_language
)
# verify return right_language template
...
...
@@ -1119,6 +1126,13 @@ class CertificatesViewsTests(CommonCertificatesTestCase):
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_null_lang_template'
)
#create an org and mode template language=''
self
.
_create_custom_named_template
(
'test_all_languages_template'
,
org_id
=
1
,
mode
=
'honor'
,
language
=
''
)
#verify returns All Languages template
response
=
self
.
client
.
get
(
test_url
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_all_languages_template'
)
#create a org and mode template language=lang
self
.
_create_custom_named_template
(
'test_right_lang_template'
,
org_id
=
1
,
mode
=
'honor'
,
language
=
right_language
)
# verify return right_language template
...
...
@@ -1162,6 +1176,13 @@ class CertificatesViewsTests(CommonCertificatesTestCase):
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_null_lang_template'
)
#create an org template language=''
self
.
_create_custom_named_template
(
'test_all_languages_template'
,
org_id
=
1
,
language
=
''
)
#verify returns All Languages template
response
=
self
.
client
.
get
(
test_url
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_all_languages_template'
)
#create a org template language=lang
self
.
_create_custom_named_template
(
'test_right_lang_template'
,
org_id
=
1
,
language
=
right_language
)
# verify return right_language template
...
...
@@ -1206,6 +1227,13 @@ class CertificatesViewsTests(CommonCertificatesTestCase):
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_null_lang_template'
)
#create a mode template language=''
self
.
_create_custom_named_template
(
'test_all_languages_template'
,
mode
=
'honor'
,
language
=
''
)
#verify returns All Languages template
response
=
self
.
client
.
get
(
test_url
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_all_languages_template'
)
#create a mode template language=lang
self
.
_create_custom_named_template
(
'test_right_lang_template'
,
mode
=
'honor'
,
language
=
right_language
)
# verify return right_language template
...
...
@@ -1249,6 +1277,13 @@ class CertificatesViewsTests(CommonCertificatesTestCase):
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_null_lang_template'
)
#create a mode template language=''
self
.
_create_custom_named_template
(
'test_all_languages_template'
,
org_id
=
1
,
mode
=
'honor'
,
language
=
''
)
#verify returns All Languages template
response
=
self
.
client
.
get
(
test_url
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertContains
(
response
,
'course name: test_all_languages_template'
)
#create a mode template language=lang
self
.
_create_custom_named_template
(
'test_right_lang_template'
,
org_id
=
1
,
mode
=
'honor'
,
language
=
right_language
)
# verify return right_language template
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment