1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
<?php /* vim: set expandtab sw=4 ts=4 sts=4: */
/** * Holds the PhpMyAdmin\Controllers\Server\ServerEnginesController * * @package PhpMyAdmin\Controllers */
namespace PhpMyAdmin\Controllers\Server;
use PhpMyAdmin\Controllers\Controller; use PhpMyAdmin\Server\Common; use PhpMyAdmin\StorageEngine; use PhpMyAdmin\Template; use PhpMyAdmin\Util;
/** * Handles viewing storage engine details * * @package PhpMyAdmin\Controllers */ class ServerEnginesController extends Controller { /** * Index action * * @return void */ public function indexAction() { /** * Does the common work */ require 'libraries/server_common.inc.php';
/** * Displays the sub-page heading */ $this->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'], ) ); } }
|