Olivier Grisel wrote:
Hi list, hi Jean Marc,

I have implemented a simple two panes user dashboard with a theme/page <=> ViewId association. Currently it displays only the user's tasks and the result
of the search last modified documents as two seperated fragments:

  http://public.dev.nuxeo.com/~ogrisel/shots/dashboard.png

Once we have implemented custom queries (http://jira.nuxeo.org/browse/NXP-381) I plan to add more "search results" fragments (like the former content portlets)
to the default user dashboard (+ other in the long term such as a feed
aggregation fragment for instance).

It would be nice (and already requested by our customers) to be able to make those fragments foldable and movable (reordering) inside the two columns by each user of the application. This looks like a good use case for the perspective engine with cookie storage but I do not know how to flag the fragments we allow the user to move and those the user cannot + this need a specific engine that is a mix between the default engine and the editor engine to be able to reorder fragment my D&D. The final goal is to get something like netvibes in terms of
look and feel.

What do you think? Are their plans to implement such use case ?

Best,


Hi,

I would say that the "difficulty" in implementing such a functionality is not in the rendering engine itself. It is easy already to define a special rendering engine in XML with an extra "drag-and-drop" filter that manages the position of the fragments. Then it would be possible already to associate this engine to the dashboard view id. The only real issue is rather where to store to information about the fragments (position, state...).

Let us say that for the sake of simplicity we store the information in a cookie and that the fragments are pre-defined in the theme itself (i.e they exist in the theme already and the user has the freedom to manipulate them, but not to create new ones).

A neat solution would be to have a filter that does a pre-transformation on the cells containing fragments by reordering them before they get rendered, for instance a:

1 -> 3
2 -> 2
3 -> 1

1 -> fold
2 -> minimize


The rendering engine works on a copy of the theme already, and if it's not the case I should fix this, to make sure that rendered themes are not "mutable" w.r.t transformation filters - if you see what I mean.

What kind of persistence are you thinking of: client-side or server-side?

/JM




_______________________________________________
ECM mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm

Reply via email to