Saturday, April 25, 2009

How to reposition drafts using the Web Content Management v6.1 API

Problem
Unlike Web Content Management version 5.1, in version 6.1, the API method getAllChildren does not return drafts in-line. Instead drafts are returned after the order list of published and expired items, limiting the users' ability to view the position changes made to draft items and to view the overall position of the elements within a site area.

Symptom
The getAllChildren method does not return drafts in order.

Cause
Drafts are not included in the main hierarchy for version 6.x.

Resolving the problem
Drafts can be repositioned using the method moveSiteFrameworkDocument.


The getAllChildren method will not return the draft item in order, however once the item is published, the order will be as specified/set by the moveSiteFrameworkDocument method.

Drafts are not included in the main hierarchy for version 6.x. Although the drafts can be repositioned with moveSiteFrameworkDocument, the results returned by getAllChildren(int) will not correctly order draft items. Draft items are always returned after the other items.

Workaround :
You may create a workflow to make the item published with restricted access to sort out this issue