Webcoutier.dropdownmenu and News Folder

I added an ordering adapter that prepends like so:

from plone.folder.default import DefaultOrdering


class PrependOrdering(DefaultOrdering):
    """prepend new added content"""

    def notifyAdded(self, id):
        """
        Inform the ordering implementation that an item was added
        """
        order = self._order(True)
        pos = self._pos(True)
        order.insert(0, id)
        pos.clear()
        for n, id in enumerate(order):
            pos[id] = n

and registered like so:

  <adapter
      factory=".ordering.PrependOrdering"
      name="prepend"
  />

Then you just need a snippet of code somehwere setting the ordering. I did this on a type basis with a subscriber like so:

def handler_set_ordering(obj, event):
    """subscriber to set ordering
    """
    if getattr(aq_base(obj), 'portal_type', '') not in PREPEND_ORDERING_TYPES:
        return
    obj.setOrdering('prepend')

and registered it like so:

  <subscriber
      for="*
           zope.lifecycleevent.interfaces.IObjectAddedEvent"
      handler=".content.handler_set_ordering"
  />

but you can set it with a view as well.