Skip to main content

A tile that shows a set of collection results with a customizable layout

Project description

A tile that shows collection results with customizable layouts

Features

  • Emulates the old portlet collection behaviors

  • Mosaic-ready

  • Additional css class field, to append a custom css class to the tile container

  • Customizable layouts list

Installation

Install collective.tiles.collection by adding it to your buildout:

[buildout]
...
eggs =
    collective.tiles.collection

and then running bin/buildout

Usage

You can’t use this tile without a tile manager (or maybe, you can if you create new tiles manually in some specific context) like Mosaic or redturtle.tiles.management

When you try to create a new collection tile, you have a form like the portlet’s one.

Customizable layouts

When you create/edit a collection tile, there is a field that allows you to select the final layout from a list. This list is generated with a specific set of view that satisfy following rules:

  • The Class must implement ICollectiveTilesCollectionLayer interface

  • In the Class there should be an attribute display_name with a human-readable title

  • The template need to define a macro called collection-tile-macro

This is an example:

configure.zcml:

<browser:page
    name="additional_renderer"
    permission="zope2.View"
    for="*"
    class=".additional_render.View"
    layer=".interfaces.ISomeBrowserLayer"
    template="additional_render.pt"
/>

additional_render.py:

from Products.Five.browser import BrowserView
from collective.tiles.collection.interfaces import ICollectionTileRenderer
from zope.interface import implements
from collective.tiles.collection import _


class AdditionalView(BrowserView):
    implements(ICollectionTileRenderer)

    display_name = _("Another tile layout")

additional_render.pt:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
      xmlns:tal="http://xml.zope.org/namespaces/tal"
      xmlns:metal="http://xml.zope.org/namespaces/metal"
      xmlns:i18n="http://xml.zope.org/namespaces/i18n"
      lang="en"
      metal:use-macro="here/main_template/macros/master"
      i18n:domain="collective.tiles.collection">
  <body>
    <metal:macro define-macro="collection-tile-macro">
      ...
    </metal:macro>
  </body>
</html>

Translations

This product has been translated into

  • Italian

Contribute

License

The project is licensed under the GPLv2.

Contributors

Changelog

0.1.1 (2018-10-12)

  • Fix templates [nzambello]

0.1.0 (2018-10-12)

  • Plone 4 compatibility branch. From now we use 0.x.x version number. [cekk]

1.1 (11/10/2017)

  • Production release [lucabel]

1.0a3 (unreleased)

  • Nothing changed yet.

1.0a2 (2017-09-13)

  • Removed unused css class [cekk]

1.0a1 (2017-03-31)

  • Initial release. [cekk]

  • Fix indentation on README.rst

Project details


Download files

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

Source Distribution

collective.tiles.collection-0.1.1.tar.gz (21.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page