Conflicts:
lms/djangoapps/courseware/courses.py
lms/djangoapps/instructor_task/api.py
refined entrance exam student attempts reset
Quality improvements 1/16
added rescore, delete state and task history functionality
added unit tests for entrance exam reset attempts
added unit tests for re scoring of entrance exam and task history
improved test coverage
Got rid of pep violation
feedback changes and added jasmine test
added more jasmine tests for Javascript changes
added bok-choy tests for UI changes
replaced input containing <p> tags with <label>
Removed ee element assertions to avoid js error
Added call to super.setUp()
changes based on feedback on 2/18
Writing tests in JS instead of coffee script
commit related to skip entrance exam 2/13
fixed bad-continuation quality error
fixed broken bok-choy test
changes based on feedback on 2/18
added js tests and removed coffee script tests
fixed broken bok-choy and unit tests
changes left while rebasing
rephrase test titles
do not need these libs
changes based on feedback on 2/24
changes text which was left
Changes based on feedback on 3/3
- pass through registration price for use in template
- change conditional for add-to-cart to use registration price
- change conditional for sidebar price field to also include registration price
- remove expected failure in test
- add test for shopping_cart + course without mode
xblock-external-ui: Alternate referer check for CORS requests
xblock-external-ui: Allow to disable httponly on session cookies
xblock-external-ui: Add a unit test for CorsCSRFMiddleware
While this may have served a purpose at one point, it's now been broken
for more than 2 years [1]; a critical code path makes a call to a
function which is no longer imported.
[1] commit 84cb0ce99b
Date: Fri Dec 21 13:15:37 2012 -0500
xblock-external-ui: Include CSRF token in the API answer
xblock-external-ui: Include full path when building local_url
xblock-external-ui: Fix TestHandleXBlockCallback & bok_choy, add tests
xblock-external-ui: Only return `instance` in `_invoke_xblock_handler()`
xblock-external-ui: Group resources by hash tag to avoid duplicate loads
xblock-external-ui: PEP8
xblock-external-ui: Fail early if the XBlock view is called anonymously
We used to serve anonymous requests, but most XBlocks assume that the
user is logged in, which can generate a lot of errors when the user is
accessed or when an XBlock ajax callback is queried. Fail early to only
get one error per page load, and prevent displaying the XBlock
altogether when the LMS doesn't find an active user session.
xblock-external-ui: Add request params in view render context
xblock-external-ui: HTTP error status when file is too large for handler
xblock-external-ui: Fix unicode encodings in XBlock rendering
xblock-external-ui: Feature flag for API call ENABLE_XBLOCK_VIEW_ENDPOINT
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.
This change will also move us to bok-choy instead of lettuce for
these scenarios, and re-enable them. See TE-736.
Includes some refactoring of repeated event-checking code as well.
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
Makes logistration available at /login and /register as well as /accounts/login/ and /accounts/register/. In addition:
- Adds support for redirect URLs in third party auth for combined login/registration page
- Adds support for external auth on the combined login/registration page
- Removes old login and registration acceptance tests
- Adds deprecation warnings to old login and register views
- Moves third party auth util to student_account
- Adds exception for microsites (theming)
Removes old payment and verification endpoints, views, templates, and tests, making the new split flow the default. The SEPARATE_VERIFICATION_FROM_PAYMENT feature flag is also removed.