コード例 #1
0
 /**
  * @param FacadeInterface $facade
  * @param NodeInterface   $node
  *
  * @return FacadeInterface
  */
 protected function addPreviewLinks(FacadeInterface $facade, NodeInterface $node)
 {
     if ($this->hasGroup(CMSGroupContext::PREVIEW) && ($site = $this->siteRepository->findOneBySiteId($node->getSiteId()))) {
         /** @var SiteAliasInterface $alias */
         $encryptedId = $this->encrypter->encrypt($node->getId());
         foreach ($site->getAliases() as $aliasId => $alias) {
             if ($alias->getLanguage() == $node->getLanguage()) {
                 $facade->addPreviewLink($this->getPreviewLink($node->getScheme(), $alias, $encryptedId, $aliasId));
             }
         }
     }
     return $facade;
 }
コード例 #2
0
 /**
  * @param FacadeInterface $facade
  * @param GroupInterface  $group
  *
  * @return FacadeInterface
  */
 protected function addLinks(FacadeInterface $facade, GroupInterface $group)
 {
     if ($this->authorizationChecker->isGranted(AdministrationPanelStrategy::ROLE_ACCESS_GROUP)) {
         $facade->addLink('_self', $this->generateRoute('open_orchestra_api_group_show', array('groupId' => $group->getId())));
     }
     if ($this->authorizationChecker->isGranted(AdministrationPanelStrategy::ROLE_ACCESS_DELETE_GROUP)) {
         $facade->addLink('_self_delete', $this->generateRoute('open_orchestra_api_group_delete', array('groupId' => $group->getId())));
     }
     if ($this->authorizationChecker->isGranted(AdministrationPanelStrategy::ROLE_ACCESS_UPDATE_GROUP)) {
         $facade->addLink('_self_form', $this->generateRoute('open_orchestra_backoffice_group_form', array('groupId' => $group->getId())));
         $facade->addLink('_self_edit', $this->generateRoute('open_orchestra_api_group_edit', array('groupId' => $group->getId())));
         $this->eventDispatcher->dispatch(GroupFacadeEvents::POST_GROUP_TRANSFORMATION, new GroupFacadeEvent($group, $facade));
     }
     if ($this->authorizationChecker->isGranted(AdministrationPanelStrategy::ROLE_ACCESS_CREATE_GROUP)) {
         $facade->addLink('_self_duplicate', $this->generateRoute('open_orchestra_api_group_duplicate', array('groupId' => $group->getId())));
     }
     return $facade;
 }
コード例 #3
0
 /**
  * @param FacadeInterface $facade
  * @param NodeInterface   $node
  * @param AreaInterface   $area
  * @param string          $areaId
  */
 protected function addLinksFromNode(FacadeInterface $facade, NodeInterface $node, AreaInterface $area, $areaId)
 {
     $facade->addLink('_block_list', $this->generateRoute('open_orchestra_api_block_list_with_transverse', array('language' => $node->getLanguage())));
     $facade->addLink('_self_update_block_position', $this->generateRoute('open_orchestra_api_area_update_block_position', array('nodeId' => $node->getNodeId(), 'language' => $node->getLanguage(), 'version' => $node->getVersion(), 'siteId' => $node->getSiteId())));
 }