Commit Graph

123 Commits

Author SHA1 Message Date
Calen Pennington
230bf0c643 Switch get_html replacement out for using wrap_child 2013-10-03 14:28:19 -04:00
Adam Palay
c9ce25bcb2 small unicode fix in instr dash 2013-10-02 16:24:13 -04:00
Sarina Canelake
91d85f5c2a Enable alerts when a task succeeds.
Note: Alerts are pop-up boxes. Not sure if this is desireable, but I couldn't figure out
how to make a success message show up in the same place that error messages do.
2013-09-27 12:17:53 -04:00
Sarina Canelake
086f544a1a Fix, and add more, tests 2013-09-27 12:17:45 -04:00
Sarina Canelake
07e76b3b2f Enable use of student usernames on student admin page
This is in addition to email addresses, which also work.
2013-09-27 12:17:35 -04:00
Sarina Canelake
8a2bd25b7c Visual rearrangement of new dash "Student Admin" page 2013-09-27 12:17:24 -04:00
Nick Parlante
d225b85d1a Port get-anonymized-id feature to new instructor dashboard 2013-09-25 13:52:05 -07:00
Nick Parlante
1b5903935e Add "Download CSV of all student anonymized IDs" button to instructor dashboard
This is a recurrent ops problem, so we wanted to make it available
on the instructor dashboard.
2013-09-24 12:59:42 -07:00
Adam
75b7514c4f Merge pull request #965 from felipemontoya/features/fmo/lms-i18n-strings
Features/fmo/lms i18n strings
2013-09-19 12:05:35 -07:00
Felipe Montoya
893d22515d Something for the user dashboard 2013-09-19 10:52:29 -05:00
Ned Batchelder
bbf508ca7b fix-setattr-and-getattr 2013-09-13 14:44:49 -04:00
Adam Palay
8bbc11cb2b rename stripping function, make it more explicit 2013-09-12 10:10:19 -04:00
Adam Palay
bc424173ad move _clean_fields to tools.py 2013-09-12 10:10:18 -04:00
Adam Palay
640d00c5be strip processed fields in instructor dash 2013-09-12 10:10:18 -04:00
Adam Palay
bc70b1d9da change formatting for email messages to use full_name instead of first_ and last_name
fix templates
2013-09-12 09:32:34 -04:00
David Baumgold
45f38ddf81 Update requests library to 1.2.3 2013-09-10 09:59:21 -04:00
Vik Paruchuri
499d272adc Merge pull request #825 from edx/fix/vik/staff-information
Staff information about duplicate ORA submissions
2013-09-06 14:14:31 -07:00
Calen Pennington
8201b1412e Use XBlock 0.3 2013-09-06 09:45:59 -04:00
Vik Paruchuri
a6068201e1 Add in a staff warning message about duplicates 2013-09-05 12:29:21 -04:00
Sarina Canelake
577aeed35a Don't fetch the editor for XML courses 2013-09-04 11:31:52 -04:00
Jason Bau
b0f9fd0df5 Add link in lms legacy instructor dashboard to cms course_index
A one-click way of getting to editing the course
2013-08-31 01:07:34 -07:00
Jason Bau
c160a189ad Bulk email - final tweaks and cleanup 2013-08-29 12:40:34 -04:00
Brian Wilson
8f93051d30 Add editable templates for bulk email
Adds the edX Marketing-approved template as html default.
2013-08-29 12:40:34 -04:00
Jason Bau
d341d6d26d Change optout to use user.id instead of email.
Includes Data + Schema migrations for optout email -> user.id change.
Note that migrations should be reversible.
2013-08-29 12:40:33 -04:00
Sarina Canelake
52d9320e62 Hide "Email Settings" from student dash if bulk email not enabled
Some minor pep8 cleanup
2013-08-29 12:40:33 -04:00
Sarina Canelake
e6bde93837 Change bulk email model field names and add migrations 2013-08-29 12:40:33 -04:00
Sarina Canelake
b3bc4023b0 Refactor html->plaintext conversion (for bulk email) into separate library 2013-08-29 12:40:33 -04:00
Sarina Canelake
f98d6764b2 Disable bulk email for XML-backed courses 2013-08-29 12:40:32 -04:00
Sarina Canelake
65f7b098dd Bulk Email: Add design styling
Switch to using decorators; refactor and cleanup tests.
2013-08-29 12:40:32 -04:00
Kevin Luo
3b32d4216c Add delay to course bulk email task and use SITE_NAME for site url
Delay for possible race condition with fetching course email object.
 Use settings.SITE_NAME for host name to generate email footer url.
