The overall behavior of the __init__ method has remained the same.
What's changed is how it determines whether a field is explicitly set.
Instead of using the slower performing editable_metadata_fields, it
calls _field_data.has directly to check for explicitly set fields.
Iframe unit in the studio have accesibility issue as there was no title for
Iframe provided as well as placeholder does not specify what changes to made
to add new iframe
TNL-1073
Fixes https://openedx.atlassian.net/browse/TNL-408.
On Safari, the Youtube HTML5 player accepts playback rate changes before the
video is loaded, but doesn't actually play the video at the rate set. This
patch works around this bug by first setting the playback rate back to 1 and
then to the actually desired speed.
attributes that are serialized/de-serialized to/from MongoDB.
Change access of attributes from dict keys.
Add EditInfo object to encapsulate editing info for block data.
There were no label added for problem with adaptive hint so for the question
added the label and insteat of using for attribute used the label as the
parent of input field
TNL-1074
The existing pattern of using `override_settings(MODULESTORE=...)` prevented
us from having more than one layer of subclassing in modulestore tests.
In a structure like:
@override_settings(MODULESTORE=store_a)
class BaseTestCase(ModuleStoreTestCase):
def setUp(self):
# use store
@override_settings(MODULESTORE=store_b)
class ChildTestCase(BaseTestCase):
def setUp(self):
# use store
In this case, the store actions performed in `BaseTestCase` on behalf of
`ChildTestCase` would still use `store_a`, even though the `ChildTestCase`
had specified to use `store_b`. This is because the `override_settings`
decorator would be the innermost wrapper around the `BaseTestCase.setUp` method,
no matter what `ChildTestCase` does.
To remedy this, we move the call to `override_settings` into the
`ModuleStoreTestCase.setUp` method, and use a cleanup to remove the override.
Subclasses can just defined the `MODULESTORE` class attribute to specify which
modulestore to use _for the entire `setUp` chain_.
[PLAT-419]
- Price field added to Advanced Settings
- Function that decides which price to display
- Test added to check that the function outputs correct price
- Added feature flag and conditional to decide whether to display course price or not
- Feature Flag to show or hide course price on Course About page sidebar when not using shopping cart
modulestore, in order to separate serializable block data from
out-of-band, non-saved, temporary metadata.
Eliminate the deepcopy causing performance problems with import/export.
https://openedx.atlassian.net/browse/PLAT-416