/** * @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; }
/** * @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; }
/** * @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()))); }