{ "info": { "author": "Mike Fogel", "author_email": "mike@fogel.ca", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "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.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Utilities" ], "description": "django-simple-email-confirmation\n================================\n\n.. image:: https://img.shields.io/travis/mfogel/django-simple-email-confirmation/develop.svg\n :target: https://travis-ci.org/mfogel/django-simple-email-confirmation/\n\n.. image:: https://img.shields.io/coveralls/mfogel/django-simple-email-confirmation/develop.svg\n :target: https://coveralls.io/r/mfogel/django-simple-email-confirmation/\n\n.. image:: https://img.shields.io/pypi/dm/django-simple-email-confirmation.svg\n :target: https://pypi.python.org/pypi/django-simple-email-confirmation/\n\nA Django app providing simple email confirmation.\n\nThis app can be used to support three different ways of organizing your Users their email address(es). Each email address can be in a confirmed/unconfirmed state.\n\n- Users have one email address that is stored on the `User`\n- Users have one primary email address stored on the `User` model, and have N secondary emails stored in `EmailAddress` objects\n- Users have N email addresses stored in `EmailAddress` objects.\n\n\nExamples\n--------\n\nCreate a new User, confirm their email:\n\n.. code:: python\n\n from django.core.mail import send_mail\n # ...\n\n email = 'original@here.com'\n user = User.objects.create_user(email, email=email)\n user.is_confirmed # False\n\n send_mail(email, 'Use %s to confirm your email' % user.confirmation_key)\n # User gets email, passes the confirmation_key back to your server\n\n user.confirm_email(user.confirmation_key)\n user.is_confirmed # True\n\nAdd another email to an existing User, confirm it, then set it as their primary.\n\n.. code:: python\n\n new_email = 'newaddr@nowhere.com'\n confirmation_key = user.add_unconfirmed_email(new_email)\n new_email in user.unconfirmed_emails # True\n\n send_mail(new_email, 'Use %s to confirm your new email' % confirmation_key)\n # User gets email, passes the confirmation_key back to your server\n\n user.confirm_email(confirmation_key)\n new_email in user.confirmed_emails # True\n\n user.set_primary_email(new_email)\n user.email # newaddr@nowhere.com\n\n\nInstallation\n------------\n\n#. From `pypi`__ using `pip`__:\n\n .. code:: sh\n\n pip install django-simple-email-confirmation\n\n#. Add `simple_email_confirmation` to your `settings.INSTALLED_APPS`__:\n\n .. code:: python\n\n INSTALLED_APPS = (\n ...\n 'simple_email_confirmation',\n ...\n )\n\n#. Add the provided mixin to your `django 1.5+ custom user model`__:\n\n .. code:: python\n\n from django.contrib.auth.models import AbstractUser\n from simple_email_confirmation.models import SimpleEmailConfirmationUserMixin\n\n class User(SimpleEmailConfirmationUserMixin, AbstractUser):\n pass\n\n Note: you don't strictly have to do this final step. Without this, you won't have the nice helper functions and properties on your `User` objects but the remainder of the app should function fine.\n\n#. Change default settings (optional):\n\n By default, keys don't expire. If you want them to, set `settings.SIMPLE_EMAIL_CONFIRMATION_PERIOD` to a timedelta.\n\n .. code:: python\n\n from datetime import timedelta\n\n EMAIL_CONFIRMATION_PERIOD_DAYS = 7\n SIMPLE_EMAIL_CONFIRMATION_PERIOD = timedelta(days=EMAIL_CONFIRMATION_PERIOD_DAYS)\n\n By default, auto-add unconfirmed EmailAddress objects for new Users. If you want to change this behaviour, set `settings.SIMPLE_EMAIL_CONFIRMATION_AUTO_ADD` to False.\n\n .. code:: python\n\n SIMPLE_EMAIL_CONFIRMATION_AUTO_ADD = False\n\n By default, a length of keys is 12. If you want to change it, set `settings.SIMPLE_EMAIL_CONFIRMATION_KEY_LENGTH` to integer value (maximum 40).\n\n .. code:: python\n\n SIMPLE_EMAIL_CONFIRMATION_KEY_LENGTH = 16\n\n You are able to override the EmailAddress model provided with this app. This works in a similar fashion as Django's custom user model and allows you to add fields to the EmailAddress model, such as a uuid, or define your own model completely. To set a custom email address model, set `settings.SIMPLE_EMAIL_CONFIRMATION_EMAIL_ADDRESS_MODEL` to the model you would like to use in the . fashion.\n\n An admin interface is included with simple email confirmation. Although, it is designed to work with the EmailAddress provided. Functionality with the admin cannot be guaranteed when a custom model is used so it is recommended you provide your own admin definition.\n\n Note for existing apps that already use the provided model:\n\n Similar to Django's custom user model, migrating a custom email address model after the default one is already migrated is not supported and could have unforeseen side effects. The recommendation is to use a custom model from the beginning of development.\n\n .. code:: python\n\n SIMPLE_EMAIL_CONFIRMATION_EMAIL_ADDRESS_MODEL = 'yourapp.EmailAddress'\n\nPython/Django supported versions\n--------------------------------\n\n- Python: 2.7, 3.4, 3.5 and 3.6\n- Django: 1.8 to 2.0\n\n\nRunning the Tests\n-----------------\n\n#. Install `tox`__ and `coverage`__\n\n .. code:: sh\n\n pip install tox coverage\n\n#. From the repository root, run\n\n .. code:: sh\n\n tox\n tox -e coverage\n\n It's that simple.\n\n\nFound a Bug?\n------------\n\nTo file a bug or submit a patch, please head over to `django-simple-email-confirmation on github`__.\n\n\nCredits\n-------\n\nOriginally adapted from `Pinax's django-email-confirmation`__, which was originally adapted from `James Tauber's django-email-confirmation`__.\n\n\n__ http://pypi.python.org/pypi/django-simple-email-confirmation/\n__ http://www.pip-installer.org/\n__ https://docs.djangoproject.com/en/dev/ref/settings/#installed-apps\n__ https://docs.djangoproject.com/en/dev/topics/auth/customizing/#specifying-a-custom-user-model\n__ https://tox.readthedocs.org/\n__ https://coverage.readthedocs.org/\n__ https://github.com/mfogel/django-simple-email-confirmation\n__ https://github.com/pinax/django-email-confirmation\n__ https://github.com/jtauber/django-email-confirmation\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mfogel/django-simple-email-confirmation", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-simple-email-confirmation", "package_url": "https://pypi.org/project/django-simple-email-confirmation/", "platform": "", "project_url": "https://pypi.org/project/django-simple-email-confirmation/", "project_urls": { "Homepage": "https://github.com/mfogel/django-simple-email-confirmation" }, "release_url": "https://pypi.org/project/django-simple-email-confirmation/0.60/", "requires_dist": null, "requires_python": "", "summary": "Simple email confirmation for django.", "version": "0.60" }, "last_serial": 5137689, "releases": { "0.10": [ { "comment_text": "", "digests": { "md5": "575e88d480910baa9e01826d9c27be1c", "sha256": "9d1ce9771ea89da6b76f22aa4c3edd0036f94a923ef1f9b4d2ef3580c8ab4926" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.10.tar.gz", "has_sig": false, "md5_digest": "575e88d480910baa9e01826d9c27be1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7657, "upload_time": "2013-08-14T05:37:42", "url": "https://files.pythonhosted.org/packages/54/d2/f6087e0739c0d47d8dc64315a039e7f4ebc1cb4a9eb2151cf7a7ee023d48/django-simple-email-confirmation-0.10.tar.gz" } ], "0.10.1": [ { "comment_text": "", "digests": { "md5": "335a3dd437649c2f548a83e901c3ea3a", "sha256": "d588d3ff197a78759bb09c14b5c20f8c6d3cfd89721bbf2c236d9736a06b93e8" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.10.1.tar.gz", "has_sig": false, "md5_digest": "335a3dd437649c2f548a83e901c3ea3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7771, "upload_time": "2013-08-14T20:53:18", "url": "https://files.pythonhosted.org/packages/72/c6/345985a4106bd6286e4e64c34f65f2bdf95d950e8c8b52025b6d93d41db8/django-simple-email-confirmation-0.10.1.tar.gz" } ], "0.10.2": [ { "comment_text": "", "digests": { "md5": "c21144a9ab342ead6f6c5c72f4da1500", "sha256": "4de251f518c189249061316d8db84bd56fa43689617d81d9be41e9037b297c82" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.10.2.tar.gz", "has_sig": false, "md5_digest": "c21144a9ab342ead6f6c5c72f4da1500", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8512, "upload_time": "2013-08-16T18:37:47", "url": "https://files.pythonhosted.org/packages/60/ed/ba539b5bbfe685a0738badf7d5b1f60fc6118651e2651c55f44c436e6975/django-simple-email-confirmation-0.10.2.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "abb7aa288ab1c7dd99842af6b69a1778", "sha256": "65c281a1a0340ec881179b43980f05e44df352d3bcb6ba9bbbcffbe43b70dc37" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.11.tar.gz", "has_sig": false, "md5_digest": "abb7aa288ab1c7dd99842af6b69a1778", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8929, "upload_time": "2014-07-24T23:20:17", "url": "https://files.pythonhosted.org/packages/c3/c4/7db8d6bfa786bd74c1c07ebcc1fb82d26b5cfe4b4398748fe95dbbe6db2e/django-simple-email-confirmation-0.11.tar.gz" } ], "0.12": [ { "comment_text": "", "digests": { "md5": "967450fad915e745d5577d22608703b4", "sha256": "bfc237491a925f6787f919c14e1c197fe16ae545d5aa7c88ae669e7e9441ac37" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.12.tar.gz", "has_sig": false, "md5_digest": "967450fad915e745d5577d22608703b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9307, "upload_time": "2014-12-24T22:13:34", "url": "https://files.pythonhosted.org/packages/84/d8/8f5a6b12b9aea6a163b0146d807097af10e1e4dacd5fa786bd72dd753162/django-simple-email-confirmation-0.12.tar.gz" } ], "0.21": [ { "comment_text": "", "digests": { "md5": "69ad11f03f07c01e1150cc1ec9343929", "sha256": "6bab9455781eed9186082c72532387ed20a5e5c21fbabb73ebdad01c79842f0e" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.21.tar.gz", "has_sig": false, "md5_digest": "69ad11f03f07c01e1150cc1ec9343929", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9355, "upload_time": "2016-08-08T17:19:04", "url": "https://files.pythonhosted.org/packages/41/0e/19744fc35438068f9bfb775adfa2aa08457a42a84bbf754b7116761ab3db/django-simple-email-confirmation-0.21.tar.gz" } ], "0.22": [ { "comment_text": "", "digests": { "md5": "0d79c68eb71fe25972a647a7e7e182bd", "sha256": "716e7476ff35348eb5289d2c1fe9ac9c3b861757cd9928b266cbdd9e9ef2c280" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.22.tar.gz", "has_sig": false, "md5_digest": "0d79c68eb71fe25972a647a7e7e182bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9777, "upload_time": "2017-05-09T16:55:50", "url": "https://files.pythonhosted.org/packages/f9/dc/c7b5d6da7e402f92a111cf03bf72586ebc8ea2be5266c4f1a9ee1b2fb588/django-simple-email-confirmation-0.22.tar.gz" } ], "0.23": [ { "comment_text": "", "digests": { "md5": "940807fd82fad1d67221e52b7111da0a", "sha256": "dcc496797473754e0a9b96248f2187546337266abb769af7ed8a3efc7a9b4733" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.23.tar.gz", "has_sig": false, "md5_digest": "940807fd82fad1d67221e52b7111da0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9991, "upload_time": "2018-01-14T18:54:06", "url": "https://files.pythonhosted.org/packages/6d/90/4a5ccb811ca7e55065a54adbf12468f89859dbaffe180b3561adb73033ba/django-simple-email-confirmation-0.23.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "eddafd76a18792d6ba58d6b78158287b", "sha256": "bd1f26700bba92ec5cda0c68c0f4f21ed1af3d632e32baf1ab31bcecc05899e1" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.3.tar.gz", "has_sig": false, "md5_digest": "eddafd76a18792d6ba58d6b78158287b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10301, "upload_time": "2018-09-17T21:09:26", "url": "https://files.pythonhosted.org/packages/24/9a/4c85c1395c44eca0bb11a78ba2688c5201f726014d6b2d4d0084277ab2df/django-simple-email-confirmation-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "bbff482ff5c55e42e8a759732696d97e", "sha256": "b12743158f33165f8c7ae585f81b4d4e585ead04472d4d0eb7df097a17b7fc18" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.4.tar.gz", "has_sig": false, "md5_digest": "bbff482ff5c55e42e8a759732696d97e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10371, "upload_time": "2018-09-27T12:46:12", "url": "https://files.pythonhosted.org/packages/ca/1a/8a61662eb54514ca3ac28116f9db36043dd1c6481f9678bf8c09c57b11f3/django-simple-email-confirmation-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "a026ba6aea8a57d526f26139036886ad", "sha256": "5ff1381bcc4249ac8c350776585e78008fc0a8cdc64a20efb538a91b8892e403" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.5.tar.gz", "has_sig": false, "md5_digest": "a026ba6aea8a57d526f26139036886ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12434, "upload_time": "2018-11-04T16:02:17", "url": "https://files.pythonhosted.org/packages/81/c8/ed6ec0d05429a2edbbf26c5518d90dafc680a86ae9b056634bc907162dc5/django-simple-email-confirmation-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "1adabb71038deec2c01b83c3b994b122", "sha256": "da8f4045bd6795b7849066e8acf2bc1a4b7b1c9ca803314523c4fb094af1081c" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.6.tar.gz", "has_sig": false, "md5_digest": "1adabb71038deec2c01b83c3b994b122", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12444, "upload_time": "2018-11-09T10:56:36", "url": "https://files.pythonhosted.org/packages/d4/c5/c49ec958ff441b3eb8716507eb8d23c89dbb4e46a1e1248e254b661896b2/django-simple-email-confirmation-0.6.tar.gz" } ], "0.60": [ { "comment_text": "", "digests": { "md5": "84276cad954d9e929067fe840fc2ec14", "sha256": "835fcc174fa9c184e63821176ed004a93114a8fa547f520432c002a8a35c818d" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.60.tar.gz", "has_sig": false, "md5_digest": "84276cad954d9e929067fe840fc2ec14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13111, "upload_time": "2019-04-13T09:45:10", "url": "https://files.pythonhosted.org/packages/7d/5f/29ed04dd413035204d6ca946ab8167a27ffdd6fed877f221b4078c3d830b/django-simple-email-confirmation-0.60.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "d7aded12d9b453ba46660813676b37f2", "sha256": "a7f4d0d6fb9c30e689aae8b48b4515b62a7951ad683eedda262d03223c76da68" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.9.tar.gz", "has_sig": false, "md5_digest": "d7aded12d9b453ba46660813676b37f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5756, "upload_time": "2013-08-05T01:20:37", "url": "https://files.pythonhosted.org/packages/09/32/b15ca26b8c1eb008999e848a51a871c7b5426ca26ab2a7ebef6507a1a260/django-simple-email-confirmation-0.9.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "da7acd20871eb9f0059bfaad1683e53f", "sha256": "2deb8fbccb708c55337ee5c8ff76ec755e477eb4ad9f7cb08a975afa1ac5bdd9" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.9.1.tar.gz", "has_sig": false, "md5_digest": "da7acd20871eb9f0059bfaad1683e53f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6939, "upload_time": "2013-08-05T05:32:46", "url": "https://files.pythonhosted.org/packages/6f/42/f7bc4382e3950d2f4caed904759a8f312a96a298ab7d2600f7b752f2d156/django-simple-email-confirmation-0.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "84276cad954d9e929067fe840fc2ec14", "sha256": "835fcc174fa9c184e63821176ed004a93114a8fa547f520432c002a8a35c818d" }, "downloads": -1, "filename": "django-simple-email-confirmation-0.60.tar.gz", "has_sig": false, "md5_digest": "84276cad954d9e929067fe840fc2ec14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13111, "upload_time": "2019-04-13T09:45:10", "url": "https://files.pythonhosted.org/packages/7d/5f/29ed04dd413035204d6ca946ab8167a27ffdd6fed877f221b4078c3d830b/django-simple-email-confirmation-0.60.tar.gz" } ] }