collective.sortmyfolder

by Luca Fabbri last modified Nov 13, 2012 08:54 AM

Reveal some not-so-hidden Plone feature for sorting your folders

Project Description

Introduction

The piece of software that make it possible to sort items in Plone contains hidden additional features.

Normally, when you call a sort action in Plone, you call a URL like this:

http://myhost/myfolder/folder_position?position=up&id=content_id

... of course, KSS/jQuery stuff in recent Plone versions will hide this feature, but is still available when you disable Javascript.

The Plone UI has no way at the moment for performing actions like this:

http://myhost/myfolder/folder_position?position=ordered&id=fieldname

But this feature is inside Plone: in this way you will sort a folder automatically, using a field value for comparison (like "title", or "created").

The folder_position script uses the orderObjects API. This last method has some additional nice features that unluckily are not exposed to users. But we can fix this.

What this product does

This product adds to Plone some of the features that follow, patching Plone a little (see also #11317).

Can now sort a folder in reverse order

You can call an URL like this:

http://myhost/myfolder/folder_position?position=ordered&id=created&reverse=1

and this will sort the folder using reverse criteria.

Add "delta" criteria to the sorting mechanism

You can call:

http://myhost/myfolder/folder_position?position=up&id=content_id&delta=4

and this will move the content down by 4 slots instead of the default 1 (this feature is not so useful if you use Plone KSS/jQuery/Javascript sorting).

Add a nice Plone interface for global folder sorting

Your "Action" menu will be populated with a new entry: "Sort folder". This will present the user a Plone form where he can perform common sorting operations.

Sort my folder form

The last option makes it possible for users to specify a custom attribute that's not in the list; if you don't like this, just add a CSS rules which hides the choice_custom_field element. Use of this last option needs some Javascript to be executed.

What this product isn't

This product only reveals features that are already in Plone (inside the orderObjects method). It will not add new sorting behaviour.

Alternative products

On pypi there is a newer product that upgrades base folder_contents view with more features (like different sorting methods, multiple upload or shift-click selection): pypi.python.org/pypi/wildcard.foldercontents

Dependencies

Testing for collective.sortmyfolder has been done on:

  • Plone 3.3
  • Plone 4.2

Credits

Developed with the support of S. Anna Hospital, Ferrara

S. Anna Hospital - logo

S. Anna Hospital supports the PloneGov initiative.

Authors

This product was developed by RedTurtle Technology team.

RedTurtle Technology Site

Changelog

1.0.5 (2012-11-13)

  • Fixed manifest for rst files [micecchi]

1.0.4 (2012-11-13)

  • Fixed uninstall step for skin layer [micecchi]

1.0.3 (2012-10-14)

1.0.2 (2011-11-14)

  • Set the icon_expr in actions.xml so we register the action icon in the preferred way in Plone 4. We keep actionicons.xml for backwards compatibility with Plone 3. [maurits]
  • No longer use the plone domain for our action as portal_actions accepts other domains too. This means we no longer need the i18n directory. Added an upgrade step to switch our action to use collective.sortmyfolder as domain. [maurits]
  • Added MANIFEST.in so .mo files can be included in the release (automatically when using zest.releaser+zest.pocompile). [maurits]
  • Made compatible with Plone 4.1. [maurits]

1.0.1 (2011-04-20)

  • Updated Dutch translations [fvandijk]
  • Corrected english spelling in README.txt [fvandijk]

1.0.0 (2011-04-06)

  • added new dates sorting criteria [keul]
  • added the field for a custom way to sort [keul]
  • do not show the menu entry if you can't sort the current object [keul]
  • added some javascript for the new custom field. Not enabled js browser will no be able to use the new feature [keul]
  • tested also on Plone 4

0.2.0 (2011-01-07)

  • fixed typo syntax error in english text [markvl]
  • added dutch translation [markvl]

0.1.0 (2010-12-02)

  • initial release

Self-Certification

[X] Internationalized

[ ] Unit tests

[X] End-user documentation

[ ] Internal documentation (documentation, interfaces, etc.)

[X] Existed and maintained for at least 6 months

[ ] Installs and uninstalls cleanly

[X] Code structure follows best practice

Current Release
collective.sortmyfolder 1.0.5

Released Nov 13, 2012 — tested with Plone 4.2, Plone 4.1, Plone 4, Plone 3

fixed manifest
More about this release…

Download file Get collective.sortmyfolder for all platforms
collective.sortmyfolder-1.0.5.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.0.5 Nov 13, 2012 fixed manifest More about this release…
Plone 4.2
Plone 4.1
Plone 4
Plone 3
GPL final
1.0.4 Nov 13, 2012 fixed uninstall step More about this release…
Plone 4.2
Plone 4.1
Plone 4
Plone 3
GPL final
1.0.3 Oct 14, 2012 Moved to github. More about this release…
Plone 4.2
Plone 4.1
Plone 4
Plone 3
GPL final
1.0.2 Nov 14, 2011 Migration to Plone 4.1 More about this release…
Plone 4.1
Plone 4
Plone 3
GPL final
1.0.1 Apr 20, 2011 Updated dutch translation More about this release…
Plone 4
Plone 3
GPL final
1.0.0 Apr 06, 2011 Final release More about this release…
Plone 4
Plone 3
GPL final
0.2.0 Jan 07, 2011 Translation release More about this release…
Plone 3
GPL final
0.1.0 First releease More about this release…
Plone 3
GPL beta