I’ve written a Data Extender class and editor extension that properly displays a few additional columns for items as you browse lists in the CME (folders and structure groups). I had to register my class to handle commands like GetList, GetListSearch, GetListUserFavorites, and GetListCheckedOutItems.
What I’ve noticed is that the code gets run even when a list of say, schemas is loaded for a drop-down list in the CME (like when creating a new component and you get the list of schemas in a drop-down). so, even though my additional data columns aren’t needed in that situation, the code is still being executed and it slows things down.
It seems that it’s the GetList command called in those situations. So, I can’t just skip processing based on the command. So, I started looking at the XML that the class receives for the list and I’ve noticed when the code is run for the drop-downs, there’s a Managed="0" in the XML. For example:
- For a Structure Group list:
<tcm:ListItems Managed="64" ID="tcm:103-546-4"> - For a Folder list:
<tcm:ListItems Managed="16" ID="tcm:103-411-2"> - But for a Schema list:
<tcm:ListItems ID="tcm:0-103-1" Managed="0"> - For a drop-down showing keyword values for a category:
<tcm:ListItems Managed="0" ID="tcm:103-506-512">
So, can I just use this Managed=”0″ as a flag to indicate that the list being processed isn’t going to show my additional columns and I can just quit processing?
Managedvalue is representation of what items can be created insideOrganizationItem:The value is 0 for non organizational items.
Value depends on the item itself (you can’t create pages in folder, for example), as well as on security settings you have on publication and organizational item