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
Note that the features in this release are opt-in, and course and video
behavior will remain the same unless a course explicitly opts in.
Major pieces of functionality with this commit:
Allows the listing of a user's enrollments, course videos, and updates. In
order to make a course available for mobile use, course staff must explicitly
set the Course Advanced Setting "Mobile Course Available" to true. Course staff
will always see their own courses through the Mobile API regardless of this
setting, but students will only be allowed to see a course through the Mobile
API if this setting is set to "true". By default, a Course will *not* be
available for mobile use.
This is a Django app for video resource management. It is completely optional,
and is intended to allow video and operations teams to create new encodings of
videos (e.g. low res for mobile) and change CDNs without having to edit course
data directly. Course teams can now use a "EdX Video ID" setting for Videos,
which will leverage VAL. Video units that do not fill in an "EdX Video ID" will
behave exactly as they always have.
* The Mobile API is enabled with the ENABLE_MOBILE_REST_API feature flag.
* VAL is enabled with the ENABLE_VIDEO_ABSTRACTION_LAYER_API feature flag.
* VAL and the Mobile API both require ENABLE_OAUTH2_PROVIDER).
* The Mobile API is a read-only API, but VAL requires database migrations.
* Applications that make use of either the Mobile API or VAL must be registered
with the OAuth2 provider app in Django Admin.