{ "info": { "author": "Divio", "author_email": "info@divio.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development", "Topic :: Software Development :: Libraries :: Application Frameworks" ], "description": "=======================\ndjango CMS Link Manager\n=======================\n\n.. image:: https://travis-ci.org/divio/djangocms-link-manager.svg?branch=master\n :target: https://travis-ci.org/divio/djangocms-link-manager\n\nAn extensible means of checking for broken links in virtually any\ndjango CMS plugin.\n\n--------\nOverview\n--------\n\nThere are numerous plugins that provide hyperlink capabilities in django CMS\neach with their own fields for store a variety of types of hyperlinks. As a\nresult, it can become a challenge to find bad links across the whole project.\nThis project attempts to provide a solution in an extensible manner.\n\n------------\nInstallation\n------------\n\nThis package requires Python 2.7 or later and Django 1.8 or later.\n\nFirst, install the package from PyPI: ::\n\n pip install djangocms-link-manager\n\nThen add it to your ``INSTALLED_APPS``: ::\n\n # settings.py\n ...\n INSTALLED_APPS = [\n ...\n 'djangocms_link_manager',\n ]\n\n-----\nUsage\n-----\n\nThe simplest way to run this is: ::\n\n python manage.py check_links\n\nHowever, this command accepts a number of optional arguments: ::\n\n --verify-exists Check that each link's target exists (use caution,\n makes HTTP HEAD requests).\n --scheme SCHEME Default scheme to use for scheme-less URLs\n (default: \"http\").\n --host NETLOC Default [host:port] to use for relative URLs (defaults\n to \"localhost:8000\").\n --template TEMPLATE Override the report rendering template.\n --mail-managers Instead of printing report to the console, email it to\n the addresses defined in the MANAGERS list in the\n project's settings.py.\n\n\n---------\nExtending\n---------\n\nThis package currently supports to plugins by their class names:\n``Bootstrap3ButtonCMSPlugin`` and ``LinkPlugin`` which come from the packages:\n``aldryn_bootstrap3`` and ``djangocms_link`` respectively. To add support for\na new CMSPlugin, one simply writes creates a class that subclasses\n``djangocms_link_manager.link_manager.LinkManager`` and overrides the\n``check_link()`` method according to the particulars of the CMSPlugin you wish\nto support.\n\nOnce this is created, register the link manager into the link manager pool on\nstartup with: ::\n\n from djangocms_link_manager.link_manager import LinkManager, LinkReport\n from djangocms_link_manager.link_manager_pool import link_manager_pool\n\n class MyLinkPluginLinkManager(LinkManager):\n \"\"\"MyLinkPlugin only contains the fields 'name' and 'url'.\"\"\"\n\n def check_link(self, instance, verify_exists=False):\n \"\"\"Override this method and adapt to MyLinkPlugin.\"\"\"\n return LinkReport(\n valid=self.validate_url(instance.url, verify_exists=verify_exists),\n text=instance.name,\n url=instance.url\n )\n\n link_manager_pool.register('MyLinkPlugin', MyLinkPluginLinkManager)\n\n\nSupport for additional URL schemes\n----------------------------------\n\nThis package already provides support for the following URL schemes: ``ftp``,\n``ftps``, ``http``, ``https``, ``bitcoin``, ``mailto``, and ``tel``. If a project\nrequires validation of other schemes, they can be added to the link manager\n(subclass of LinkManager) simply by including a method with the name\n``validate_MYSCHEME`` with the signature: ::\n\n def validate_MYSCHEME(self, parts, verify_exists=False):\n # Do your thing here\n if valid:\n return True\n else:\n return False\n\nReplace \"MYSCHEME\" with the lower-case scheme of your choice.\n\n``verify_exists``, when set to True, is intended to check to see if the resource\nis really available. For example, for ``http(s)``, ``ftp(s)`` validator will\nactually attempt to fetch the URL (using an HTTP HEAD request) and will return\n``False`` if the result is an HTTP 404 error. Use this responsibly.\n\n``parts`` is a dict of the URLs parts as follows: ::\n\n parts = {\n 'scheme': ...,\n 'netloc': ...,\n 'path': ...,\n 'params': ...,\n 'query': ...,\n 'fragment': ...,\n }\n\nFor more information about these elements, please review the docs for\n`urllib.parse `_.\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/divio/djangocms-link-manager/", "keywords": "", "license": "LICENSE.txt", "maintainer": "", "maintainer_email": "", "name": "djangocms-link-manager", "package_url": "https://pypi.org/project/djangocms-link-manager/", "platform": "OS Independent", "project_url": "https://pypi.org/project/djangocms-link-manager/", "project_urls": { "Homepage": "https://github.com/divio/djangocms-link-manager/" }, "release_url": "https://pypi.org/project/djangocms-link-manager/0.2.1/", "requires_dist": null, "requires_python": "", "summary": "An extensible means of checking for broken links in virtually any django CMS plugin.", "version": "0.2.1" }, "last_serial": 3238771, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8384611584d70b047af220133f51c869", "sha256": "552c4eef758f0e447854013f1a20f4de8d5850f110358e3e137993a342b433e9" }, "downloads": -1, "filename": "djangocms_link_manager-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "8384611584d70b047af220133f51c869", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 14958, "upload_time": "2016-10-04T12:14:15", "url": "https://files.pythonhosted.org/packages/e1/8c/8ca1d47f0b5d3af19a914a7bd77ea175ffdcf58a1822ab568901b61b1c0c/djangocms_link_manager-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "617a972a3d53b8fd05902c47c484953d", "sha256": "d6df2acdf06ef6b5877c90d1dcf299436e15faa6742303d5f6a928cea3b892ac" }, "downloads": -1, "filename": "djangocms-link-manager-0.1.0.tar.gz", "has_sig": false, "md5_digest": "617a972a3d53b8fd05902c47c484953d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9189, "upload_time": "2016-10-04T12:13:43", "url": "https://files.pythonhosted.org/packages/f7/38/47c3667945c1645584f5f7ee4040fe93dc23cd9c27eb7dbaa40f6e1c4da2/djangocms-link-manager-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d274b4dd198e299123d4e4cd11ef1dad", "sha256": "7923043e9171d08bc5819fb0d1e184e4d059a7cf2fa3aec3ce7cc6621c85ad65" }, "downloads": -1, "filename": "djangocms_link_manager-0.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "d274b4dd198e299123d4e4cd11ef1dad", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15737, "upload_time": "2016-10-04T13:00:43", "url": "https://files.pythonhosted.org/packages/1b/c2/81df033a209a68c06b73400afd157976523ec562c74b7cc61fc7ca11f73d/djangocms_link_manager-0.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ba2ac85134db52d9b6196d63ccd4e462", "sha256": "4b81a51849bdc52edff7361c104bb3c9b07d42a937904b41f44e573c0d1e7381" }, "downloads": -1, "filename": "djangocms-link-manager-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ba2ac85134db52d9b6196d63ccd4e462", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9681, "upload_time": "2016-10-04T13:00:54", "url": "https://files.pythonhosted.org/packages/01/84/9c77529233f6847c69f455c4207887274a1fdaf84d9d8820de9f69fec142/djangocms-link-manager-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "121a0cfe2cc5a2be61c5878b331afda1", "sha256": "da352fdeb2b8d9e16d2536c7f0b32b0371cd93135ea729a68182ad6e222236fc" }, "downloads": -1, "filename": "djangocms-link-manager-0.2.0.tar.gz", "has_sig": false, "md5_digest": "121a0cfe2cc5a2be61c5878b331afda1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10040, "upload_time": "2017-03-26T20:19:07", "url": "https://files.pythonhosted.org/packages/1e/fb/e2837045ca7c8a90489759d58e2ce01e7ac45c869b5fa63b1e3d4bbb1158/djangocms-link-manager-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "afa6a879c3b4cf3d9c751d953605653c", "sha256": "9b24baa5356e194f01fdea18b34641f10eb5b6db1ab905d819f4ea786f43d846" }, "downloads": -1, "filename": "djangocms_link_manager-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "afa6a879c3b4cf3d9c751d953605653c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16104, "upload_time": "2017-06-19T17:14:13", "url": "https://files.pythonhosted.org/packages/63/f8/cf53f42a204a1821520448e96458022a1901eb01999809b889e24369d155/djangocms_link_manager-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "11479d93129308a301af15e63828e7d8", "sha256": "25f8171c15405daaa14d1a7c41b1ee9bd92f7d67b5e5f3779812e0aca57546ff" }, "downloads": -1, "filename": "djangocms-link-manager-0.2.1.tar.gz", "has_sig": false, "md5_digest": "11479d93129308a301af15e63828e7d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10000, "upload_time": "2017-06-19T17:14:10", "url": "https://files.pythonhosted.org/packages/47/09/04a3adab7bf9c020dba7eb569b50dbc3669aa211980ccab6d744b9904455/djangocms-link-manager-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "afa6a879c3b4cf3d9c751d953605653c", "sha256": "9b24baa5356e194f01fdea18b34641f10eb5b6db1ab905d819f4ea786f43d846" }, "downloads": -1, "filename": "djangocms_link_manager-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "afa6a879c3b4cf3d9c751d953605653c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16104, "upload_time": "2017-06-19T17:14:13", "url": "https://files.pythonhosted.org/packages/63/f8/cf53f42a204a1821520448e96458022a1901eb01999809b889e24369d155/djangocms_link_manager-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "11479d93129308a301af15e63828e7d8", "sha256": "25f8171c15405daaa14d1a7c41b1ee9bd92f7d67b5e5f3779812e0aca57546ff" }, "downloads": -1, "filename": "djangocms-link-manager-0.2.1.tar.gz", "has_sig": false, "md5_digest": "11479d93129308a301af15e63828e7d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10000, "upload_time": "2017-06-19T17:14:10", "url": "https://files.pythonhosted.org/packages/47/09/04a3adab7bf9c020dba7eb569b50dbc3669aa211980ccab6d744b9904455/djangocms-link-manager-0.2.1.tar.gz" } ] }