Commit Graph

97 Commits

Author SHA1 Message Date
Calen Pennington
2bb1aafaaf Merge pull request #6752 from cpennington/modulestore-test-case-cleanup
Clean up ModuleStoreTestCase
2015-02-04 15:57:01 -05:00
Sarina Canelake
6cdaad58de Merge pull request #6730 from OmarIthawi/edraak/unicode-fixes-log-username
(WIP) Unicode fixes for log messages with username and other unicode input
2015-02-04 11:31:57 -05:00
Calen Pennington
74af3ffa05 Remove unused import 2015-02-04 09:09:15 -05:00
Calen Pennington
b353ed2ea2 Better support specifying of modulestore configuration in test cases
The existing pattern of using `override_settings(MODULESTORE=...)` prevented
us from having more than one layer of subclassing in modulestore tests.

In a structure like:

    @override_settings(MODULESTORE=store_a)
    class BaseTestCase(ModuleStoreTestCase):
        def setUp(self):
            # use store

    @override_settings(MODULESTORE=store_b)
    class ChildTestCase(BaseTestCase):
        def setUp(self):
            # use store

In this case, the store actions performed in `BaseTestCase` on behalf of
`ChildTestCase` would still use `store_a`, even though the `ChildTestCase`
had specified to use `store_b`. This is because the `override_settings`
decorator would be the innermost wrapper around the `BaseTestCase.setUp` method,
no matter what `ChildTestCase` does.

To remedy this, we move the call to `override_settings` into the
`ModuleStoreTestCase.setUp` method, and use a cleanup to remove the override.
Subclasses can just defined the `MODULESTORE` class attribute to specify which
modulestore to use _for the entire `setUp` chain_.

[PLAT-419]
2015-02-04 09:09:14 -05:00
Calen Pennington
03a05fd9d4 Always call super(..).setUp() from setUp 2015-02-04 09:09:14 -05:00
Sarina Canelake
01064fcc79 Fix logging calls to use unicode, and lazy logging 2015-02-04 10:53:33 +02:00
Awais Qureshi
22af2b75af ECOM-890: Update invoice data model.
ECOM-891: Allow tracking of invoice transactions.

Authors: Awais Qureshi and Aamir Khan
2015-02-03 13:27:40 -05:00
Chris Dodge
74f6380e9e Change coupon CSV download to only include counts for coupons redeemed all the way through purchase
updated the failed unit test case and removed the unnessary import
2015-01-23 00:21:58 +05:00
Awais
b12d007138 ECOM-924 Adding redeem code url in attached email file 2015-01-20 19:20:51 +05:00
Afzal Wali
a8ebf6da7f Added the reportlab requirement to base.txt
Added receipts_pdf.py

Used Paragraph for displaying a large body of text.

added the table

Line breaks in the para text. font size adjusted.

Improved the main table (alignments) and totals (converted to a table as well)

Converted the footer into a table, and allowed for pagination.

Added pagination to item data table.

Handled wrapping of long descriptions into multiple lines.

email attachment for both invoice and receipt

added the currency from the settings

Removed magic numeric literals and added meaningful variables.

Added initial set of substitutions from configuration

add defining logo paths via configuration

Removed font dependencies. Will use the system default fonts which appear good enough to me.

Alignment adjustments as per suggestions.

Fixed the pep8 violations. Added comments to styling

added the decimal points to the price values

Cleanup. Docstrings.

i18n the text in the pdf file

fix pep8/pylint issues

Changed the amounts from string to float.

Overrode the 'pdf_receipt_display_name' property in the OrderItem subclass Donation.

used the PaidCourseRegistration instead of the parent OrderItem to avoid course_id related exceptions.

quality fixes

added  the test cases for the pdf

made the changes in the pdf suggested by griff

updated the pdf tests to assert the pdf content

used the pdfminor library

fix quality issues

made the changes suggested by Will

added the text file that says "pdf file not available. please contact support"
 in case pdf fails to attach in the email
2015-01-15 12:24:30 +05:00
stephensanchez
b188430679 Enable redeem codes.
Update the redeem code schema

Updating the redeem code schema.

Adding migration file.

Adding course mode support when redeeming a code.

Conflicts:
	lms/djangoapps/shoppingcart/views.py

Add sales admin privileges for redeem code generation.

Making sure redeem code URLs work for verified courses.

pep8 violations

Code Review and Test Cleanup changes

Added tests, fixed tests.

Updating the boolean checks in ecommerce template
2015-01-13 15:21:24 +00:00
Muhammad Shoaib
10f8d8c097 WL-135 added the migration for the expiration_date field in the coupons model
added the functionality of adding the expiration date, and also handled in the shopping cart when the user try to add the expired coupon code in the shopping cart

added expiration date in the coupons list in the ecommerce page

added the unit tests and jasmine tests

fix the quality issues and rebased with master

regenerated the migration file with a different number

i18n and verified te course mode

