Пример #1
0
 /**
  * @param integer $nodeId
  * @param integer $slotId
  * @param array   $params
  *
  * @return string
  */
 public function renderSingleSlot($nodeId = null, $slotId = 1, $params = array())
 {
     $params['id'] = $slotId;
     $disableEditor = isset($params['_disable_editor']) && $params['_disable_editor'] ? true : false;
     if ($this->editMode->isEditMode() && !$disableEditor) {
         return '<div class="jarves-slot jarves-single-slot" params="' . htmlspecialchars(json_encode($params)) . '"></div>';
     }
     if (!$nodeId) {
         $nodeId = $this->pageStack->getCurrentPage()->getId();
     }
     $contents = $this->getSlotContents($nodeId, $slotId);
     return $this->renderSlotContents($contents, $params);
 }
Пример #2
0
 /**
  * Build the page and return the PageResponse.
  *
  * Checks for links, mounts etc.
  *
  * @return Response
  * @throws AccessDeniedException
  * @throws \Exception
  */
 public function handleAction()
 {
     $node = $this->pageStack->getCurrentPage();
     //is link
     if ($node->getType() == 1) {
         $to = $node->getLink();
         if (!$to) {
             throw new \Exception('Redirect failed: ' . sprintf('Current page with title %s has no target link.', $node->getTitle()));
         }
         if (intval($to) > 0) {
             return new RedirectResponse($this->pageStack->getNodeUrl($to), 301);
         } else {
             return new RedirectResponse($to, 301);
         }
     }
     if ($this->editMode->isEditMode()) {
         $this->editMode->registerEditor();
     }
     $pageResponse = $this->pageStack->getPageResponse();
     $pageResponse->renderContent();
     return $pageResponse;
     //new Response('<body>ho</body>');
 }
Пример #3
0
 /**
  * @return string
  */
 public function getLayout(Node $node)
 {
     if ($nodeId = (int) $this->pageStack->getRequest()->get('_jarves_editor_node')) {
         if ($this->editMode->isEditMode($nodeId)) {
             if ($layout = $this->pageStack->getRequest()->get('_jarves_editor_layout')) {
                 return $layout;
             }
         }
     }
     return $node->getLayout();
 }