{ "info": { "author": "Saurabh Kumar", "author_email": "me+github@saurabh-kumar.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Utilities" ], "description": "===============================\nDjango Unsubscribe\n===============================\n\n.. image:: https://badge.fury.io/py/django-unsubscribe.svg?fix\n :target: http://badge.fury.io/py/django-unsubscribe\n\n.. image:: https://travis-ci.org/theskumar/django-unsubscribe.svg?branch=master\n :target: https://travis-ci.org/theskumar/django-unsubscribe\n\n\nEasily send one-click un-subscribable emails from django to keep your customers happy.\n\n\nFeatures\n--------\n\n* Adds `List-Unsubscribe` header to the email.\n* Adds a context variable `unsubscribe_url` which can be used to render emails.\n* Provides signals to implement the actual unsubscribe logic.\n\nRequirements\n------------\n* Python (2.7, 3.2, 3.3, 3.4)\n* Django (1.4, 1.5, 1.6, 1.7)\n\nQuickstart\n----------\n\nInstall Django Unsubscribe:\n\n pip install django-unsubscribe\n\nAdd `unsubscribe` to your `INSTALLED_APPS` settings.\n\n from unsubscribe import UnsubscribableEmailMessage\n\n # rest of your code\n\nAdd a signal listner for `user_unsubscribe` in your code that contains the logic to unsubsribe a user from the mailing list.\n\nThat's it!\n\nOverview\n--------\n\nThis application is supposed to help at improving the overall quality of the\nmass e-mails your site sends out by:\n\n1. Creating a simple subclass of `django.core.mail.EmailMultiAlternatives`, which adds a `List-Unsubscribe` header to the email message and a `render_message` function that is a wrapper to `render_to_string` to add `unsubscribe_url` to the context.\n\n2. Providing a replaceable `urlconf` and `view`, which provides a unique url for each user wishing to unsubscribe.\n\nThis application does not:\n\n1. Compose, create or mail newsletter e-mails for you. That is up to you.\n\n2. Actually unsubscribe members from your mailing lists. It provides a signal, `unsubscribe.signals.user_unsubscribe`, which you must hook on to to unsubscribe your users.\n\nContributing\n------------\nPlease send pull request or open a issue.\n\nLicense\n-------\n\nBSD\n\n\n\n\n\nHistory\n-------\n\n0.1.1 (14/04/2014)\n++++++++++++++++++\n* add support for django 1.5,1.6 and 1.7\n* add support for python 3\n* fix missing template\n\n\n0.1.0 (22/02/2014)\n++++++++++++++++++\n\n* First release on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/theskumar/django-unsubscribe", "keywords": "email,django,unsubscribe", "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "django-unsubscribe", "package_url": "https://pypi.org/project/django-unsubscribe/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-unsubscribe/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/theskumar/django-unsubscribe" }, "release_url": "https://pypi.org/project/django-unsubscribe/0.1.2/", "requires_dist": null, "requires_python": null, "summary": "Add unsubscribe link to your emails painlessly.", "version": "0.1.2" }, "last_serial": 1251504, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "3733033eec4aacfcd225501c03b66b06", "sha256": "9b3fe3c5a901d8fc6a0914a790a3f3b02440aab3bef677947ee3d43868a43402" }, "downloads": -1, "filename": "django-unsubscribe-0.1.0.tar.gz", "has_sig": false, "md5_digest": "3733033eec4aacfcd225501c03b66b06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5023, "upload_time": "2014-02-22T11:34:42", "url": "https://files.pythonhosted.org/packages/e5/6a/23361948f8da37160661495187d42ed634548b54b9c98e114965422c5b33/django-unsubscribe-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "499a575fb86e93ecae3d2e4ef31526fb", "sha256": "c25a95d76d6f28a420f5b6d72cacc98e75793aadaaee1d0638b71471d5b95f8f" }, "downloads": -1, "filename": "django-unsubscribe-0.1.1.tar.gz", "has_sig": false, "md5_digest": "499a575fb86e93ecae3d2e4ef31526fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8003, "upload_time": "2014-04-13T20:50:10", "url": "https://files.pythonhosted.org/packages/3b/ca/43edc0d6b9ff07c043f7577e883d87cde010c50890d5a0d2d839bd643fdc/django-unsubscribe-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ab1c7645bfb1661aab2735e3e87f6996", "sha256": "293ab1fe809d0ae7dda6c6531859c0701424ace56949314ddfa769e25fa9f6c0" }, "downloads": -1, "filename": "django-unsubscribe-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ab1c7645bfb1661aab2735e3e87f6996", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8220, "upload_time": "2014-10-08T07:28:09", "url": "https://files.pythonhosted.org/packages/bb/3a/21ad41c6ff96e4bce4d8b7f52ea7a344b522289fc691273fcc61e600da19/django-unsubscribe-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ab1c7645bfb1661aab2735e3e87f6996", "sha256": "293ab1fe809d0ae7dda6c6531859c0701424ace56949314ddfa769e25fa9f6c0" }, "downloads": -1, "filename": "django-unsubscribe-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ab1c7645bfb1661aab2735e3e87f6996", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8220, "upload_time": "2014-10-08T07:28:09", "url": "https://files.pythonhosted.org/packages/bb/3a/21ad41c6ff96e4bce4d8b7f52ea7a344b522289fc691273fcc61e600da19/django-unsubscribe-0.1.2.tar.gz" } ] }