plone.formwidget.querystringA widget for composing a Query string/search.Introduction
============
A z3c.form-based widget for composing a Query string/search.
This widget is used by the contentlisting tile and the dexterity-based version
of plone.app.collection (>2.0), to make selections, and 'build' your query. It
stores a list of dictionaries containing the query you've build. This query is
being parsed by using plone.app.collection and that used
plone.app.contentlisting to display the results in the tile.
Installation
============
If you install plone.formwidget.querystring, you probably want to use it in
an add-on product for Plone. Therefore you can add it to the setup.py of your
package::
install_requires=[
'plone.formwidget.querystring',
...
],
You probably want to also use it to the list of dependencies in your generic
setup profile (profiles/default/metadata.xml)::
<metadata>
<version>1</version>
<dependencies>
<dependency>profile-plone.formwidget.querystring:default</dependency>
</dependencies>
</metadata>
Dexterity Widget
================
To assign the plone.formwidget.querystring widget to a field in your custom
content type, you can use a plone.autoform directive in the interfaces
definition (interfaces.py)::
from plone.formwidget.querystring.widget import QueryStringFieldWidget
class IMyDexteritySchema(form.Schema):
form.widget(query=QueryStringFieldWidget)
query = schema.List(
title=_(u'label_query', default=u'Search terms'),
description=_(u"""Define the search terms for the items you want to
list by choosing what to match on.
The list of results will be dynamically updated"""),
value_type=schema.Dict(value_type=schema.Field(),
key_type=schema.TextLine()),
required=False
)
.. note::
See:: See
https://github.com/plone/plone.app.collection/blob/master/plone/app/collection/interfaces.py#L16
and
https://github.com/plone/plone.app.contentlistingtile/blob/master/plone/app/contentlistingtile/tile.py#L18
for further examples of how to use plone.formwidget.querystring.
Credits
=======
* Kim Chee Leong
* Ralph Jacobs
* Jonas Baumann
* Hanno Schlichting
* Timo Stollenwerk
Changelog
=========
1.1.0 (2013-11-14)
------------------
- Change javascript to work on ``form-widgets-ICollection`` fields instead of
``form-widgets``.
[maurits, kaselis]
1.0b4 (unreleased)
------------------
- If we set background to 'white' we should set foreground to 'black' to avoid
people getting white font on white background if they use white font color
for their plone sites. [saily]
- Add handling of the RelativeDateWidget, already expected to exist in
p.a.querystring.
[tmog]
- Add jquery dateinput to dateWidget and dateRangeWidget.
[tmog]
1.0b3 (2013-02-04)
------------------
- Fixed context for getting ajax results
[kroman0]
- Fixed conditional initialization of querywidget,
see http://dev.plone.org/ticket/12529
[kroman0]
- The widget can now be hidden, when clicking on the
window or the widget. The event is only effective
when the widget is displayed.
[bosim]
- Translations are now in Plone domain
[bosim]
- Made the widget a bit more resistent to missing entries, i.e. vocabularies
or in other way indexes. The problem occur if an option is deleted from the
registry but not deleted from the collections in before hand.
[bosim]
- Update import path for pagetemplate. Now only works with 4.1 and higher
[do3cc]
1.0b2 (2012-03-19)
------------------
- Fix sort-reversed checkbox javascript.
[timo]
- Move docs/HISTORY.txt to CHANGES.txt to apply to Plone conventions.
[timo]
1.0b1 (2012-03-09)
------------------
- Stop hardcoding the field name so it works with other field names and
prefixes.
[davisagli]
- Rename ArcheTypesQueryWidget to Querywidget to avoid confusion.
[timo]
- Several JSLint fixes on querywidget.js
[timo]
- Make sure the sorting settings are actually stored on the collection.
[timo]
1.0a1 (2011-10-28)
------------------
- Initial release.
[ralphjacobs, kcleong, jbaumann, hannosch, timo]Plone Foundation7a7fecc394759b12e477801b9a3b3df2747d421c1.1.0