Ejemplo n.º 1
0
 public function tryResolveParentObject(AbstractClassContent $parent, AbstractClassContent $element)
 {
     foreach ($parent->getData() as $key => $values) {
         if (!is_array($values)) {
             $values = array($values);
         }
         foreach ($values as $value) {
             if ($value instanceof AbstractClassContent) {
                 if (!$value->isLoaded()) {
                     // try to load subcontent
                     if (null !== ($subcontent = $this->getApplication()->getEntityManager()->getRepository(\Symfony\Component\Security\Core\Util\ClassUtils::getRealClass($value))->load($value, $this->getRenderer()->getApplication()->getBBUserToken()))) {
                         $value = $subcontent;
                     }
                 }
                 if ($element->equals($value)) {
                     $this->__currentelement = $key;
                     $this->__object = $parent;
                     $this->_parentuid = $parent->getUid();
                 } else {
                     $this->tryResolveParentObject($value, $element);
                 }
             }
             if (null !== $this->__currentelement) {
                 break;
             }
         }
         if (null !== $this->__currentelement) {
             break;
         }
     }
 }