Introduction
============

The piece of software that make possible sorting items in Plone contains hidden additional features.

Normally, when you call a sort action in Plone, you call an 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 today for performing action like this::

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

But the 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 use internally the *orderObjects* API. This last method has some additional nice feature that
unluckily *folder_position* not expone to users. But we can fix this.

What this product do
====================

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

__ http://dev.plone.org/plone/ticket/11317

Can now sort a folder in reverse order
--------------------------------------

You can call 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 slot instead of default 1 (this feature, if you use Plone KSS/jQuery/Javascript
sorting, is not so usefull).

Add a nice Plone interface for all those features
-------------------------------------------------

Your "*Action*" menu will be populated with a new entry: "*Sort folder*". This will give to the user a Plone form where
he can perform common sort operation.

What this product doesn't
=========================

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

Dependencies
============

Test for collective.sortmyfolder has been done on Plone 3.3.
Tests on Plone 4 are welcome. 

Authors
=======

This product was developed by RedTurtle Technology team.

.. image:: http://www.redturtle.net/redturtle_banner.png
   :alt: RedTurtle Technology Site
   :target: http://www.redturtle.net/

 