Commit Graph

953 Commits

Author SHA1 Message Date
Sarina Canelake
e6bde93837 Change bulk email model field names and add migrations 2013-08-29 12:40:33 -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
David Ormsbee
b2141ee7c0 Add verified cert marketing link 2013-08-28 17:48:28 -04:00
Diana Huang
4fbf23b66a Merge pull request #810 from edx/diana/email-receipt
Email Receipts and Billing Information
2013-08-27 14:48:06 -07:00
Diana Huang
d7225f026a Only store certain bits of information behind a flag. 2013-08-27 15:19:58 -04:00
Will Daly
fe72730969 Integrate js-test-tool into testing infrastructure 2013-08-26 20:21:18 -04:00
Will Daly
c680dfdd40 Merge pull request #768 from edx/will/use-mixed-modulestore-in-tests
Will/use mixed modulestore in tests
2013-08-23 08:38:09 -07:00
David Ormsbee
52d33c0dee Merge branch 'master' into ormsbee/verifyuser_func 2013-08-22 17:33:20 -04:00
Jason Bau
1202b77d7d shopping cart view tests. coverage full except for debug line 2013-08-22 15:39:57 -04:00
Jason Bau
5fbb12cb61 make PaidCourseRegistration mode aware 2013-08-22 15:39:55 -04:00
Diana Huang
6f3e83b86c Major cleanup work on ShoppingCart models
* Make currency a property of the Order (for validation purposes)
* Remove null=True from Char fields
* Use InheritanceManager for subclassing OrderItem
* Change VerifiedCertificate to better handle some new use cases
* Cleaned out old migrations
* Tests!
2013-08-22 15:39:55 -04:00
Diana Huang
5a90a6590f Put shopping cart views behind flags 2013-08-22 15:39:55 -04:00
Diana Huang
23a15aed57 Pull CyberSource values from environment variables
when in a dev environment.
2013-08-22 15:39:55 -04:00
Jason Bau
e4e22f0f85 Lots more verification of CyberSource reply + receipt generation 2013-08-22 15:39:55 -04:00
Jason Bau
41b9f9f071 factor out cybersource processor from cart 2013-08-22 15:39:55 -04:00
Jason Bau
3f9c52cd1c Move shopping cart from session into model/db 2013-08-22 15:39:54 -04:00
Jason Bau
ea7cf3a24e add parameterization of cybersource creds 2013-08-22 15:39:54 -04:00
David Ormsbee
2b052c6fd3 fix typo in config file 2013-08-22 14:58:51 -04:00
David Ormsbee
91fab4579b Merge branch 'diana/verified-certs-payment' into ormsbee/verifyuser_func
Conflicts:
	common/djangoapps/course_modes/models.py
	lms/envs/common.py
	lms/envs/dev.py
2013-08-22 14:57:34 -04:00
David Ormsbee
0dd5819683 basic flow from enroll mode selection to verify screen 2013-08-22 13:56:23 -04:00
JonahStanley
5c483d32e6 Removed space 2013-08-22 12:53:58 -04:00
JonahStanley
d96595318a Stylistic changes
CMS tests should now run on IE

CMS tests will now run on Safari

Rebased wrong

Forgot to update the test_acceptance.sh

Changed way of string splitting
2013-08-22 10:08:35 -04:00
Jason Bau
5b25940cde shopping cart view tests. coverage full except for debug line 2013-08-21 18:56:03 -07:00
Will Daly
151782acf0 LMS acceptance tests use mixed modulestore 2013-08-21 16:23:48 -04:00
David Ormsbee
086f55643e Bare bones outline of ID verification templates 2013-08-21 16:21:52 -04:00
David Ormsbee
0db7884354 Basic first commit of Photo ID Verification model and test code 2013-08-21 16:21:52 -04:00
JonahStanley
b2480b5f00 Changed way feature flags are interpreted
Configurations must be defined before hand

Reduced pylint violations

We only support 4 browsers
2013-08-21 16:05:53 -04:00
JonahStanley
21f75ff250 Various stylistic and pylint fixes / changes
Version numbers have very different ranges for different browsers so not having a dictionary of those.

Fixed a whitespace issue

Fixed pylint/pep8 violations

