Commit Graph

368 Commits

Author SHA1 Message Date
Christina Roberts
03b6050348 Merge pull request #667 from edx/christina/read-only-api
Make split mongo read-only API consistent with other modulestores.
2013-08-15 13:05:58 -07:00
David Ormsbee
3ce87583ab Shift enroll/unenroll logic to CourseEnrollment model, add is_active and mode.
Features coming down the pipe will want to be able to:
* Refer to enrollments before they are actually activated (approval step).
* See what courses a user used to be enrolled in for when they re-enroll in
  the same course, or a different run of that course.
* Have different "modes" of enrolling in a course, representing things like
  honor certificate enrollment, auditing (no certs), etc.

This change adds an is_active flag and mode (with default being "honor").
The commit is only as large as it is because many parts of the codebase were
manipulating enrollments by adding and removing CourseEnrollment objects
directly. It was necessary to create classmethods on CourseEnrollment to
encapsulate this functionality and then port everything over to using them.

The migration to add columns has been tested on a prod replica, and seems to be
fine for running on a live system with single digit millions of rows of
enrollments.
2013-08-14 13:23:06 -04:00
cahrens
13ef870b1b pylint/pep8 cleanup.
cleanup.
2013-08-14 09:59:44 -04:00
cahrens
e0aa46ab2d Make split mongo read-only API consistent with other modulestores. 2013-08-13 15:06:08 -04:00
David Baumgold
6a3f0c141d Merge pull request #564 from edx/db/xblock-student-view
XBlock integration for Studio: student view
2013-08-12 11:55:40 -07:00
Peter Fogg
e20acee4c4 Working on Videoalpha test fix.
Fixed all common and LMS tests.

The tests were failing because XMLDescriptor adds in some attributes
to _model_data, such as `xml_attributes`, that aren't necessary. The
solution is to handle all XML parsing in VideoDescriptor. There's
still one test failing in CMS, which has to do with metadata being
saved. I'm still working out how to update it in such a way that it
doesn't fail, but still tests something meaningful.
2013-08-12 14:32:15 +03:00
Vasyl Nakvasiuk
b33b5c7bd4 Python: videoalpha -> video. 2013-08-12 14:31:48 +03:00
Chris Dodge
b1b8f19c88 add another test. Seems like we never had an explicit test on an import into a new course-id. This fixes that 2013-08-09 20:46:13 -04:00
Chris Dodge
e2358af6a9 add ability to rewrite links on the old /courses/<org>/<course>/<run>/jump_to/i4x://<org>/<course> .. intracourseware linking to the new portable /jump_to_id/<id> format 2013-08-09 20:46:13 -04:00
Chris Dodge
25d6de243e add portable link rewriting on clone. Added tests. 2013-08-09 20:46:12 -04:00
Chris Dodge
36fda35040 do portable link rewriting on import and add test to confirm it 2013-08-09 20:46:12 -04:00
Chris Dodge
481eac7fc8 address PR feedback 2013-08-08 21:25:42 -04:00
Chris Dodge
7b4388ba8c add more testing. Assert that metadata is properly cloned and that draft content is cloned as well 2013-08-08 21:25:42 -04:00
Chris Dodge
0e09ee61d7 update some unit tests on clone_course 2013-08-08 21:25:42 -04:00
David Baumgold
3fa990ea60 Made some tests more general, less fragile 2013-08-08 09:46:15 -04:00
chrisndodge
ece4ec3f57 Merge pull request #533 from edx/fix/cdodge/use-static-shorthand-for-asset-urls
To increase portability of courses, have the Asset Index page display the classic /static/... URL shorthand.
2013-08-08 06:32:35 -07:00
Christina Roberts
4c95078eb0 Merge pull request #578 from edx/christina/autoenroll
Auto-enroll course staff to fix "View Live".
2013-08-06 12:33:56 -07:00
Chris Dodge
22d33db542 fix broken test due to HTML change 2013-08-06 09:55:09 -04:00
cahrens
3732d418c9 Add helper methods to hide internals of how users are enrolled in courses.
Remove _

Minor cleanup.
2013-08-06 09:36:39 -04:00
Chris Dodge
861f1ef7bb add a test for the static url generation 2013-08-05 16:15:03 -04:00
Chris Dodge
3dbe4c189f add unit tests around asserting that /static/ links are not re-written on import 2013-08-05 16:15:03 -04:00
cahrens
a227b14fdd Auto-enroll course staff to fix "View Live".
STUD-554

