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
154 lines
3.4 KiB
Plaintext
154 lines
3.4 KiB
Plaintext
# DON'T JUST ADD NEW DEPENDENCIES!!!
|
|
#
|
|
# If you open a pull request that adds a new dependency, you should notify:
|
|
# * @mollydb - to check licensing
|
|
# * One of @e0d, @jarv, or @feanil - to check system requirements
|
|
|
|
beautifulsoup4==4.1.3
|
|
beautifulsoup==3.2.1
|
|
bleach==1.4
|
|
html5lib==0.999
|
|
boto==2.32.1
|
|
celery==3.0.19
|
|
cssselect==0.9.1
|
|
dealer==2.0.4
|
|
defusedxml==0.4.1
|
|
distribute>=0.6.28, <0.7
|
|
django-babel-underscore==0.1.0
|
|
django-celery==3.0.17
|
|
django-countries==2.1.2
|
|
django-extensions==1.2.5
|
|
django-filter==0.6.0
|
|
django-followit==0.0.3
|
|
django-keyedcache==1.4-6
|
|
django-kombu==0.9.4
|
|
django-mako==0.1.5pre
|
|
django-model-utils==1.4.0
|
|
django-masquerade==0.1.6
|
|
django-mptt==0.5.5
|
|
django-openid-auth==0.4
|
|
django-robots==0.9.1
|
|
django-sekizai==0.6.1
|
|
django-ses==0.4.1
|
|
django-storages==1.1.5
|
|
django-threaded-multihost==1.4-1
|
|
django-method-override==0.1.0
|
|
djangorestframework==2.3.14
|
|
django==1.4.18
|
|
feedparser==5.1.3
|
|
firebase-token-generator==1.3.2
|
|
# Master pyfs has a bug working with VPC auth. This is a fix. We should switch
|
|
# back to master when and if this fix is merged back.
|
|
# fs==0.4.0
|
|
git+https://github.com/pmitros/pyfs.git@96e1922348bfe6d99201b9512a9ed946c87b7e0b
|
|
GitPython==0.3.2.RC1
|
|
glob2==0.3
|
|
gunicorn==0.17.4
|
|
httpretty==0.8.3
|
|
lazy==1.1
|
|
lxml==3.3.6
|
|
mako==0.9.1
|
|
Markdown==2.2.1
|
|
mongoengine==0.7.10
|
|
networkx==1.7
|
|
nltk==2.0.4
|
|
nose==1.3.3
|
|
oauthlib==0.6.3
|
|
paramiko==1.9.0
|
|
path.py==3.0.1
|
|
Pillow==2.6.1
|
|
pip>=1.4
|
|
polib==1.0.3
|
|
pycrypto>=2.6
|
|
pygments==1.6
|
|
pygraphviz==1.1
|
|
pymongo==2.7.2
|
|
pyparsing==2.0.1
|
|
python-memcached==1.48
|
|
python-openid==2.2.5
|
|
python-dateutil==2.1
|
|
python-social-auth==0.1.23
|
|
pytz==2012h
|
|
pysrt==0.4.7
|
|
PyYAML==3.10
|
|
requests==2.3.0
|
|
requests-oauthlib==0.4.1
|
|
rfc6266==0.0.4
|
|
scipy==0.14.0
|
|
Shapely==1.2.16
|
|
singledispatch==3.4.0.2
|
|
sorl-thumbnail==11.12
|
|
sortedcontainers==0.9.2
|
|
South==0.7.6
|
|
stevedore==0.14.1
|
|
sure==1.2.3
|
|
sympy==0.7.1
|
|
xmltodict==0.4.1
|
|
django-ratelimit-backend==0.6
|
|
unicodecsv==0.9.4
|
|
django-require==1.0.6
|
|
|
|
# Used for shopping cart's pdf invoice/receipt generation
|
|
reportlab==3.1.44
|
|
|
|
# Used for extracting/parsing pdf text
|
|
pdfminer==20140328
|
|
|
|
# Used for development operation
|
|
watchdog==0.7.1
|
|
|
|
# Metrics gathering and monitoring
|
|
dogapi==1.2.1
|
|
newrelic==2.18.1.15
|
|
|
|
# Used for documentation gathering
|
|
sphinx==1.1.3
|
|
sphinx_rtd_theme==0.1.5
|
|
|
|
# Used for Internationalization and localization
|
|
Babel==1.3
|
|
transifex-client==0.10
|
|
|
|
# Ip network support for Embargo feature
|
|
ipaddr==2.1.11
|
|
|
|
# We've tried several times to update the debug toolbar to version 1.0.1,
|
|
# and had problems each time, resulting in us rolling back to 0.9.4. Before
|
|
# submitting another pull request to do this update, check the following:
|
|
# * https://github.com/django-debug-toolbar/django-debug-toolbar/issues/535 should be resolved
|
|
# * Studio and CMS should both run correctly, both directly and via devstack
|
|
# * Check the Javascript console to be sure there are no Javascript errors
|
|
# related to the Django debug toolbar
|
|
django_debug_toolbar==0.9.4
|
|
django-debug-toolbar-mongo
|
|
|
|
# Used for testing
|
|
chrono==1.0.2
|
|
coverage==3.7
|
|
ddt==0.8.0
|
|
django-crum==0.5
|
|
django_nose==1.3
|
|
factory_boy==2.2.1
|
|
freezegun==0.1.11
|
|
lettuce==0.2.20
|
|
mock==1.0.1
|
|
nose-exclude
|
|
nose-ignore-docstring
|
|
nosexcover==1.0.7
|
|
pep8==1.5.7
|
|
pylint==1.4.0
|
|
python-subunit==0.0.16
|
|
rednose==0.3
|
|
selenium==2.42.1
|
|
splinter==0.5.4
|
|
testtools==0.9.34
|
|
PyContracts==1.6.5
|
|
|
|
# Used for Segment.io analytics
|
|
analytics-python==0.4.4
|
|
|
|
git+https://github.com/mfogel/django-settings-context-processor.git
|
|
|
|
# edX packages
|
|
edx-submissions==0.0.8
|