Commit Graph

308 Commits

Author SHA1 Message Date
Mat Peterson
4f6088cbd1 Fixed some isinstance errors with opaque-keys 2014-07-11 15:40:08 -04:00
Nimisha Asthagiri
eecff6e0aa ModulestoreEnum class. 2014-06-27 14:37:35 -04:00
Julia Hansbrough
6ccb11f03e Change Location, CourseLocator, etc to reference opaque-keys library 2014-05-30 20:32:38 +00:00
Sarina Canelake
0f2b4cd2b6 Merge pull request #3931 from edx/sarina/fixup-external-opaque-keys-impls
Use external OpaqueKey implementations
2014-05-29 18:23:08 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Adam Palay
5b769df452 No longer chunk queries when sending out bulk email (LMS-2718)
refactor _generate_items_for_subtask not to chunk queries

use django's iterator methor for querysets

remove bulk email query settings

use read_replica if available, since this is read-only

update changelog
2014-05-29 09:10:25 -04:00
Sarina Canelake
110719deae StaffFactories accept course_keys, not courses. Make that clear in the interface. 2014-05-24 18:49:06 -04:00
Sarina Canelake
265fa826ca Opaque-keys: fix pylint violations 2014-05-23 14:23:12 -04:00
Sarina Canelake
bf32f5a7b9 Opaque-keys: fix pep8 violations 2014-05-23 14:22:54 -04:00
Sarina Canelake
4723467345 Validate forms to allow old and new style course key serialization syntax 2014-05-21 17:44:50 -04:00
Calen Pennington
ecdb9ec461 Address review comments 2014-05-14 09:37:38 -04:00
Calen Pennington
5c345b3b00 Fix more broken tests after merge from master 2014-05-13 16:21:18 -04:00
Calen Pennington
6c546fbf1f Fix merge conflicts 2014-05-13 15:31:40 -04:00
Calen Pennington
240d91daeb Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/management/commands/tests/test_import.py
	cms/djangoapps/contentstore/tests/test_import.py
	common/lib/xmodule/xmodule/modulestore/tests/test_mongo.py
	common/lib/xmodule/xmodule/modulestore/xml_importer.py
	lms/djangoapps/bulk_email/tests/test_course_optout.py
	lms/djangoapps/bulk_email/tests/test_email.py
	lms/djangoapps/bulk_email/tests/test_err_handling.py
	lms/djangoapps/class_dashboard/tests/test_dashboard_data.py
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/django_comment_client/base/views.py
	lms/djangoapps/instructor/tests/test_email.py
	lms/djangoapps/instructor/tests/test_legacy_anon_csv.py
	lms/djangoapps/instructor/tests/test_legacy_download_csv.py
	lms/djangoapps/instructor/tests/test_legacy_email.py
	lms/djangoapps/instructor/tests/test_legacy_enrollment.py
	lms/djangoapps/instructor/tests/test_legacy_forum_admin.py
	lms/djangoapps/instructor/tests/test_legacy_gradebook.py
	lms/djangoapps/instructor/tests/test_legacy_raw_download_csv.py
	lms/djangoapps/instructor/tests/test_legacy_reset.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/templates/courseware/instructor_dashboard.html
2014-05-13 15:30:56 -04:00
Calen Pennington
94c8d86a42 Fix failing tests from merge with master 2014-05-12 11:34:39 -04:00
Sarina Canelake
b7a0de7f3b Change URL patterns for instructor dashboard
Fix acceptance and unit tests

LMS-1296
2014-05-12 10:18:28 -04:00
Calen Pennington
155ffe37ca Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/djangoapps/contentstore/views/tests/test_tabs.py
	common/lib/xmodule/xmodule/modulestore/mongo/draft.py
	lms/djangoapps/certificates/management/commands/gen_cert_report.py
	lms/djangoapps/certificates/queue.py
	lms/djangoapps/certificates/views.py
	lms/djangoapps/courseware/module_render.py
	lms/djangoapps/courseware/tests/test_module_render.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/verify_student/views.py
2014-05-09 15:29:32 -04:00
Calen Pennington
e042eb62c3 Use a validly formed bogus task id 2014-05-09 09:23:52 -04:00
Calen Pennington
eb11ba76a7 Better unicode handling in instructor tasks/bulk-email 2014-05-09 09:23:51 -04:00
Calen Pennington
cd746bf8e5 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit adds the non-courseware lms/djangoapps and lms/lib.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-08 12:09:23 -04:00
Usman Khalid
8ee682d44b Fixed and added more tests for bulk email.
LMS-2565
2014-05-05 16:58:10 +05:00
Usman Khalid
c955fd0bce When sending bulk email check if course is authorized.
Also the idash_mode property is stored seperately for each course.

