Skip to main content

An alternative method for handling and showing tiles

Project description

A tiles management system, easier than plone.app.mosaic that uses plone.app.tiles and Mockup functionalities to build a simple UI.

Features

  • Simple UI to add/remove/edit registered tiles

  • Tiles sorting with drag-and-drop (thanks to mockup)

  • Base view and macro to be reused in custom templates

Usage

To use this feature, you only need to do 2 simple steps:

  1. Make you view implements IBlocksTransformEnabled interface:

    from plone.app.blocks.interfaces import IBlocksTransformEnabled
    from Products.Five import BrowserView
    from zope.interface import implementer
    
    @implementer(IBlocksTransformEnabled)
    class MyView(BrowserView):
        ...
  2. use a specific macro in the template, where you want to insert the tiles:

    <tal:tiles metal:use-macro="context/tiles_view/macros/tiles-macro" />
  3. the used tiles need to expose their id to allows the UI to handle correct actions:

    <div data-tileid="${view/id}">
      .. your tile html
    </div>

The last point can be improved because with this restriction we can’t use standard tiles, but only custom tiles.

After this, you see a new “Add tile” button in the view, and clicking on it, you can see a list of available tiles.

Translations

This product has been translated into

  • Italian

Installation

Install redturtle.tiles.management by adding it to your buildout:

[buildout]

 ...

 eggs =
     redturtle.tiles.management

and then running “bin/buildout”

Compatibility

This package is developed with mockup, so is fully compatible for Plone 5.

For Plone 4 there is an additional javascript with some mockup’s patterns used for drag and drop behavior.

You need to include two javascripts in your view template or register them in the global jsregistry. I don’t want to register globally these resources because they are used only in one single view:

  • ++resource++redturtle.tiles.management/mockup.min.js

  • ++resource++redturtle.tiles.management/integration.js

Contribute

License

The project is licensed under the GPLv2.

Contributors

Changelog

0.2.1 (2017-04-12)

  • Fixed resources import in tiles_view [pnicolli]

  • Fixed rolemap. Permission to edit tiles given to ‘Editor’ #10460 [arsenico13]

  • .DS_Store added to .gitignore and MANIFEST [arsenico13]

  • Fixed tiles edit link. This fixes the edit capability when a page is a default view for a folder. [arsenico13]

0.2.0 (2016-12-09)

  • Replaced unused plone.app.tiles.AddTile permission with “cmf.ModifyPortalContent” [cekk]

  • Add Plone4 compatibility [cekk]

  • Fix permission for add tile to “cmf.ModifyPortalContent” [arsenico13]

  • Add italian translations [cekk]

0.1.0 (2016-09-19)

  • Initial release. [cekk]

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

redturtle.tiles.management-0.2.1.tar.gz (418.5 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