2013-08-29 12:40:32 -04:00
Kevin Luo
3ea2b24b98 Add HTML editor for authoring bulk email message (adopted from CMS) 2013-08-29 12:40:32 -04:00
Kevin Luo
907bf6e1b7 Add bulk email feature for instructors, with optout option
Adds a new Email link to the instructor dashboard for frontend interface to send
email to course members. Adds a feature flag ENABLE_INSTRUCTOR_EMAIL to toggle this.
Creates a new djangoapp bulk_email that handles this action by getting the recipient
list and batching the emails to different celery tasks to do the actual sending.
Requires lynx package to convert HTML email to plaintext. Handles SMTP errors by
retrying or falling through to the next email. Adds the option to opt out of course
specific emails in the user dashboard with an Email Settings link for each course.
Uses severable configurable settings with defaults. DEFAULT_BULK_FROM_EMAIL
specifies the from address for email. EMAILS_PER_TASK specifies the number of emails
each celery task takes on. EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER,
EMAIL_HOST_PASSWORD, and EMAIL_USE_TLS for the SMTP email backend settings.

Co-authored-by: Akshay Jagadeesh <akjags@gmail.com>
2013-08-29 12:40:31 -04:00
Adam Palay
2e47d61cef fixes delete state on dashboard 2013-08-19 10:22:42 -04: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
Adam Palay
431eb8f4e7 remove 'preview' from urls in enrollment emails sent while previewing a course 2013-08-12 14:28:15 -04:00
Miles Steele
b1074ff1ac add i18n 2013-08-12 11:25:26 -04:00
Miles Steele
4afde4dd79 add proxied analytics graphs, refactor analytics 2013-08-08 13:16:48 -04:00
Miles Steele
fb8c84a516 add analytics proxy endpoint 2013-08-08 13:16:47 -04:00
David Baumgold
714d3b9662 pylint fixes 2013-08-06 14:36:13 -04:00
David Baumgold
7b01147c1a Translate messages early 2013-08-05 13:51:47 -04:00
David Baumgold
8807d9fe51 Integrate JsonResponse into lms/djangoapps/instructor/views/api.py 2013-08-05 13:00:30 -04:00
Miles Steele
4b671d1195 fix pylint violations 2013-08-02 09:53:21 -04:00
Miles Steele
2760938e15 fix analytics distribution with no data, add unit test, cleanup 2013-08-02 09:53:21 -04:00
Miles Steele
f7989cb2ab move to instructor template directory 2013-08-02 09:53:21 -04:00
Miles Steele
02b7757d1b add catch for tasks AlreadyRunning 2013-08-02 09:53:21 -04:00
Miles Steele
8e923deca0 fix unicode comparisons, fix 404 access exception, fix initial link handling, fix forum access modification permissions 2013-08-02 09:53:20 -04:00
Miles Steele
b44e8fe8b8 add regrade & rescore & task api tests, clean api 2013-08-02 09:53:20 -04:00
Miles Steele
7905e7d289 add csv & enrollment & access api tests, disallow instructors from un-instructoring themselves, rename mode to action for access 2013-08-02 09:53:20 -04:00
Miles Steele
0f09abe233 factor out urls to instructor.views.api_urls 2013-08-02 09:53:20 -04:00
Miles Steele
7392a888ce cleanup, fix permissions, rename functions, add more api tests 2013-08-02 09:53:20 -04:00