public function componentWithMaster(array $componentWithMaster)
 {
     $last = array_pop($componentWithMaster);
     $component = $last['data'];
     if ($last['type'] == 'master') {
         $innerComponent = $componentWithMaster[0]['data'];
         $vars = $component->getComponent()->getMasterTemplateVars($innerComponent, $this->_getRenderer());
         $vars['componentWithMaster'] = $componentWithMaster;
         $masterTemplate = $this->_getRenderer()->getTemplate($component, 'Master');
         if (substr($masterTemplate, -4) == '.tpl') {
             $view = new Kwf_Component_View($this->_getRenderer());
             $view->assign($vars);
             $ret = $view->render($masterTemplate);
         } else {
             $twig = new Kwf_Component_Renderer_Twig_Environment($this->_getRenderer());
             $ret = $twig->render($masterTemplate, $vars);
         }
         $ret = $this->_replaceKwfUp($ret);
         return $ret;
     } else {
         if ($last['type'] == 'component') {
             $helper = new Kwf_Component_View_Helper_Component();
             $helper->setRenderer($this->_getRenderer());
             return '<div class="kwfMainContent">' . "\n    " . $helper->component($component) . "\n" . '</div><!--/kwfMainContent-->' . "\n";
         } else {
             throw new Kwf_Exception("invalid type");
         }
     }
 }
Ejemplo n.º 2
0
 public function render($componentId, $config)
 {
     $renderer = $this->_getRenderer();
     $component = $this->_getComponentById($componentId);
     $vars = $component->getComponent()->getTemplateVars($renderer);
     if (is_null($vars)) {
         throw new Kwf_Exception('Return value of getTemplateVars() returns null. Maybe forgot "return $ret?"');
     }
     if (isset($vars['template'])) {
         $tpl = $vars['template'];
     } else {
         $tpl = $renderer->getTemplate($component, 'Component');
     }
     if (!$tpl) {
         throw new Kwf_Exception("No template found for '{$component->componentClass}'");
     }
     if (substr($tpl, -4) == '.tpl') {
         $view = new Kwf_Component_View($renderer);
         $view->assign($vars);
         $ret = $view->render($tpl);
     } else {
         $twig = new Kwf_Component_Renderer_Twig_Environment($renderer);
         $ret = $twig->render($tpl, $vars);
     }
     $ret = $this->_replaceKwfUp($ret);
     return $ret;
 }
Ejemplo n.º 3
0
 public function render($componentId, $config)
 {
     $component = $this->_getComponentById($componentId);
     $partialsClass = $config['class'];
     $partial = new $partialsClass($config['params']);
     // Normaler Output
     $vars = $component->getComponent()->getPartialVars($partial, $config['id'], $config['info']);
     if (is_null($vars)) {
         throw new Kwf_Exception('Return value of getPartialVars() returns null. Maybe forgot "return $ret?"');
     }
     $vars['info'] = $config['info'];
     $vars['data'] = $component;
     $renderer = $this->_getRenderer();
     if (isset($vars['template'])) {
         $tpl = $vars['template'];
     } else {
         $tpl = $renderer->getTemplate($component, 'Partial');
     }
     if (substr($tpl, -4) == '.tpl') {
         $view = new Kwf_Component_View($renderer);
         $view->assign($vars);
         $ret = $view->render($tpl);
     } else {
         $twig = new Kwf_Component_Renderer_Twig_Environment($renderer);
         $ret = $twig->render($tpl, $vars);
     }
     $ret = $this->_replaceKwfUp($ret);
     return $ret;
 }
Ejemplo n.º 4
0
 public function replaceOutput($renderer)
 {
     if ($this->isLoggedIn()) {
         return false;
     }
     $template = Kwc_Admin::getComponentFile($this, 'Component', 'tpl');
     $renderer = new Kwf_Component_Renderer();
     $view = new Kwf_Component_View($renderer);
     $view->assign($this->getTemplateVars());
     return $renderer->render($view->render($template));
 }
Ejemplo n.º 5
0
 public function replaceOutput($renderer)
 {
     if ($this->isLoggedIn()) {
         return false;
     }
     $form = Kwf_Component_Data_Root::getInstance()->getComponentById($this->_componentId, array('ignoreVisible' => true))->getChildComponent('-form');
     $templateVars = array();
     $templateVars['form'] = $form;
     $template = Kwc_Admin::getComponentFile($this, 'Component', 'tpl');
     $view = new Kwf_Component_View();
     $view->assign($templateVars);
     return $view->render($template);
 }
Ejemplo n.º 6
0
 public function processOutput($output, $renderer)
 {
     // Da das Plugin nach dem Rendern ausgeführt wird, muss schon der
     // fertige Content hier reinkommen
     if ($output != 'root plugin(plugin(c1_child c1_childchild))') {
         return 'not ok from plugin. output was: ' . $output;
     } else {
         $template = Kwc_Admin::getComponentFile($this, 'Component', 'tpl');
         $renderer = new Kwf_Component_Renderer();
         $view = new Kwf_Component_View($renderer);
         $view->child = Kwf_Component_Data_Root::getInstance()->getComponentById($this->_componentId)->getChildComponent('-pluginChild');
         return $renderer->render($view->render($template));
     }
 }
 public function componentWithMaster(array $componentWithMaster)
 {
     $last = array_pop($componentWithMaster);
     $component = $last['data'];
     if ($last['type'] == 'master') {
         $innerComponent = $componentWithMaster[0]['data'];
         $vars = $component->getComponent()->getMasterTemplateVars($innerComponent, $this->_getRenderer());
         $vars['componentWithMaster'] = $componentWithMaster;
         if (isset($vars['template'])) {
             $masterTemplate = $vars['template'];
         } else {
             $masterTemplate = $this->_getRenderer()->getTemplate($component, 'Master');
         }
         if (substr($masterTemplate, -4) == '.tpl') {
             $view = new Kwf_Component_View($this->_getRenderer());
             $view->assign($vars);
             $ret = $view->render($masterTemplate);
         } else {
             $twig = new Kwf_Component_Renderer_Twig_Environment($this->_getRenderer());
             $ret = $twig->render($masterTemplate, $vars);
         }
         $ret = $this->_replaceKwfUp($ret);
         return $ret;
     } else {
         if ($last['type'] == 'component') {
             $helper = new Kwf_Component_View_Helper_Component();
             $helper->setRenderer($this->_getRenderer());
             $kwfUniquePrefix = Kwf_Config::getValue('application.uniquePrefix');
             if ($kwfUniquePrefix) {
                 $kwfUniquePrefix = $kwfUniquePrefix . '-';
             }
             return '<main class="' . $kwfUniquePrefix . 'kwfMainContent">' . "\n    " . $helper->component($component) . "\n" . '</main><!--/' . $kwfUniquePrefix . 'kwfMainContent-->' . "\n";
         } else {
             throw new Kwf_Exception("invalid type");
         }
     }
 }