public function renderEdit() { /** @var Form $form */ $form = $this['editForm']; if (!$form->isSubmitted()) { $rows = $this->settingsRepository->getAll()->fetchPairs('field', 'value'); $form->setDefaults($rows); if (isset($rows['logo']) && $rows['logo'] > '') { $this->getTemplate()->logo = $rows['logo']; } } }
/** * */ public function startup() { parent::startup(); $this->getTemplate()->addFilter('components', function ($text) { $presenter = $this; return preg_replace_callback('~\\##(.*)\\##~', function ($matches) use($presenter) { $array = explode(", ", $matches[1]); $component = $array[0]; ob_start(); $component = $presenter->getComponent($component); unset($array[0]); if (count($array)) { $component->render($array); } else { $component->render(); } return ob_get_clean(); }, $text); }); $this->settings = $this->settingsRepository->getAll()->fetchPairs('field', 'value'); }