1
|
|
|
<?php |
2
|
|
|
/* vim: set expandtab sw=4 ts=4 sts=4: */ |
3
|
|
|
/** |
4
|
|
|
* Holds the PhpMyAdmin\Controllers\Server\EnginesController |
5
|
|
|
* |
6
|
|
|
* @package PhpMyAdmin\Controllers |
7
|
|
|
*/ |
8
|
|
|
declare(strict_types=1); |
9
|
|
|
|
10
|
|
|
namespace PhpMyAdmin\Controllers\Server; |
11
|
|
|
|
12
|
|
|
use PhpMyAdmin\Controllers\Controller; |
13
|
|
|
use PhpMyAdmin\StorageEngine; |
14
|
|
|
|
15
|
|
|
/** |
16
|
|
|
* Handles viewing storage engine details |
17
|
|
|
* |
18
|
|
|
* @package PhpMyAdmin\Controllers |
19
|
|
|
*/ |
20
|
|
|
class EnginesController extends Controller |
21
|
|
|
{ |
22
|
|
|
/** |
23
|
|
|
* Index action |
24
|
|
|
* |
25
|
|
|
* @return string |
26
|
|
|
*/ |
27
|
|
|
public function index(): string |
28
|
|
|
{ |
29
|
|
|
require ROOT_PATH . 'libraries/server_common.inc.php'; |
30
|
|
|
|
31
|
|
|
return $this->template->render('server/engines/index', [ |
32
|
|
|
'engines' => StorageEngine::getStorageEngines(), |
33
|
|
|
]); |
34
|
|
|
} |
35
|
|
|
|
36
|
|
|
/** |
37
|
|
|
* Displays details about a given Storage Engine |
38
|
|
|
* |
39
|
|
|
* @param array $params Request params |
40
|
|
|
* |
41
|
|
|
* @return string |
42
|
|
|
*/ |
43
|
|
|
public function show(array $params): string |
44
|
|
|
{ |
45
|
|
|
require ROOT_PATH . 'libraries/server_common.inc.php'; |
46
|
|
|
|
47
|
|
|
$page = $params['page'] ?? ''; |
48
|
|
|
|
49
|
|
|
$engine = []; |
50
|
|
|
if (StorageEngine::isValid($params['engine'])) { |
51
|
|
|
$storageEngine = StorageEngine::getEngine($params['engine']); |
52
|
|
|
$engine = [ |
53
|
|
|
'engine' => $params['engine'], |
54
|
|
|
'title' => $storageEngine->getTitle(), |
55
|
|
|
'help_page' => $storageEngine->getMysqlHelpPage(), |
56
|
|
|
'comment' => $storageEngine->getComment(), |
57
|
|
|
'info_pages' => $storageEngine->getInfoPages(), |
58
|
|
|
'support' => $storageEngine->getSupportInformationMessage(), |
59
|
|
|
'variables' => $storageEngine->getHtmlVariables(), |
60
|
|
|
'page' => ! empty($page) ? $storageEngine->getPage($page) : '', |
61
|
|
|
]; |
62
|
|
|
} |
63
|
|
|
|
64
|
|
|
return $this->template->render('server/engines/show', [ |
65
|
|
|
'engine' => $engine, |
66
|
|
|
'page' => $page, |
67
|
|
|
]); |
68
|
|
|
} |
69
|
|
|
} |
70
|
|
|
|