public function removeObject(eZContentObject $contentObject) { $contentObject->purge(); }
public function remove() { $this->object->removeThis(); $this->object->purge(); }
/** * Removes content object * * @param eZContentObject $object * @return bool true if object was removed, otherwise false */ public function removeObject(eZContentObject $object) { $objectName = $object->attribute('name'); $this->debug('Removing "' . $objectName . '" object (class: ' . $object->attribute('class_name') . ') with remote ID ' . $object->attribute('remote_id')); $this->db->begin(); $object->resetDataMap(); eZContentObject::clearCache($object->attribute('id')); if (is_null($object->attribute('main_node'))) { $object->purge(); $this->db->commit(); $this->debug('[Removed] "' . $objectName . '"'); return true; } else { $removeNodeIDs = array($object->attribute('main_node')->attribute('node_id')); $nodeAssigments = eZNodeAssignment::fetchForObject($object->attribute('id')); foreach ($nodeAssigments as $assigment) { $node = $assigment->attribute('node'); if ($node instanceof eZContentObjectTreeNode) { $removeNodeIDs[] = $node->attribute('node_id'); } } $removeNodeIDs = array_unique($removeNodeIDs); $info = eZContentObjectTreeNode::subtreeRemovalInformation($removeNodeIDs); foreach ($info['delete_list'] as $deleteItem) { $node = $deleteItem['node']; if ($node === null) { continue; } if ($deleteItem['can_remove']) { eZContentObjectTreeNode::removeSubtrees(array($node->attribute('node_id')), false); $this->debug('[Removed] "' . $objectName . '", Node ID: ' . $node->attribute('node_id'), array('red')); } } $this->db->commit(); } return false; }