コード例 #1
0
 public function preRemove(EventArgs $args)
 {
     $chain = $this->container->get('oneup_acl.driver_chain');
     $manager = $this->container->get('oneup_acl.manager');
     $remove = $this->container->getParameter('oneup_acl.remove_orphans');
     if ($args instanceof \Doctrine\ODM\MongoDB\Event\LifecycleEventArgs) {
         $entity = $args->getDocument();
     } else {
         $entity = $args->getObject();
     }
     $object = new \ReflectionClass($entity);
     $metaData = $chain->readMetaData($object);
     if ($remove && (!isset($metaData['remove']) || $metaData['remove']) || !$remove && isset($metaData['remove']) && $metaData['remove']) {
         $manager->revokeAllObjectPermissions($entity);
         $manager->revokeAllObjectFieldPermissions($entity);
     }
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 protected function getMedia(EventArgs $args)
 {
     return $args->getDocument();
 }
コード例 #3
0
 /**
  * {@inheritDoc}
  */
 public function getObjectFromArgs(EventArgs $e)
 {
     return $e->getDocument();
 }