A country widget for Archetypes
Project description
A country widget for Archetypes
Adds a new tool, portal_countryutil to the Plone root, which lets you manage a list of areas which may contain several countries from the official ISO-country list via the ZMI. A complete list of areas and their countries is being created at install time.
Provides three widgets which you can use in your own Archetype:
- CountryWidget
the areas and countries defined in the country tool are then rendered as a dropdown (with <optgroup>).
- AreaWidget
provides a dropdown with all areas you have defined.
- MultiCountryWidget
for use with LinesField, lets you select multiple countries
Examples
Here is some code that demonstrates how to use those widgets:
---- YourArcheType.py ---- # Import the widget/s: from Products.ATCountryWidget.Widget import CountryWidget, AreaWidget # Define the field/s in your schema: [...] StringField( 'country', validators=('isValidISOCountry',), widget=CountryWidget(label='Country', provideNullValue=1, # this is default nullValueTitle='-', # this is default omitCountries=None, # this is default, can be a # list of country codes which # are not displayed description='Select a country') ), [... and/or ...] StringField( 'area', widget=AreaWidget(label='Area', provideNullValue=1, # this is default nullValueTitle='-', # this is default description='Select an area') ), [... and/or ...] LinesField( 'countries', widget=MultiCountryWidget(label='Countries', omitCountries=None, # this is default, can be a # list of country codes which # are not displayed description='Select countries') ), [...]
Use without Archetypes
To use your countrylist in a custom page template outside of an Archetype (e.g. in a search form) you can directly use the API the country tool provides:
<select tal:define="countrytool here/portal_countryutils"> <option>Choose...</option> <optgroup label="Western Europe" tal:repeat="area countrytool/listAreas" tal:attributes="label area/name"> <option value="DE" tal:repeat="country area/countries" tal:content="country/name" tal:attributes="value country/isocc">Germany </option> </optgroup> </select>
For more details on how to customize content-types, add custom fields to content-types, see Martin’s tutorial: http://plone.org/documentation/kb/richdocument/extending-atct
Changelog
- 2011-04-11
Release Plone 4 compat version
- 2009-02-21
Released as egg.
- 2006-04-19
Added patch from Norman H. Voss (missing country/rearranged default areas)
Updated README to cover MultiCountryWidget
- 2006-03-14
Added multiselect widget (MultiCountryWidget)
- 2005-09-02
Compatibility with Plone 2.1 (RC3)
- 2005-06-29
Added parameter ‘omitCountries’ to CountryWidget. Country ISO codes in this list are omitted from display in selection.
- 2005-02-20
added listing of languages and their two letter ISO codes
- 2004-08-30
release 0.2
added area-widget
provideNullValue & nullValue properties for widgets
creation of complete area-country structure in installer
migrated to AT 1.3 beta
- 2004-07-05
release 0.1.1
added validator
- 2004-06-29
initial release 0.1
Additional credits:
Norman H. Voss for a patch (04/2006)
Alex Clark for releasing Plone 4 compat version (from gocept trunk moved to the collective, 04/2011)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Products.ATCountryWidget-0.2.6.zip
.
File metadata
- Download URL: Products.ATCountryWidget-0.2.6.zip
- Upload date:
- Size: 46.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 329600d2778bd3000548710ae5298790850a55aedf1b024021fb5d1287b8b1ac |
|
MD5 | a264e414463e0a892caecd4da50412cc |
|
BLAKE2b-256 | f3b33860289dfd1a5c0d6f864a1f2d90b9651cff9e4c3423d4b4b52dd99afa54 |