LMS-2565
2014-05-02 20:09:25 +05:00
Usman Khalid
8fd14bfca7 Wraps long lines in bulk email messages.
RFC 2822 states that line lengths in emails must be less than 998.
Some MTA's add newlines to messages if any line exceeds a certain
limit (the exact limit varies). Sendmail goes so far as to add
'!\n' after the 990th character in a line. To ensure that bulk
mail messages look consistent long lines are wrapped to a
conservative length.

LMS-1466
2014-04-25 18:25:20 +05:00
Don Mitchell
81a92e4bfc Consolidate course_id triple parsing 2014-02-24 11:45:59 -05:00
cahrens
09d90b16af Clean up of modulestore references (primarly LMS).
STUD-1151
2014-02-11 14:29:22 -05:00
Feanil Patel
5e5c59cab2 Merge remote-tracking branch 'origin/release'
Conflicts:
	common/lib/xmodule/xmodule/modulestore/xml.py

Took the changes that were on the release branch.
2014-02-03 16:39:40 -05:00
Jay Zoldak
5ab0c9adb5 Mark strings that were causing test failures as unicode 2014-02-03 12:52:45 -05:00
Jay Zoldak
9c4a9d8f64 Make code safe for unicode course ids 2014-01-31 16:35:56 -05:00
Jay Zoldak
bc30addfb9 Unicode changes to support QRF
fixing unit tests

fixing merge error

fixing xqueue submission issue with unicode url (trial 0.1)

fixing fotmats as commented upon

removing yaml file language selection

Unicode changes to support QRF

removed unnecessary pass in modulestore/init.py

fixing merge error

fixing fotmats as commented upon

removing yaml file language selection

fixing pep8 violations

- fixing pylint violations

pylint violation

fixing line spaces and formats

ignore pylint E1101

remove empty line

fixing pylint violations

 pep8 violations

bulk mail unicode/decode

fix migration error

fix pep8 just to push again

more unicode/decode
Final changes to comments and error messages.
2014-01-30 16:20:36 -05:00
Sarina Canelake
640b100200 Force unique course_id for bulk email authorization
LMS-2134
2014-01-30 13:59:13 -05:00
Usman Khalid
ee24e1062a Use unicode course titles for bulk email tests 2014-01-30 18:38:28 +05:00
Adam Palay
afccb17a3b support unicode course names for bulk email (LMS-2118) 2014-01-30 18:29:58 +05:00
Don Mitchell
3ebac80778 Replace authz fns with roles.py ones
STUD-1006
2014-01-14 17:04:44 -05:00
Don Mitchell
858e354a6d Moved roles.py to common student 2014-01-14 17:04:43 -05:00
David Baumgold
f3f4af8087 settings.MITX_FEATURES => settings.FEATURES 2013-12-03 15:34:55 -05:00
Calen Pennington
061a46beef Formalize various access roles as objects
This centralizes the logic for group membership, and means that we
don't need to make queries to find out whether the legacy groups names exist.
2013-11-13 13:42:37 -05:00
brianhw
93dddf8dc3 Merge pull request #1585 from edx/brian/retry-email-after-dbtimeout
Add retries when encountering DatabaseError when updating InstructorTask.
2013-11-05 08:18:58 -08:00
Brian Wilson
7bef11a7f1 Add retries when encountering DatabaseError when updating InstructorTask. 2013-11-05 11:18:08 -05:00
Sarina Canelake
198452cd1c Adds Staff and Instructor factories 2013-11-04 11:38:43 -05:00
Brian Wilson
5b48ed840b Refactor subtask creation logic to be less email-specific. 2013-10-28 12:58:11 -04:00
Brian Wilson
0f8f82c845 Define and use SubtaskStatus class. 2013-10-28 12:57:41 -04:00
Brian Wilson
ed4b954a53 Remove the use of celery.group from bulk email subtasks. 2013-10-28 12:47:11 -04:00
Sarina Canelake
90baa0c9af Change footer color in bulk email template 2013-10-23 11:37:51 -04:00
Brian Wilson
16b85c0c2a Check for requeued subtasks when in RETRY state. 2013-10-22 18:17:00 -04:00
Brian Wilson
ecb58e863f Add cache-based locking to subtasks to ensure that the same task is not running in two workers at the same time. 2013-10-22 14:32:52 -04:00
Brian Wilson
ba6477abef Handle all exceptions returned by django-ses. 2013-10-18 15:12:07 -04:00
Brian Wilson
aa172272f3 Update master with hotfixes from release-2013-10-17. 2013-10-18 11:50:42 -04:00
Brian Wilson
a699674015 Check that a subtask has not already completed before running. 2013-10-17 13:32:44 -04:00
Sarina Canelake
86c4a03eba admin-console support for enabling email per course 2013-10-16 13:02:41 -04:00
Brian Wilson
b8239068cb Check that email subtasks are known to the InstructorTask before executing. 2013-10-16 13:02:41 -04:00