Folderish News Item, Document and Event as replacement for default types.
Provides the types “Folderish Event”, “Folderish News Item” and “Folderish Document” as replacements for their ATContentTypes equivalents. Those types are able to hold any other content, like a Folder.
There is a “portlet” profile, which installs a portlet to show the contents of an folderish type.
You can limit the types, which can be added to FolderishTypes by providing a Generic Setup import type configuration.
The reason for this package is, that in my experience it’s easier to group related content together at one place. An article about something fancy might have an image gallery associated with it as well as some pdf-downloads. With this package you can put everyting inside the article. Another use case is that you can structure content hierarchically and don’t need to define “default pages” - a concept hard to understand and handle (see: http://www.sixfeetup.com/blog/plone-vs.-drupal-core-features-comparison )
Alexander Limi also wished folderish content back in 2008: “#10: Content re-use is overrated — people like folderish” http://limi.net/articles/18-things-i-wish-were-true-about-plone/
To use collective.folderishtypes with Archetypes, depend on the dexterity extras_require in setup.py or buildout like so:
For the dexterity version, like so:
How to migrate Products.PloneArticle documents to Folderish Document
A upgrade step “PloneArticle to Folderish Document” in the collective.folderishtypes default profile for migrating PloneArticle objects to Folderish Document objects is provided. Note, this does not cover PloneArticleMultiPage at the moment.
How to migrate non-folderishtypes to folderish ones
Non-folderish content types are missing some btree attributes, which folderish content types have (See Products.BtreeFolder2.BTreeFolder2Base._initBtrees ).
plone.app.folder provides an upgrade view to migrate pre-plone.app.folder (or non-folderish) types to the new Btree based implementation (defined in: plone.app.folder.migration.BTreeMigrationView).
To upgrade your non-folderish content types to folderish ones, just call @@migrate-btrees on your Plone site root, and you’re done.
- Depend on z3c.jbot, so that overriding folder_listing and folder_summary_view might also work at IPloneSite root.
- Write tests
- See, if this portlet is useful: https://github.com/RedTurtle/collective.portlet.localcontents
Plone 4, Plone 5
- Use ‘getAllowedSizes’ from CMFPlone if available to allow AT free use [tomgross]
- Change portlets to support z3c.form and make it Plone 5 compatible (no more formlib). [thet]
- Configure folderish types to use the plone.content.itemView caching ruleset instead the folderView one. [thet]
- Fix redirection to parent context after editing for Archetypes. We cannot import something from Acquisition in a Filesystem script. [thet]
- Plone 5 + 4 safe call of the @@folder_listing listing_macro. [thet]
- Provide a redirectparent.zcml file. When loading it the user is redirected to the parent folder after adding or editing. This avoids confusing behavior of creating nested content structures, while one might add multiple content items to one folder. For consistency reasons, this is done for all types. For Archetypes, this behavior is enabled by default. [thet]
- Add a browserlayer for collective.folderishtypes including the .at and .dx sub packages together with upgrade steps. Bind relevant browser views to these browser layers. [thet]
- Allow “Site Administrator” to add ATContentTypes based Folderish Content Types. [thet]
- Better PloneArticle migration: Set content_type and filename for files and images. Plus: migrate contentleadimage, if available. [thet]
- Update unsintall profiles. [thet]
- Fix broken release [rnix]
- Add ISelectableConstrainTypes to behaviors of Dexterity folderish types. [agitator]
- Add content listing viewlet. [agitator]
- Add migration step for Products.PloneArticle objects to Archetypes based foldersh document objects. [thet]
- Initialize permissions and roles for Archetypes foldersh types. [thet]
- Dexterity support. [thet]
- In folder_summary_view do a more sane check, if an image is available. [thet]
- Remove bobo_traverse in Foldersh News Item, since plone.app.imaging does the traversing. [thet]
- Remove vCalendar action entry from FTI config of Folderish Event. [thet]
- More documentation: How To create own content types based on collective.folderishtypes, How to migrate non-folderishtypes to folderish ones. [thet]
- Update translations and translate folder_listing. [thet]
- Add z3c.autoinclude.plugin entry point. [thet]
- Let the folderish types derive from Products.ATContentTypes ATFolder instead of plone.app.folder’s implementation. It inherits some i18n classes. This fixes the issue that on translation of folderish types LinguaPlone’s translation view wasn’t shown. [thet]
- Give the original, non-folderish types another title, so that they can be easily kept apart from the folderish ones. [thet]
- For folderish events, move the location field back to the main schemata. [thet]
- Allow discussions from plone.app.discussion on Folderish Types. [thet]
- CSS fix [rnix]
- Removed folderish=True when finalizing the schema, which prevented relateditems from being displayed. Updated import to plone.app.folder. [agitator]
- Fix meta types in FTI to follow consistent conventions. [rnixx]
- For Folderish Event, use plone.app.event’s ATEvent implementation if available. [thet]
- Add a custom style class for the contextual contents portlet based on the portlet’s name. [thet]
- Add a contextual contents portlet, which shows the contents of folderish types in a portlet. [thet]
- No Changes, release as 1.0 final. [thet]
- Updated documentation: Missing viewlet issue. [thet]
- Locales Update. [thet]
- Add types to image_types in portal_atct to allow image scale recreation. [thet]
- Add HistroyAwareMixin and configure types to be versionable. [thet]
- Remove folderish_listing_viewlet, since there is already a portlet which can be used. [thet]
- Include CSS via link instead of import, which can then be better processed by XML manipulation tools like Deliverance or Diazo. [thet]
- More explicit content-icons background styles which don’t override background-color. [thet]
- Use plone.app.imaging scales - apply a schema patch to FolderishNewsItem. [thet]
- Fixed traversing to image scales for FolderishNewsItem. Subclasses should implement __bobo_traverse__ too. [thet]
- Add rolemap.xml for generic setup to have proper configured permissions. [thet]
- Make portlet registration optional and register portlets only for folderish types. [thet]
- Updated folder_listing.pt and folder_summary_view.pt to current Plone trunk. [thet]
- Initial release