/** * Diese Methode returned. Die eigentliche (obere) funktion wurde aus * rückwärtskompatibilität belassen. Diese Methode wird zB im * getTemplateVars der MultiCheckbox verwendet. */ public function returnFormField($vars) { extract($vars); $ret = ''; if (isset($mask)) { $ret .= '{' . $mask . '}'; } if (isset($preHtml)) { $ret .= $preHtml; } if (isset($html)) { $ret .= $html; } elseif (isset($items)) { foreach ($items as $i) { $ret .= $this->returnFormField($i); } } elseif (isset($component)) { $view = new Kwf_Component_Renderer(); $ret .= $view->renderComponent($component); } if (isset($postHtml)) { $ret .= $postHtml; } if (isset($mask)) { $ret .= '{/' . $mask . '}'; } return $ret; }
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)); }
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 testHasContent() { $this->_init('Kwf_Component_Output_HasContent_Component'); $output = new Kwf_Component_Renderer(); $value = $output->renderMaster(Kwf_Component_Data_Root::getInstance()); $this->assertRegExp('#root #', $value); }
protected function _render() { $view = new Kwf_Component_Renderer(); return $view->renderComponent($this->_data); }
/** * Render the component * * Usually only used internally or for debugging * * @param bool if view cache should be used, if null config setting will be used * @param bool if master should be rendered * @return string */ public function render($enableCache = null, $renderMaster = false, &$hasDynamicParts = false) { $output = new Kwf_Component_Renderer(); if ($enableCache !== null) { $output->setEnableCache($enableCache); } if ($renderMaster) { $hasDynamicParts = true; return $output->renderMaster($this); } else { return $output->renderComponent($this, $hasDynamicParts); } }
public function jsonSaveAction() { $postData = $this->getRequest()->getParams(); if (!isset($postData['componentId'])) { throw new Kwf_Exception_Client('component not found'); } $component = Kwf_Component_Data_Root::getInstance()->getComponentById((string) $postData['componentId'], array('ignoreVisible' => true)); if (!$component) { throw new Kwf_Exception_Client('component not found'); } $component = $component->getComponent(); $postData['doNotRelocate'] = true; $component->preProcessInput($postData); $component->processInput($postData); $errors = $component->getErrors(); $this->view->errorPlaceholder = $component->getPlaceholder('error'); $this->view->errorFields = array(); $this->view->errorMessages = array(); foreach ($errors as $error) { if (isset($error['message'])) { $error['messages'] = array($error['message']); } $msgs = array(); foreach ($error['messages'] as $msg) { $msgs[] = htmlspecialchars($msg); } if (isset($error['field'])) { //if message is associated with a specific field show it there $this->view->errorFields[$error['field']->getFieldName()] = implode('<br />', $msgs); } else { //else just above the form $this->view->errorMessages = array_merge($this->view->errorMessages, $msgs); } } $this->view->successContent = null; if (!$this->view->errorMessages && !$this->view->errorFields) { $success = $component->getData()->getComponent()->getSuccessComponent(); if ($success instanceof Kwf_Component_Data) { if ($success->isPage) { $this->view->successUrl = $success->url; } else { $process = $success->getRecursiveChildComponents(array('page' => false, 'flags' => array('processInput' => true))); if (Kwf_Component_Abstract::getFlag($success->componentClass, 'processInput')) { $process[] = $success; } $postData = array(); //empty because there can't be anything as we didn't display the success yet foreach ($process as $i) { if (method_exists($i->getComponent(), 'preProcessInput')) { $i->getComponent()->preProcessInput($postData); } } foreach ($process as $i) { if (method_exists($i->getComponent(), 'processInput')) { $i->getComponent()->processInput($postData); } } if (class_exists('Kwf_Events_ModelObserver', false)) { //Nur wenn klasse jemals geladen wurde kann auch was zu processen drin sein Kwf_Events_ModelObserver::getInstance()->process(false); } $renderer = new Kwf_Component_Renderer(); $this->view->successContent = $renderer->renderComponent($success); } } else { if (is_string($success)) { $this->view->successUrl = $success; } } } $this->view->errorFields = (object) $this->view->errorFields; }