def _update_workspace_groupings(obj, event): """ If the relevant object is inside a workspace, the workspace grouping parameters (for the sidebar) need to be updated. """ parent = parent_workspace(obj) if parent is None or not IGroupingStoragable.providedBy(parent): return storage = getAdapter(parent, IGroupingStorage) if IObjectRemovedEvent.providedBy(event) or IObjectWillBeRemovedEvent.providedBy(event): storage.remove_from_groupings(obj) else: storage.update_groupings(obj)
def _update_workspace_groupings(obj, event): """ If the relevant object is inside a workspace, the workspace grouping parameters (for the sidebar) need to be updated. """ parent = parent_workspace(obj) if parent is None or not IGroupingStoragable.providedBy(parent): return storage = getAdapter(parent, IGroupingStorage) if IObjectRemovedEvent.providedBy(event) or \ IObjectWillBeRemovedEvent.providedBy(event): storage.remove_from_groupings(obj) else: storage.update_groupings(obj)
def content_object_moved(obj, event): # ignore if oldParent or newParent is None or if obj has just # been created or removed if event.oldParent is None or event.newParent is None: return if aq_base(event.oldParent) is aq_base(event.newParent): return if IGroupingStoragable.providedBy(event.oldParent): old_storage = getAdapter(event.oldParent, IGroupingStorage) old_storage.remove_from_groupings(obj) if IGroupingStoragable.providedBy(event.newParent): new_storage = getAdapter(event.newParent, IGroupingStorage) new_storage.update_groupings(obj) # Since OFS.CopySupport.manage_pasteObjects is called without a REQUEST # parameter, cb_dataValid() will still be true, because __cp will not # be reset. We do that manually here, so that the "paste" action will # disappear from the action list. request = getattr(obj, "REQUEST", None) if request: request["RESPONSE"].setCookie( "__cp", "deleted", path="%s" % cookie_path(request), expires="Wed, 31-Dec-97 23:59:59 GMT" ) request["__cp"] = None
def content_object_moved(obj, event): # ignore if oldParent or newParent is None or if obj has just # been created or removed if event.oldParent is None or event.newParent is None: return if aq_base(event.oldParent) is aq_base(event.newParent): return if IGroupingStoragable.providedBy(event.oldParent): old_storage = getAdapter(event.oldParent, IGroupingStorage) old_storage.remove_from_groupings(obj) if IGroupingStoragable.providedBy(event.newParent): new_storage = getAdapter(event.newParent, IGroupingStorage) new_storage.update_groupings(obj) # Since OFS.CopySupport.manage_pasteObjects is called without a REQUEST # parameter, cb_dataValid() will still be true, because __cp will not # be reset. We do that manually here, so that the "paste" action will # disappear from the action list. request = getattr(obj, 'REQUEST', None) if request: request['RESPONSE'].setCookie( '__cp', 'deleted', path='%s' % cookie_path(request), expires='Wed, 31-Dec-97 23:59:59 GMT') request['__cp'] = None