Don't need django_url

Spacing issues

Changed how commenting works

Forgot one

Used wrong name

Changed around importing

Remove django_url

Fixed function orderingn

Made logic nicer for getting a new browser

Modifying tests to run in opera

Needed to increase time to account for slow sauce loading

Now safari LMS works

Forgot an assert statement

Skipping a few tests for opera
2013-08-21 16:05:52 -04:00
JonahStanley
bb7cbf4d62 If sauce is not enabled, allow full range of ports
Forgot an import
2013-08-21 16:05:03 -04:00
JonahStanley
4c3dcda7e8 Hack to get around many types of string encodings
Changed the port listing

Changing to better readability
2013-08-21 16:05:03 -04:00
JonahStanley
22b3f2b161 Factored out Sauce related things to one file
LMS was arbitrarily chosen for now.

Fixed up pylint and pep8 errors

Fixed up pylint and pep8 errors

Changed naming to be better

Changed Sauce Info to obtaining a JSON string
2013-08-21 16:05:03 -04:00
JonahStanley
35e5f4cab5 Moved global things in browser.py to functions 2013-08-21 16:05:02 -04:00
JonahStanley
0b6e62984e Using requests instead of a HTTPConnect 2013-08-21 16:05:02 -04:00
JonahStanley
58bb6e1ea3 Changed tags to be lowercase to prevent preprocessing
Changed to have a default for device since it isn't always needed

Tags are more clear

Fixed stylistic issues
2013-08-21 16:05:02 -04:00
JonahStanley
027cbfd09a Added logic to test_acceptance.sh so that the proper tests will be skipped for each browser
This logic also covers if a lettuce_browser is specified

Removing browser matrix from readme
2013-08-21 16:05:02 -04:00
JonahStanley
d422cb9206 Fixed desired_capabilities issues
Also, now lettuce browser can be specified by jenkins
2013-08-21 16:05:02 -04:00
JonahStanley
ee23b9d161 Changed method of obtaining feature flags to environment variables
Conflicts:
	common/djangoapps/terrain/browser.py
2013-08-21 16:05:02 -04:00
JonahStanley
9fb0529036 Sauce can only connect on certain ports 2013-08-21 16:05:02 -04:00
JonahStanley
2812b9cd5c Fixed how config was obtained
Added comment about the feature
2013-08-21 16:05:01 -04:00
JonahStanley
682d85c2f3 Changed feature to being one dictionary
Conflicts:
	common/djangoapps/terrain/browser.py
2013-08-21 16:05:01 -04:00
JonahStanley
3746c654d8 Added a tag for things that will not work on Firefox
Added tags for tests that will not work on Sauce

Changed build name

Tightened up logic

Conflicts:
	common/djangoapps/terrain/browser.py

Added flag for session name
2013-08-21 16:05:01 -04:00
JonahStanley
97df5aa997 Added feature flag for device type. Needed for android tablets 2013-08-21 16:05:01 -04:00
JonahStanley
1d7284b7cd Refactored out more for feature flags
Refactored more for feature flags
2013-08-21 16:05:01 -04:00
JonahStanley
f4c19919cd Beginnings of a feature flag
Conflicts:
	common/djangoapps/terrain/browser.py

Changed way feature flag was checked

Conflicts:
	common/djangoapps/terrain/browser.py
2013-08-21 16:05:00 -04:00
Jason Bau
65f2814d73 make PaidCourseRegistration mode aware 2013-08-21 13:14:22 -04:00
Diana Huang
c5f353ec05 Major cleanup work on ShoppingCart models
* Make currency a property of the Order (for validation purposes)
* Remove null=True from Char fields
* Use InheritanceManager for subclassing OrderItem
* Change VerifiedCertificate to better handle some new use cases
* Cleaned out old migrations
* Tests!
2013-08-21 13:14:21 -04:00
Diana Huang
88f54fff20 Put shopping cart views behind flags 2013-08-21 13:14:21 -04:00
Diana Huang
cff5491f8c Pull CyberSource values from environment variables
when in a dev environment.
2013-08-21 13:14:21 -04:00
Jason Bau
0b8f41443f Lots more verification of CyberSource reply + receipt generation 2013-08-21 13:14:21 -04:00