{ "info": { "author": "gocept", "author_email": "mail@gocept.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 2 :: Only", "Programming Language :: Python :: Implementation", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development :: Libraries" ], "description": "Copyright (c) 2009-2015 gocept gmbh & co. kg\nAll Rights Reserved.\n\nThis software is subject to the provisions of the Zope Public License,\nVersion 2.1 (ZPL). A copy of the ZPL should accompany this distribution.\nTHIS SOFTWARE IS PROVIDED \"AS IS\" AND ANY AND ALL EXPRESS OR IMPLIED\nWARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS\nFOR A PARTICULAR PURPOSE.\n\n\nAutocomplete widget\n===================\n\ngocept.autocomplete provides an autocomplete widget for z3c.form.\nThe widget is useful if you want to provide the user with a list of suggestions\nfor a field, but still want to accept anything else that is entered, too.\n\n\nTo use the widget, `` and provide a\nsource that implements `gocept.autocomplete.interfaces.ISearchableSource`.\nThis means two things, one, your source must provide a search() method so it can\nbe queried for values (with whatever has been entered so far as the query) and\ntwo, you must always return True from the __contains__() method, so that the\nuser is free to enter a value that is not part of the suggestions.\n\nNo further configuration is required, the widget is automatically registered for\nall `zope.schema.IChoice` fields with an `ISearchableSource`.\n\nAs an example, we exercise the code from `gocept.autocomplete.tests.color` with\nthe testbrowser:\n\n>>> import zope.app.testing.functional\n>>> root = zope.app.testing.functional.getRootFolder()\n>>> import gocept.autocomplete.tests.color\n>>> house = gocept.autocomplete.tests.color.House()\n>>> root['house'] = house\n\n>>> import zope.testbrowser.testing\n>>> b = zope.testbrowser.testing.Browser()\n>>> b.handleErrors = False\n\nThe AutocompleteWidget is an enhanced TextWidget. Thus, in display mode, it\nbehaves just like a TextWidget:\n\n>>> b.open('http://localhost/house')\n>>> print b.contents\n...\n\nBut in edit mode, it generates additional javascript code:\n\n>>> b.addHeader('Authorization', 'Basic mgr:mgrpw')\n>>> b.open('http://localhost/house')\n>>> print b.contents\n>> b.open('http://localhost/house/@@index.html/++widget++color/@@autocomplete-search')\n>>> print b.contents\n>>> b.open('http://localhost/house/@@index.html/++widget++color/@@autocomplete-search?q=r')\n>>> print b.contents\nred\nruby\n\nBut we can still enter any value we want and have it saved (there are two parts\nto make this work, one is that the source must always return True in its\n__contains__() method, and the other is that the widget uses a special\nTitledTokenizedTerm that uses the actual value for everything):\n\n>>> b.open('http://localhost/house')\n>>> b.getControl('Color').value = 'foo'\n>>> b.getControl(name='form.buttons.apply').click()\n>>> print b.contents\n>> apartment = gocept.autocomplete.tests.color.Apartment()\n>>> root['apartment'] = apartment\n\nThe widget traversal for grouped forms returns the correct search\nresults:\n\n>>> b.open('http://localhost/apartment/@@grouped.html/++widget++color/@@autocomplete-search?q=r')\n>>> print b.contents\nred\nruby\n>>> b.open('http://localhost/apartment/@@grouped.html/++widget++number/@@autocomplete-search?q=1')\n>>> print b.contents\n12A\n12\n\n\nDeveloping gocept.autocomplete\n==============================\n\n:Author:\n `gocept `_ \n\n:PyPI page:\n http://pypi.python.org/pypi/gocept.autocomplete/\n\n:Issue tracker:\n https://bitbucket.org/gocept/gocept.autocomplete/issues/\n\n:Source code:\n https://bitbucket.org/gocept/gocept.autocomplete/\n\n:Current change log:\n https://bitbucket.org/gocept/gocept.autocomplete/src/tip/CHANGES.txt\n\nBuildout configuration\n======================\n\nThis package ships with a minimum buildout config which allows to run the\ntests::\n\n $ python bootstrap.py\n $ bin/buildout\n $ bin/test\n\n\nChanges\n=======\n\n0.7 (2015-12-09)\n----------------\n\n- Move code to https://bitbucket.org/gocept/gocept.autocomplete.\n\n- Update tests and code to Python 2.7 and ZTK 1.1.6.\n\n\n0.6 (2013-04-23)\n----------------\n\n- Switch to jQuery UI and Fanstatic instead of YUI and ``zc.resourcelibrary`` .\n\n\n0.5 (2011-01-11)\n----------------\n\n- `configure.zcml` no longer includes ``zope.app.zcmlfiles``, it was moved\n to `ftesting.zcml`.\n\n- Described the dependency on ``zc.resourcelibrary`` in README which makes\n this package incompatible with packages using ``hurry.resource``.\n\n\n0.4 (2010-06-17)\n----------------\n\ncontributed by Roman Joost :\n\n- Added grouped forms support.\n\n- Added configuration options for delimiter character, minimum query length and\n the type-ahead feature\n\n\n0.3 (2010-02-26)\n----------------\n\n- Slightly different way to \"estimate\" the widget URL: use the form's context,\n not the getContent() method: if the content is redirected using an adapter\n then the view might not exist there.\n\n0.2 (2009-02-23)\n----------------\n\n- register the widget for IChoice fields with an ISearchableSource.\n This functionality depends on z3c.form>=r96460 (will be included in\n z3c.form-2.0).\n- improved documentation.\n\n0.1 (2009-02-06)\n----------------\n\n- first release\n- NOTE: still missing security declarations on the autocomplete-search view.\n This means anyone can query the source for values.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/gocept/gocept.autocomplete", "keywords": "", "license": "ZPL 2.1", "maintainer": "", "maintainer_email": "", "name": "gocept.autocomplete", "package_url": "https://pypi.org/project/gocept.autocomplete/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/gocept.autocomplete/", "project_urls": { "Homepage": "https://bitbucket.org/gocept/gocept.autocomplete" }, "release_url": "https://pypi.org/project/gocept.autocomplete/0.7/", "requires_dist": null, "requires_python": "", "summary": "AJAX autocomplete widget for z3c.form", "version": "0.7" }, "last_serial": 1853862, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "bfcfde451a15ec6c2c020f8819f88eb2", "sha256": "3657afa8b32b041a6abcfe7272a9401108e8c9ddc1f0f8030e61bb02fbba5fce" }, "downloads": -1, "filename": "gocept.autocomplete-0.1.tar.gz", "has_sig": false, "md5_digest": "bfcfde451a15ec6c2c020f8819f88eb2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9703, "upload_time": "2009-02-06T10:56:18", "url": "https://files.pythonhosted.org/packages/52/43/b9f811d69159e1b231686f4d19a1abb0ddbc4e150eeaa1e68a7bacb6428b/gocept.autocomplete-0.1.tar.gz" } ], "0.1dev": [ { "comment_text": "", "digests": { "md5": "aaafcb1c3ded6dfd906c02d225adcf3e", "sha256": "ce538df05e4fa9d620dd52bb1d16a7d516f48913fe6e52226e0f577d9c516a06" }, "downloads": -1, "filename": "gocept.autocomplete-0.1dev.tar.gz", "has_sig": false, "md5_digest": "aaafcb1c3ded6dfd906c02d225adcf3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9689, "upload_time": "2009-02-06T10:55:58", "url": "https://files.pythonhosted.org/packages/0a/be/b40c4b0f25ebc46c73bdbf8975fa0674331f249f969fadf23052f343c201/gocept.autocomplete-0.1dev.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "cf0a75da34417dbacf5d401b8faf1855", "sha256": "9ccd06dfe73328f602c831e9bc029575108c02b86288cf5590ed4629ef20fc92" }, "downloads": -1, "filename": "gocept.autocomplete-0.2.tar.gz", "has_sig": false, "md5_digest": "cf0a75da34417dbacf5d401b8faf1855", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11071, "upload_time": "2009-02-23T15:40:02", "url": "https://files.pythonhosted.org/packages/61/e9/b434a932fe8bf27fa8dee8fa7dcd40144f45d0d3fb881d423c8beb88d093/gocept.autocomplete-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "f78f570390b6c42c78c413d443c7eac1", "sha256": "c47d8765580def44ed2912f6b1c32528535eebeb1d583188ea0707ec2327be72" }, "downloads": -1, "filename": "gocept.autocomplete-0.3.tar.gz", "has_sig": false, "md5_digest": "f78f570390b6c42c78c413d443c7eac1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10712, "upload_time": "2010-02-26T12:57:09", "url": "https://files.pythonhosted.org/packages/f9/a5/53283c76994b8b8f452c9074b26e8817e6e078e9e8ab1128919f28e3ca04/gocept.autocomplete-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "d5a91bd9f5f271427023c9479e21bab9", "sha256": "3e94cd6a1e509f508dad6c1644a61b8e6a7be868ffaff9220139ff65c8e47d3e" }, "downloads": -1, "filename": "gocept.autocomplete-0.4.tar.gz", "has_sig": false, "md5_digest": "d5a91bd9f5f271427023c9479e21bab9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11792, "upload_time": "2010-06-17T08:51:15", "url": "https://files.pythonhosted.org/packages/b2/f0/8df26e2308ec93fa0f9b41904225635aee102d992b7e64368417485cae2d/gocept.autocomplete-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "75aaa7e32948126fdae84770dfec96c1", "sha256": "b0838b30645ef35d9d8a6f7003a535a3dce90d0cfe740a25a00fe358c29dee32" }, "downloads": -1, "filename": "gocept.autocomplete-0.5.tar.gz", "has_sig": false, "md5_digest": "75aaa7e32948126fdae84770dfec96c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10333, "upload_time": "2011-01-11T09:49:36", "url": "https://files.pythonhosted.org/packages/74/51/772459ae2f32f57512878d57d9bb4ffcc3992a94a860e011c27c678c5469/gocept.autocomplete-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "6611616504fc6132f52ef5bf58495cf6", "sha256": "7f6e9106a3332338a4450df138478e62ab5f38db214e766c716418085b24797b" }, "downloads": -1, "filename": "gocept.autocomplete-0.6.zip", "has_sig": false, "md5_digest": "6611616504fc6132f52ef5bf58495cf6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22375, "upload_time": "2013-04-23T12:58:51", "url": "https://files.pythonhosted.org/packages/a1/51/a1f2fd18cce66eff8099a161c057436fdb108c490ce5fb4db6e35af67e23/gocept.autocomplete-0.6.zip" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "fce6595125d08aaa148e918f2796f88b", "sha256": "fea1f9e7496ec797000b97a3acc5e8ea12da1d9fb9665232aff1c29b1ebb7cb4" }, "downloads": -1, "filename": "gocept.autocomplete-0.7.tar.gz", "has_sig": false, "md5_digest": "fce6595125d08aaa148e918f2796f88b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15801, "upload_time": "2015-12-09T13:27:36", "url": "https://files.pythonhosted.org/packages/3d/f1/c990b6e86879ec51c7147bca1ca717f8b3c9e0ff71258770b0810b6ade1b/gocept.autocomplete-0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fce6595125d08aaa148e918f2796f88b", "sha256": "fea1f9e7496ec797000b97a3acc5e8ea12da1d9fb9665232aff1c29b1ebb7cb4" }, "downloads": -1, "filename": "gocept.autocomplete-0.7.tar.gz", "has_sig": false, "md5_digest": "fce6595125d08aaa148e918f2796f88b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15801, "upload_time": "2015-12-09T13:27:36", "url": "https://files.pythonhosted.org/packages/3d/f1/c990b6e86879ec51c7147bca1ca717f8b3c9e0ff71258770b0810b6ade1b/gocept.autocomplete-0.7.tar.gz" } ] }