Esempio n. 1
0
 /**
  * @param [] $tree
  */
 public function buildViewReferenceRecursively($tree, $entityManager)
 {
     foreach ($tree as $branch) {
         /** @var WebViewInterface $view */
         $view = $branch['view'];
         $view->setReference($this->viewReferenceBuilder->buildViewReference($view, $entityManager));
         if (!empty($branch['children'])) {
             /** @var WebViewInterface $children */
             $children = $branch['children'];
             $this->buildViewReferenceRecursively($children, $entityManager);
         }
     }
 }
Esempio n. 2
0
 /**
  * @param [] $tree
  */
 public function buildViewReferenceRecursively($tree, EntityManager $entityManager, $isRoot = true)
 {
     foreach ($tree as $branch) {
         /** @var View $view */
         $view = $branch['view'];
         /** @var ViewTranslation $translation */
         foreach ($view->getTranslations() as $translation) {
             if (true === $isRoot || $translation->getLocale() == $view->getParent()->getCurrentLocale()) {
                 $view->setCurrentLocale($translation->getLocale());
                 $viewReference = $this->viewReferenceBuilder->buildViewReference($view, $entityManager);
                 if (!empty($branch['children'])) {
                     /** @var WebViewInterface $children */
                     $children = $branch['children'];
                     $this->buildViewReferenceRecursively($children, $entityManager, false);
                 }
                 $view->setReference($viewReference, $translation->getLocale());
             }
         }
     }
 }