Code review feedback.
2013-08-05 15:00:37 -04:00
Diana Huang
c867be7961 Limit the rate of logins. 2013-08-02 11:23:59 -04:00
chrisndodge
8573ac3909 Merge pull request #510 from edx/feature/cdodge/allow-course-run-in-course-create
Feature/cdodge/allow course run in course create
2013-07-31 14:44:50 -07:00
Don Mitchell
b80aad2308 Merge pull request #528 from edx/dhm/rename_revision
Rename CourseLocator.revision to branch
2013-07-31 13:18:17 -07:00
David Baumgold
248793c127 Fix some pylint issues 2013-07-31 15:42:11 -04:00
Peter Fogg
25955a79c4 Merge pull request #492 from edx/peter-fogg/fix-stud-146
Fix word cloud modules not exporting correctly.
2013-07-31 08:19:32 -07:00
Chris Dodge
d005323ace update error message to be more specific to what the user needs to fix 2013-07-30 17:25:47 -04:00
Chris Dodge
1cd70ee386 fix some error messages and also make localizable strings 2013-07-30 17:24:43 -04:00
Chris Dodge
39b024b10c fix broken unit tests 2013-07-30 17:24:43 -04:00
Chris Dodge
60f03f5dcc fixing tests 2013-07-30 17:24:43 -04:00
Chris Dodge
e23b693d90 put a 4th field in the create new course form where the user must specify a course_run. Also update unit tests to also provide this 4th parameter. Styling changes to better lay out the form fields are still TBD. 2013-07-30 17:20:09 -04:00
David Baumgold
7d7513b6fe Merge pull request #470 from edx/db/course-team-admin-grants
Grant admin rights to members of the course team
2013-07-30 13:36:56 -07:00
Don Mitchell
119652a62a Rename CourseLocator.revision to branch
and all related vars and methods.
2013-07-30 14:37:33 -04:00
Peter Fogg
512269f842 Add descriptor for modules with empty XML data.
This allows a more general approach to modules such as word_cloud and
video which have no XML data (it's all store in metadata), but use
XmlDescriptor for backwards compatibility. They now generate an empty
tag on export, and clear out empty tags on import.

Also a small change to the video module as a result -- if it's asked
to parse empty XML data, it won't try to parse anything.
2013-07-30 13:53:38 -04:00
Don Mitchell
27d32f1932 Test reproducing the error: malformed course_update silently failing update 2013-07-30 12:01:15 -04:00
Peter Fogg
0967cb0d9d Fix word cloud modules not exporting correctly. 2013-07-30 10:29:12 -04:00
Peter Fogg
0c9732024a Add (currently failing) test case around saving metadata. 2013-07-29 15:39:18 -04:00
David Baumgold
a1b44afda3 Only instructors may make other instructors on a course 2013-07-29 13:12:05 -04:00
David Baumgold
42331464ed Can't remove last instructor of a course 2013-07-29 13:12:05 -04:00
David Baumgold
0682157477 Test manage_users view for user that is a member of the course team 2013-07-29 13:12:04 -04:00
David Baumgold
f438552b3b Added unit tests for new course team API 2013-07-29 13:12:04 -04:00
David Baumgold
724ef2e1e5 Fixing test failures 2013-07-29 13:12:04 -04:00
David Baumgold
6a9074e185 Removed get_url_reverse function
It was causing unit tests to fail, and it's a needless bit of abstraction that
never should have existed in the first place.
2013-07-29 13:11:48 -04:00
cahrens
23894d20f8 E-mail notifications to users when course creator status changes. 2013-07-29 09:49:37 -04:00
Christina Roberts
166aea62bb Merge pull request #341 from edx/talbs/studio-authorship
Studio: Authorship Rights Request UI + Dashboard Clean-up
2013-07-26 03:59:07 -07:00
Chris Dodge
0b6932f4b8 add new test to assert that course creation will populate default tabs as expected. Also update factory to not override defaults on tabs array. Also simplfy self.tab test condition. 2013-07-23 16:15:39 -04:00
cahrens
5168a080ff Don't add users marked with is_staff to course creation table. 2013-07-22 14:45:22 -04:00
cahrens
6629d5d3a3 Merge branch 'master' into talbs/studio-authorship
Conflicts:
	cms/djangoapps/contentstore/views/user.py
	cms/static/sass/elements/_controls.scss
	cms/templates/activation_active.html
	cms/templates/activation_complete.html
	cms/templates/activation_invalid.html
2013-07-22 12:15:42 -04:00
Don Mitchell
df7b917b40 Implement next generation modulestore
A new modulestore backed by mongo that changes the data format to
facilitate easy versioning, sharing content between courses, and fast
lookup of course structure and Scope.settings data.

Conflicts:
	cms/djangoapps/contentstore/tests/test_contentstore.py
2013-07-19 13:10:14 -04:00