changes suggested by  stephan
2015-01-09 19:14:48 +08:00
Christine Lytwynec
3127ac2b6c mock html_to_text for tests 2015-01-05 16:19:36 -05:00
Muhammad Shoaib
5a437b396e WL-168 When redeeming a Registration Code in the shopping cart, the user should be redirect to the Registration Code Redemption page
improvements suggested by william
2014-12-31 17:45:31 +05:00
Chris Dodge
6198b90051 only display the count for coupon redemptions that actually went through to purchase completion 2014-12-22 10:38:34 -05:00
Adam Palay
c1dd64c07a fix enrollment issue in instructor dash (ECOM-776) 2014-12-12 12:14:17 -05:00
Daniel Friedman
3d91f43030 Support cohorting students via a CSV File.
TNL-735
2014-12-10 09:23:04 -05:00
Muhammad Shoaib
cd30164b5f Improvements and bug fixes for shopping cart: WL-117, WL-114, WL-116, WL-115, WK-122 2014-12-04 01:11:49 -05:00
Jesse Zoldak
bf3b87bc64 Clean up all modulestore testcases
Move modulestore config for tests to an importable location
Disable pylnt warning for lms imports in common tests
Refactor all testcases that loaded all xml courses
TE-610
TE-489
2014-12-02 07:09:36 -05:00
Sarina Canelake
c0556a7ef8 s/pylint: disable=W0613/pylint: disable=unused-argument/ 2014-12-01 11:22:11 -05:00
Sarina Canelake
1e0f3ddb7d s/pylint: disable=E1111,E1124/pylint: disable=assignment-from-no-return,redundant-keyword-arg/ 2014-12-01 11:22:09 -05:00
Sarina Canelake
b127d2844b s/pylint: disable=C0103/pylint: disable=invalid-name/ 2014-12-01 11:22:09 -05:00
Muhammad Shoaib
df0bb491fa WL-99 send a copy of the invoice to the finance@edx.org when registration codes are generated
changed the finance_email in the common.py file

added the test for the FiNANCE_EMAIL settings
2014-11-21 17:43:37 +05:00
David Ormsbee
43d8c7a712 Merge branch 'release'
Conflicts:
	lms/djangoapps/shoppingcart/processors/CyberSource2.py
2014-11-13 10:11:12 -05:00
Adam Palay
1d85659b13 Prevent instructors from accidentally downgrading enrollment modes through instructor dash TNL-804 2014-11-10 18:04:22 -05:00
Chris Dodge
58b4982d2d harden down access to the shoppingcart if the ENABLE_PAID_COURSE_REGISTRATION flag is not set (either via the main Django configuration settings) or through microsite overrides 2014-11-10 15:09:48 -05:00
muhammad-ammar
fcaa783e43 Unit Test Improvements
TE-489
2014-10-31 11:55:13 +00:00
John Eskew
831dd593c9 Add tests for empty analytics server info and url-encoded params. 2014-10-28 11:28:57 -04:00
asadiqbal08
1035d67a25 WL-98
fix typo and add more security on API

fix some bugs and typos

address PR feedback

be sure to send emails when accounts already exist

PR feedback

fix multiple uploads

pep8 fixes

pep8 fix

pylint fixes

fix url mapping

WL-98
- Complete code coverage
- Update code for error and warning messages.
- improve code as per some suggestions

updated the UI of the auto_enroll feature

fixed the errors

PR feedback

add test

add back file filtering

add some more error handling of input

remove unneeded coffeescript code

pylint fixes

add pep8 space

WL-98
- Updated and added test cases.
- Updated membership coffee file for errors display handling.
- fixed minor text issues.

allow for blank lines and add a test

add blank line (pep8)
2014-10-21 14:23:46 -04:00
asadiqbal08
4f7c494922 EX-71 New shopping Cart UI Single person purchase
Ex-74 Registration Code redemption

fix the translation issues

added a check if a user is already registered in a course. Changed the messages

added course depth=0 and removed pep8 violations

Ex-72-added additional billing information

Added a new CSV file in the instructor dashboard sales tab to download all the order sales separated from the invoice sales

fix path to image

updated the failed unit tests and add some minor tweaks in the Shoppingcart.scss

Ex-78 New UI In receipt page

EX-73 Purchasers can buy a course on behalf of a different student

WL-78 updated the receipt page UI.

Wl-72 updated Billing Information UI and removed the Order Address fields

WL-71 Remove Purchase Type Buttons from UI

WL-71 Updated minor UI issues and updated test cases

WL-78 updated the enrollment links in the receipt page

made changes in Order generated sales csv in Instructor Dashboard.
 The total_registration_codes and total_used_codes
  were not correctly stored in the csv file.

1) The total_registration_codes were not filtered with
 course_id.
2) The total_used_codes that a user had redeemed
 were not correctly included in the CSV.

