public function renderSlot($slotName = null, $extraAttributes = "")
    {
        $this->checkSlotName($slotName);

        try {
            $slotContents = array();
            $pageTree = $this->container->get('red_kite_cms.page_tree');
            $blockManagers = $pageTree->getBlockManagers($slotName);

            foreach ($blockManagers as $blockManager) {
                if (null === $blockManager) {
                    continue;
                }

                $slotContents[] = $this->renderBlock($blockManager, null, false, $extraAttributes);
            }

            if (empty($slotContents) && $pageTree->isCmsMode()) {
                $slotContents[] = sprintf('<div data-editor="enabled" data-block-id="0" data-slot-name="%s" class="al-empty-slot-placeholer">%s</div>', $slotName, $this->translator->translate('twig_extension_empty_slot', array(), 'RedKiteCmsBundle'));
            }

            $content = implode(PHP_EOL, $slotContents);
            $content = TwigTemplateWriter::MarkSlotContents($slotName, $content);

        } catch (\Exception $ex) {
            $content = $this->translator->translate('twig_extension_slot_rendering_error', array('%slot_name%' => $slotName, '%error%' => $ex->getMessage()), 'RedKiteCmsBundle');
        }

        return sprintf('<div class="al_%s">%s</div>', $slotName, $content);
    }
public function renderSlot($slotName = null, $extraAttributes = "")
    {
        $this->checkSlotName($slotName);

        try {
            $slotContents = array();
            $pageTree = $this->container->get('red_kite_cms.page_tree');
            $blockManagers = $pageTree->getBlockManagers($slotName);

            foreach ($blockManagers as $blockManager) {
                if (null === $blockManager) {
                    continue;
                }

                $slotContents[] = $this->renderBlock($blockManager, null, false, $extraAttributes);
            }

            if (empty($slotContents) && $pageTree->isCmsMode()) {
                $slotContents[] = sprintf('<div data-editor="enabled" data-block-id="0" data-slot-name="%s" class="al-empty-slot-placeholer">%s</div>', $slotName, $this->translator->translate('twig_extension_empty_slot', array(), 'RedKiteCmsBundle'));
            }

            $content = implode(PHP_EOL, $slotContents);
            $content = TwigTemplateWriter::MarkSlotContents($slotName, $content);

        } catch (\Exception $ex) {
            $content = $this->translator->translate('twig_extension_slot_rendering_error', array('%slot_name%' => $slotName, '%error%' => $ex->getMessage()), 'RedKiteCmsBundle');
        }

        return sprintf('<div class="al_%s">%s</div>', $slotName, $content);
    }
public function renderSlot ( $ slotName = null , $ extraAttributes = "" ) { $ this -> checkSlotName ( $ slotName ) ; try { $ slotContents = array ( ) ; $ pageTree = $ this -> container -> get ( 'red_kite_cms.page_tree' ) ; $ blockManagers = $ pageTree -> getBlockManagers ( $ slotName ) ; foreach ( $ blockManagers as $ blockManager ) { if ( null === $ blockManager ) { continue ; } $ slotContents [ ] = $ this -> renderBlock ( $ blockManager , null , false , $ extraAttributes ) ; } if ( empty ( $ slotContents ) && $ pageTree -> isCmsMode ( ) ) { $ slotContents [ ] = sprintf ( '<div data-editor="enabled" data-block-id="0" data-slot-name="%s" class="al-empty-slot-placeholer">%s</div>' , $ slotName , $ this -> translator -> translate ( 'twig_extension_empty_slot' , array ( ) , 'RedKiteCmsBundle' ) ) ; } $ content = implode ( PHP_EOL , $ slotContents ) ; $ content = TwigTemplateWriter :: MarkSlotContents ( $ slotName , $ content ) ; } catch ( \ Exception $ ex ) { $ content = $ this -> translator -> translate ( 'twig_extension_slot_rendering_error' , array ( '%slot_name%' => $ slotName , '%error%' => $ ex -> getMessage ( ) ) , 'RedKiteCmsBundle' ) ; } return sprintf ( '<div class="al_%s">%s</div>' , $ slotName , $ content ) ; }
Overrides the base renderSlot method
Overrides the base renderSlot method