Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install products.atcountrywidget

How to install Products.ATCountryWidget

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install products.atcountrywidget
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
0.2.6 Available View build log
0.2.5 Available View build log
Windows (64-bit)
0.2.6 Available View build log
0.2.5 Available View build log
Mac OS X (10.5+)
0.2.6 Available View build log
0.2.5 Available View build log
Linux (32-bit)
0.2.6 Available View build log
0.2.5 Available View build log
Linux (64-bit)
0.2.6 Available View build log
0.2.5 Available View build log
 
Author
License
ZPL 2.1
Dependencies
Lastest release
version 0.2.6 on Apr 12th, 2011

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
Authors

Christian Zagrodnick (cz@gocept.com) Michael Howitz (mh@gocept.com) Daniel Havlik (dh@gocept.com)

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)

Subscribe to package updates

Last updated Apr 12th, 2011

Download Stats

Last month:2

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.