response->addHTML( $this->template->render('server/sub_page_header', [ 'type' => 'engines', ]) ); /** * Did the user request information about a certain storage engine? */ if (empty($_REQUEST['engine']) || ! StorageEngine::isValid($_REQUEST['engine']) ) { $this->response->addHTML($this->_getHtmlForAllServerEngines()); } else { $engine = StorageEngine::getEngine($_REQUEST['engine']); $this->response->addHTML($this->_getHtmlForServerEngine($engine)); } } /** * Return HTML with all Storage Engine information * * @return string */ private function _getHtmlForAllServerEngines() { return $this->template->render('server/engines/engines', [ 'engines' => StorageEngine::getStorageEngines(), ]); } /** * Return HTML for a given Storage Engine * * @param StorageEngine $engine storage engine * * @return string */ private function _getHtmlForServerEngine(StorageEngine $engine) { $page = isset($_REQUEST['page']) ? $_REQUEST['page'] : ''; $pageOutput = ! empty($page) ? $engine->getPage($page) : ''; /** * Displays details about a given Storage Engine */ return $this->template->render('server/engines/engine', [ 'title' => $engine->getTitle(), 'help_page' => $engine->getMysqlHelpPage(), 'comment' => $engine->getComment(), 'info_pages' => $engine->getInfoPages(), 'support' => $engine->getSupportInformationMessage(), 'variables' => $engine->getHtmlVariables(), 'page_output' => $pageOutput, 'page' => $page, 'engine' => $_REQUEST['engine'], ]); } }