This feature provides the ability to designate a "coach" who can create customized runs of an existing course, invite students to participate, and manage students through the run of the course.
In this squashed commit we implement the initial scifi, add the 'POC Coach' course role, refine the scifi, add migrations for models, create POCs, enforce POC Coach role, provide panels for Coach Dashboard, set up rudimentary display of course outline, add and remove units, show/hide all units, and save schedule changes, set dates when adding units, edit dates on units already added and provide some tests.
We also provide mechanisms for invitation and enrollment in a POC (to become CCX) and control the display of blocks to students in a POC.
individual students, and a reimplementation of the individual due date
feature.
This work introduces an architecture, used with the 'authored_data'
portion of LmsFieldData, which allows arbitrary field overrides to be
made for fields that are part of the course content or settings (Mongo
data). The basic architecture is extensible by means of writing and
configuring arbitrary field override providers.
One concrete implementation of a field override provider is provided
which allows for overrides to be for individual students. This provider
is then used as a basis for reimplementing the individual due date
extensions feature as a proof of concept for the design.
One can imagine writing override providers that provide overrides based
on a student's membership in a cohort or other similar idea. This work
is being done, in fact, to pave the way for the Personal Online Courses
feature being developed by MIT, which will use an override provider very
much long those lines.
As some i18n features need ```ugettext``` or its shorcut ```_``` to be called on a non-string-literal, so the pylint check of ```translation-of-non-string``` should be explicitly disabled in such situations.
This is required so that an a video module exported by one Open edX
deployment and imported by another will work correctly if it contains an
edx_video_id but does not populate other URL fields.
JIRA: MA-110
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