コード例 #1
0
 /**
  * Try selecting abstract page by request parameter.
  * 
  * @param string $key
  * @return null|AbstractPage
  */
 private function searchPageByRequestKey($key)
 {
     $pageId = $this->getRequestParameter($key);
     if (empty($pageId)) {
         return null;
     }
     return $this->getEntityManager()->find(AbstractPage::CN(), $pageId);
 }
コード例 #2
0
ファイル: GroupPage.php プロジェクト: sitesupra/sitesupra
 /**
  * Groups are inside the same repository as the pages
  * @return string
  */
 public function getNestedSetRepositoryClassName()
 {
     return Abstraction\AbstractPage::CN();
 }
コード例 #3
0
ファイル: PageManager.php プロジェクト: sitesupra/sitesupra
 /**
  * @param AbstractPage $source
  * @return AbstractPage
  */
 public function copyAbstractPage(AbstractPage $source)
 {
     $deepCopy = new DeepCopy();
     $entityManager = $this->container->getDoctrine()->getManagerForClass(get_class($source));
     $deepCopy->addFilter(new KeepFilter(), new PropertyMatcher(AbstractPage::CN(), 'nestedSetNode'));
     $this->addDeepCopyCommonFilters($deepCopy, $entityManager);
     $copiedPage = $deepCopy->copy($source);
     $entityManager->persist($copiedPage);
     return $copiedPage;
 }