collective.geo.behaviour

collective.geo Dexterity integration

Project Description

Introduction

This package provides the ability to assign geographical information to Dexterity-based (plone.app.dexterity) content types within Plone and does so using collective.geo.geographer and collective.geo.mapwidget.

By applying the behaviour Collective Geo Maps to a Dexterity content type, a Coordinates field becomes available when creating or editing said content.

This allows a user to either look-up coordinates for a place or feature via geo-coding, draw a geographical feature (such as a point, line or polygon) on a map, or enter details manually in Well-Known Text (WKT) format.

Collective.geo.behaviour also provides Collective Geo Styles behaviour. By this behaviour it is possible to customize the style of the features that will be displayed on the map for each content type.

Geographical information can be used by the rest of the collective.geo set of packages. For instance, the coordinates can be displayed on maps against Collections or Folders using collective.geo.kml.

Found a bug? Please, use the issue tracker.

Installation

This addon can be installed has any other addons, please follow official documentation.

About the Maps behaviour

The behaviour adds a coordinates field to the content type and uses a collective.z3cform.mapwidget widget in order to allow the user to manipulate the geographic information.

The behaviour effectively acts as a proxy to load and save the data into the relevant location by querying for an collective.geo.geographer.interfaces.IGeoreferenced adapter and collective.geo.geographer.interfaces.IWriteGeoreferenced respectively for the given context.

This means that changes made upon as edits to the content object and changes made in the Coordinates tab are both modifying exactly the same data.

Usage

Once your type configuration has the Collective Geo Maps behaviour applied, then content objects of said type will be marked as georeferenceable for collective.geo.geographer. This is achieved through the marker interface collective.geo.geographer.interfaces.IGeoreferenceable.

Through the web

If you are configuring your Dexterity-based type through the web-based interface, then proceed to edit your content type in the Dexterity Content Types control panel. Under the Behaviours tab you will find the Collective Geo Maps behaviour -- select this and save your content type.

In the same way you could choose Collective Geo Styles in order to assing the other behaviour.

Upon adding or editing an object of your content type, you will see the new field accordingly.

Generic Setup (file system)

If you've created a file-system Dexterity type configuration, you need to specify the relevant interfaces as a behaviour:

collective.geo.behaviour.interfaces.ICoordinates
collective.geo.behaviour.interfaces.IGeoFeatureStyle

and import or re-import your type configuration. As an example, a type configuration at ${product_dir}/profiles/default/types/my.datatype.xml would look like this:

<?xml version="1.0"?>
<object name="my.datatype"
   meta_type="Dexterity FTI"
   i18n:domain="tdh.metadata" xmlns:i18n="http://xml.zope.org/namespaces/i18n">
    ...
    <property name="behaviors">
      <element value="collective.geo.behaviour.interfaces.ICoordinates" />
      <element value="collective.geo.behaviour.interfaces.IGeoFeatureStyle" />
    </property>
    ...
</object>

Changelog

1.1 (2014-02-26)

  • Move robot tests to collective.geo.bundle and add dexterity test [gborelli]
  • Add Collective Geo Styles behavior to manage features' style [gborelli]
  • Fix for custom style tab is not working properly [bogdangi]
  • Fix for issue https://github.com/collective/collective.geo.geographer/issues/5 [bogdangi]
  • Added German translation [href]

1.0 (2013-10-29)

  • Change package layout [gborelli]
  • Remove dependency on Grok [jianaijun]

1.0b2 (2013-06-02)

  • Nothing changed yet.

1.0b1 (2013-06-02)

  • Add install profile [gborelli]
  • Removed dependency from rwproperty [gborelli]
  • Unwrap behaviour context, it raises an error when Dexterity object is georeferenced [gborelli]
  • Removed Shapely dependency, added pygeoif [gborelli]
  • Added support for Spanish localization [macagua]
  • Added improvements about the Internationalization [macagua]

Current Release
collective.geo.behaviour 1.1

Released Feb 26, 2014 — tested with Plone 4.3, Plone 4.2

Improved Maps behaviour and added Collective Geo Styles behaviour
More about this release…

Download file Get collective.geo.behaviour for all platforms
collective.geo.behaviour-1.1.zip
If you are using Plone 3.2 or higher, you probably want to install this product with buildout. See our tutorial on installing add-on products with buildout for more information.

All Releases

Version Released Description Compatibility Licenses Status
1.1 Feb 26, 2014 Improved Maps behaviour and added Collective Geo Styles behaviour More about this release…
Plone 4.3
Plone 4.2
GPL final
1.0 Oct 29, 2013 first stable release More about this release…
Plone 4.3
Plone 4.2
Plone 4.1
Plone 4
GPL final