Implement the use of CCX opaque keys throughout the ccx code base
include the new custom ccx id package in the github checkouts list
update the coach dashboard wrapper to get CCX information from the incoming course_id, if possible
update function signatures for all view functions to expect CCX as passed by the dashboard wrapper (default to None), remove calls to get_ccx_for_coach as the ccx is passed in.
update reverse calls in python view code to use a CCXLocator for the URL instead of a CourseLocator
use CCXLocator where necessary
use course id to find ccx, instead of thread local
remove unused method and related tests
use course id for getting ccx
provide course id to the get_current_ccx method
ensure the course id passed in is a CourseKey instance of some type whether it starts out as a string or not
use the provided block to figure out what the course_id should be, then get the ccx for that
redirect to ccx dashboard using coach ccx if no ccx is passed in
update student dashboard listing for ccx to build an appropriate url from a CCXLocator, not from the course locator.
refactor building the ccx locator so we don't have to do it repeatedly
begin test refactoring after ccx_keys introduction
Ensure that when access checking happens, the course_locator form of a ccx locator is used. This ensures that the access check happens against the course and it is not necesarry to duplicate the entire access control structure for the course.
pick up api change in ccx-keys
create and conditionally use a wrapper for the mixed modulestore returned by xmodule.modulestore.django.modulestore
the wrapper will strip and restore ccx values from CourseKey and UsageKey objects
fix return values on a few methods
remove unused symbol
pull updated ccx-keys package
set course_id on the caching descriptor system to avoid api incompatibilities in some subsystems
use ccx.course instead of self.course
fix get method to find course keys from blocks that are not themselves keys but have a location attribute (which will be a key)
if an item coming out of the db has children, restore the ccx to them as well
if the block passed in has a CCX key, unwrap that before we try to look up the override, otherwise it will never be found.
pick up a change in the ccx keys package that allows for stripping CCX identity from a usage key
begin writing tests to cover this modulestore wrapper
remove the switch_pocs view, the url pattern for it, and the tests that covered it
remove the ccx context and the middleware responsible for setting the current CCX. These are no longer needed
all dashboard views should raise 404 if a ccx is not provided by the coach_dashboard decorator
code quality
prevent errors resulting from trying to `get` a ccx based on non-unique criteria.
remove obsolete usage of ACTIVE_CCX_KEY
fix setUp method for grading tests to properly create grades for the ccx rather than for the course.
clean up reverse calls
code quality
adding docstrings to clarify purpose of this patch
fix bug in getting ccx for coach
fix grading views to properly fetch a ccx-ified course so that grades for that version will be calculated
fix small errors in modulestore implementation
fix errant merge marker
update call to get_current_ccx after key refactoring merged with tab changes
- added the abstract and concrete layers of enrollment report provider
- created a celery task.
-added the button in the e-commerce reports section
added the enrollment data backend
added the payment data and start writing the test cases.
updated the code with the feedback suggestions and wrote some test cases.
- all the downloadable reports are now visible in the ecommerce download section.
Pending instructor tasks is also visible in the ecommerce section
added the fields in the user profile information
changed the report store configuration key
added the new http endpoint for financial reports to add more permissions for finance_admin to access.
fix quality issues
added test cases to check csv content data
rebased with master and resolved conflicts
changed the log messages
added the changes as per code clintonb suggestions during code review
updated the test cases for the finance_admin decorator
changes suggested by clinton.
Created and moved Table level filters to the Custom Manager for the CourseEnrollment model.
ecommerce.js file was loaded twice in the instructor_dashboard.js fixed the issues
added the registration code column in the csv
added the full gender in the csv file
Update data sources and add display name translations for the report columns
fix meta name
Make sure the reports section does not appear on non whitelabel courses
pylint fixes
expand out enumerated values
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
Add client-side analytics event for LinkedIn Add to Profile button click.
Add management command for generating certs for testing.
Update styling of the certificate messages.
Code review changes.
Fix test and pylint.
pylint error.
Updating the test to verify the signal is fired.
Test for all analytics events
Import pylint error.
Pylint error
Quick cleanup
Making kwarg to suppress unenroll events.
pylint and pep8 errors cleaned up.
add commit on success.
Changing transactional behavior of the management command.
The body of the enrollment message template
Tokenize platform name in message.
Changing to a datetime enrollment approach
Adding sorting. A little refactoring.
Adding confguration model for time delta
Adding admin registration and basic form for new config model.
Fixing docstring typo
Updating default time delta to 0, adding test to show it disabled functionality.
Removing the form from configuration and tweaking the enrollment message html
Add Python APIs for account/profile information to user_api
Updating profile page to have social linking
Authors: Renzo Lucioni, Alasdair Swan, Stephen Sanchez, Will Daly