added a fix in the courseware view to let the users visit the courseware if they have enrolled in the course by clicking on the enrollment link

rebase and resolved conflicts with master

WL-97 Bulk Registration Email Confirmation
Below is the commit summary.
- Make email text bold as per requirement.
- Improve email template quality and reorder points.
- Add text in billing details page : "if no additional billing details are populated the payment confirmation will be sent to the user making the purchase"
- Update text on receipt page "You have successfully purchase 3 course registration codes"

WL-100 fixed the bug on the edit/add coupon and set course price.
Ajax requests were duplicating in each callback. fixed this issue by creating the manual ajax request rather than the Lean Modal Ajax requests

allow for better White Label branding in shopping cart purchase emails

fix up typos and text

fix goof

fix

fix

incorporated model changes as suggested by Jason.

updated order sales csv

updated test cases for CourseRegCodeItem model and csv for the order generated sales

updated the migrations history

fixed the lms acceptance tests

Be sure to check for multiple types

address PR feedback

PR feedback

PR feedback

pep8 fix
2014-10-19 21:50:29 -04:00
Daniel Friedman
ba3f7f9409 Make student profile CSV download a background task, add cohort column 2014-10-02 14:21:13 -04:00
Don Mitchell
dc9654283e Fix unit tests for generated
course ids.
2014-09-29 11:25:56 -04:00
Don Mitchell
4ca5012f3c Use split to test views 2014-09-29 11:25:55 -04:00
Waqas Khalid
d0d225d8a9 Course admin should be able to de-admin dicussion admins
As a global staff or course staff once you added yourself
in the discussion admins you cannot revoke it back unless
you remove yourself as course staff. Any of the course staff
member should be able to remove others from discussion admins
whether they are course staff or not.

TNL-315
2014-09-24 22:26:31 +05:00
Muhammad Shoaib
2cc0433833 Implement mediated bulk purchase epic
Updating EX-60 logic
2014-09-02 13:03:24 -04:00
Waheed Ahmed
57bc5c9314 Modified request method for change enrollment and bulk beta modify access on instructor dashboard.
LMS-11266
2014-08-27 13:20:04 +05:00
Braden MacDonald
9c93cd8dd6 Fix: Display error when attempting to reset nonexistent due date extension 2014-08-19 23:29:36 -07:00
Braden MacDonald
42eaa4b005 Unit tests for bugs in IDDE API, including LMS-6563 2014-08-19 23:23:06 -07:00
njdup
55521590d1 Email content history fix and additions
This addresses a bug in the email content history table where
"Unknown" was displayed in the number of emails sent column if any sort of
failure occurred during email sending. This behavior has been editted so now
the number of emails that failed to send is displayed, along with the number
of emails that were successfully sent. If the email task is still pending,
"0 sent" is displayed.

As a small addition, the table now also includes the authors of previously
sent emails, and the modal window for an email also displays its author.
2014-08-14 15:12:31 -07:00
asadiqbal08
dc46170f36 registration code checkout flow
Redirecting to dashboard after free user enrollment.
2014-08-05 10:00:12 -04:00
Muhammad Shoaib
4333e53997 added registration-codes generation functionality
rebased and resolve conficts with cdoge/registration_codes

feature enhancement request: added transaction group name text field to the download buttons as an extra optional query paramerter
2014-08-05 10:00:11 -04:00
asadiqbal08
5a9fc036a6 Course Instructor as financeadmin role, will be able to download all purchase transactions in the course as a CSV file 2014-08-05 10:00:10 -04:00
njdup
c5cf6db93d Cleaned pylint quality issues in instructor email content history code. 2014-08-04 16:01:11 -07:00
njdup
5791fd1087 Instructors can view previously sent email content
Previously on the send email page of the instructor dashboard, instructors could only view
task information about emails they've sent for their course in the past.
In addition to this, I've now added the ability to see the content of all previously sent emails.

A "Sent Email History" button has been added to the page. When clicked, a table displaying the
subject line, number of emails sent, and date/time of submission for each previously sent email
is created. An instructor can then click on any subject line to see the content of that email,
displayed in a modal window that appears on the page.

The window is also equipped with a "copy email to editor" button, which copies the emails contents
to the tinyMCE editor, so that an instructor can easily resend an email that they've sent
in the past.
2014-08-04 10:08:32 -07:00
David Baumgold
0c9d682df3 Merge pull request #3196 from mtyaka/enrollment-emails-http
Don't hardcode https protocol in enrollment emails.
2014-05-30 09:30:43 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Matjaz Gregoric
b755863639 Don't hardcode https protocol in enrollment emails.
Use http or https, depending on the value of `request.is_secure()`.
That is how links in most other emails are handled.
2014-05-28 22:44:42 +02:00
Usman Khalid
3824e234fe Do not persist anonymous ids when exporting for all students of a course.
For large courses this causes export to take a long time and to time out.

LMS-2747
2014-05-28 20:48:43 +05: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