{ "info": { "author": "The Plone Foundation", "author_email": "plone@plone.org", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 5.0", "Framework :: Plone :: 5.1", "Framework :: Zope2", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Build Status\n------------\n\n.. image:: https://travis-ci.org/plone/plone.login.svg?branch=master\n :target: https://travis-ci.org/plone/plone.login\n\n.. image:: https://coveralls.io/repos/github/plone/plone.login/badge.svg?branch=master\n :target: https://coveralls.io/github/plone/plone.login?branch=master\n\n\nplone.login\n===========\n\nA modernized drop-in replacement for the portal_skins-based login.\n\n\nInstallation\n------------\n\nInstall ploneconf.site by adding it to your buildout::\n\n [buildout]\n\n ...\n\n eggs =\n plone.login\n\nand then running ``bin/buildout``. Install it as usual in /prefs_install_products_form\n\n\nCompatibility\n-------------\n\n``plone.login`` is tested to work with Plone 5.1.\nIt should work with Plone 5.0 as well but is not yet tested.\n\n\nCustomizing templates\n---------------------\n\nThe templates for any ``plone.login`` can be customized because they're simple browser-views.\nUse `z3c.jbot `_ to apply your own overides.\n\nCustomize where to redirect after login\n---------------------------------------\n\nYou can customize the location the user will be redirected to after successfuly logging in to the site.\n\nJust write an adapter as follows\n\n.. code-block:: python\n\n from plone.login.interfaces import IRedirectAfterLogin\n from plone.login.interfaces import IInitialLogin\n from Products.CMFPlone.utils import safe_unicode\n from zope.interface import implementer\n from plone import api\n\n\n @implementer(IRedirectAfterLogin)\n class RedirectAfterLoginAdapter(object):\n\n def __init__(self, context, request):\n self.context = context\n self.request = request\n\n def __call__(self, came_from=None, is_initial_login=False):\n if 'Reviewer' in api.user.get_roles():\n api.portal.show_message(\n u'Get to work!', self.request)\n came_from = self.context.portal_url() + '/@@full_review_list'\n else:\n user = api.user.get_current()\n fullname = safe_unicode(user.getProperty('fullname'))\n api.portal.show_message(\n u'Nice to see you again, {0}!'.format(fullname), self.request)\n if not came_from:\n came_from = self.context.portal_url()\n return came_from\n\nThen register the adapter through ZCML::\n\n \n\nAs you can see, this adapter adapts context and request, so modify these according to your needs.\n\nThe Plone Foundation, Author\n\nChangelog\n=========\n\n1.0rc1 (2018-06-18)\n-------------------\n\n- Package created using templer\n [The Plone Foundation]", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/plone/plone.login", "keywords": "cms plone login security", "license": "gpl", "maintainer": "", "maintainer_email": "", "name": "plone.login", "package_url": "https://pypi.org/project/plone.login/", "platform": "", "project_url": "https://pypi.org/project/plone.login/", "project_urls": { "Homepage": "https://github.com/plone/plone.login" }, "release_url": "https://pypi.org/project/plone.login/1.0rc1/", "requires_dist": null, "requires_python": "", "summary": "Plone Login System", "version": "1.0rc1" }, "last_serial": 3973242, "releases": { "1.0rc1": [ { "comment_text": "", "digests": { "md5": "2a98e27666e3fef494afc8b6ce3d5a6c", "sha256": "16128d57ed435dfad74a75a95219c09684a7267414eaac45bb6688c6594f851d" }, "downloads": -1, "filename": "plone.login-1.0rc1.tar.gz", "has_sig": false, "md5_digest": "2a98e27666e3fef494afc8b6ce3d5a6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 929597, "upload_time": "2018-06-18T11:56:26", "url": "https://files.pythonhosted.org/packages/0b/03/e63482f9fb08dbecac2fb438fd0449a177f0ccfdb17f865a18d2d86e26ef/plone.login-1.0rc1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2a98e27666e3fef494afc8b6ce3d5a6c", "sha256": "16128d57ed435dfad74a75a95219c09684a7267414eaac45bb6688c6594f851d" }, "downloads": -1, "filename": "plone.login-1.0rc1.tar.gz", "has_sig": false, "md5_digest": "2a98e27666e3fef494afc8b6ce3d5a6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 929597, "upload_time": "2018-06-18T11:56:26", "url": "https://files.pythonhosted.org/packages/0b/03/e63482f9fb08dbecac2fb438fd0449a177f0ccfdb17f865a18d2d86e26ef/plone.login-1.0rc1.tar.gz" } ] }