Addressed bug in the following issue:
https://openedx.atlassian.net/browse/TNL-1296?filter=12810
There were strings that were not i18n in the xblock problem menu. The fix I made seems a little hacky. The yaml files controlled what the titles ended up being in menu. Since yaml has no i18n capabilities, and since mako does not allow for hashtables (unless they are introduced from the function/class that renders them) the commit I made was the best solution I could think of. If you know how to introduce i18n strings into yaml files or where this file is being rendered so I can pass in a hashtable that would be great! More discussion/information on this issue can be found in the issue thread linked above.
Observe bad behavior:
1. Load Studio.
2. Log in as staff@example.com.
3. Click "Content" and go to "Outline" in the dropdown.
4. In Example Week 1 click on "Homework."
5. Click on any question from the dropdown.
6. Click on "Problem."
7. Clicking on both "Common Problem Types" and "Advanced," notice how some options are not i18n.
~Please keep this webpage open after viewing the bad results~
View Correction:
1. Put my code into your edx-platform folder.
2. Kill the studio process.
3. While logged in as edxapp enter the following into your commandline:
paver i18n_extract && paver i18n_dummy && paver i18n_generate && paver devstack studio
4. Reload the studio page and notice how the strings are in the correct i18n format.
Fixed i18n Problem with xBlock Menu
Addressed bug in the following issue:
https://openedx.atlassian.net/browse/TNL-1296?filter=12810
There were strings that were not i18n in the xblock problem menu. The fix I made seems a little hacky. The yaml files controlled what the titles ended up being in menu. Since yaml has no i18n capabilities, and since mako does not allow for hashtables (unless they are introduced from the function/class that renders them) the commit I made was the best solution I could think of. If you know how to introduce i18n strings into yaml files or where this file is being rendered so I can pass in a hashtable that would be great! More discussion/information on this issue can be found in the issue thread linked above.
Observe bad behavior:
1. Load Studio.
2. Log in as staff@example.com.
3. Click "Content" and go to "Outline" in the dropdown.
4. In Example Week 1 click on "Homework."
5. Click on any question from the dropdown.
6. Click on "Problem."
7. Clicking on both "Common Problem Types" and "Advanced," notice how some options are not i18n.
~Please keep this webpage open after viewing the bad results~
View Correction:
1. Put my code into your edx-platform folder.
2. Kill the studio process.
3. While logged in as edxapp enter the following into your commandline:
paver i18n_extract && paver i18n_dummy && paver i18n_generate && paver devstack studio
4. Reload the studio page and notice how the strings are in the correct i18n format.
Update add-xblock-component-menu-problem.underscore
Reverted File
Modified capa_base.py to make Blank Advanced Problem i18n
* Only fire on bulk operation if something therein was published
* Wrap calls that use the following repeated pattern:
if self.signal_handler and not bulk_record.active:
self.signal_handler.send()
* Ensure consistent firing of signal between split and draft implementations
* Updated tests to use typical course nesting structures
* Added tests within bulk operations
SOL-217 Adding basic analytics events logging for courseware search - In discussing with @mulby, we agreed to allow this to go in , and we'll add a story to improve the tests at a later time.
Update edx-lint to the version that checks if tearDown uses super.
Convert a number of tearDown methods into addCleanup.
Remove some unneeded tearDown methods: no need to call patch.stopall if
none of them were started with patch.start.
Prior to this change, if a CachingDescriptorSystem was prepopulated
with XBlock field data (`module_data`), then it would be used as
the DescriptorSystem for blocks loaded through it. On the other hand,
if it had to fetch new data from the modulestore, then a new
CachingDescriptorSystem would be created by the modulestore, and used
by the newly returned object.
This commit allows the modulestore get_item and get_items methods
to accept an existing CachingDescriptorSystem to augment with data
from the backing mongo store, and to use as the DescriptorSystem
for newly loaded XBlocks.