response->addHTML( Template::get('server/sub_page_header')->render([ '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 Template::get('server/engines/engines')->render( array('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 Template::get('server/engines/engine')->render( array( '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'], ) ); } }