Skip to main content

Provides moPage integration for Plone.

Project description


ftw.mopage provides a plone xml interface for the moPage CMS of anthrazit.

The package registers tree views:

  • mopage_news.xml

  • mopage_events.xml

  • mopage_geolocations.xml

If you call a view, a new xml will be generated on the filesystem and will be downloaded.


The package is compatible with Plone 4.x.


Add ftw.mopage to your buildout configuration:

eggs =

Marker Interfaces

  • IMopageExporter

  • IMopageEvent

  • IMopageGeolocation

  • IMopageNews

Adapters Interfaces

  • IMopageObjectLookup (context, request)

  • IMopageEventObjectLookup

  • IMopageNewsObjectLookup

  • IMopageGeolocationObjectLookup

  • IMopageDataProvider (context, request)

  • IMopageGeolocationDataProvider

  • IMopageEventDataProvider

  • IMopageNewsDataProvider

  • IMopageDataValidator (context, request, dataprovider)

  • IMopageGeolocationDataValidator

  • IMopageEventDataValidator

  • IMopageNewsDataValidator

  • IMopageXMLGenerator (context, request)

  • IMopageGeolocationXMLGenerator

  • IMopageEventXMLGenerator

  • IMopageNewsXMLGenerator


If you call export view, the following steps will be execute in the given order:

Get Objects

  1. Get MopageObjectLookup multiadapter

  2. Call get_brains method of MopageObjectLookup

Get Data

  1. Get MopageDataProvider multiadapter with every object

  2. Call get_data method of MopageDataProviders

Validate Data

  1. Get MopageDataValidator multiadapter of every objects dataprovider

  2. Call validate method of MopageDataValidator

Abort or Continue

  1. If the MopageDataValidator raises an error, we abort the export

  2. If the MopageDataValidator validation is valid, we continue exporting data

Create the xml string

  1. Get MopageXMLGenerator multiadapter

  2. Call generate_xml_string method of MopageXMLGenerator

Return the string

  1. Return the xml string as xml download file


You need to mark your content types as MopageExporters.

To get the data of a MopageExporter, you need to override the specific MopageDataProvider to implement the dataexport.

Mark new content type as a specific MopageExporter

>>> from zope.interface import implements
>>> from Products.ATContentTypes.content.file import ATFile
>>> from ftw.mopage.interfaces import IMopageNews

>>> class File(ATFile):
...     implements(IFile, IMopageNews)

Mark existing content type as a specific MopageExporter





Override specific MopageDataProvider





>>> from ftw.mopage.data_provider import MopageNewsDataProvider

>>> class NewsDataProvider(MopageNewsDataProvider):

...     def get_data(self):
...         data = {
...             'id': 'äxx',
...             'titel': 'abc123',
...             'textmobile': 'abc123',
...             'datumvon': 'abc123',
...             'mutationsdatum': 'abc123',
...         }
...         return data

Additional information

In the docs-directory you find the official moPage interface documentation on Anthrazit-side.


1.0 (2016-11-01)

  • Initial release

Release history Release notifications | RSS feed

This version


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftw.mopage-1.0.tar.gz (316.3 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page