2 /* vim: set expandtab sw=4 ts=4 sts=4: */
8 declare(strict_types
=1);
10 use PhpMyAdmin\CheckUserPrivileges
;
11 use PhpMyAdmin\Controllers\Database\RoutinesController
;
12 use PhpMyAdmin\DatabaseInterface
;
13 use PhpMyAdmin\Di\Container
;
14 use PhpMyAdmin\Response
;
18 if (! defined('ROOT_PATH')) {
19 define('ROOT_PATH', __DIR__
. DIRECTORY_SEPARATOR
);
22 require_once ROOT_PATH
. 'libraries/common.inc.php';
24 $container = Container
::getDefaultContainer();
25 $container->set(Response
::class, Response
::getInstance());
27 /** @var Response $response */
28 $response = $container->get(Response
::class);
30 /** @var DatabaseInterface $dbi */
31 $dbi = $container->get(DatabaseInterface
::class);
33 $checkUserPrivileges = new CheckUserPrivileges($dbi);
34 $checkUserPrivileges->getPrivileges();
38 $controller = new RoutinesController(
44 if (! $response->isAjax()) {
46 * Displays the header and tabs
48 if (! empty($table) && in_array($table, $dbi->getTables($db))) {
49 include_once ROOT_PATH
. 'libraries/tbl_common.inc.php';
52 include_once ROOT_PATH
. 'libraries/db_common.inc.php';
64 ) = Util
::getDbInfo($db, isset($sub_part) ?
$sub_part : '');
68 * Since we did not include some libraries, we need
69 * to manually select the required database and
70 * create the missing $url_query variable
72 if (strlen($db) > 0) {
74 if (! isset($url_query)) {
75 $url_query = Url
::getCommon(
86 'type' => $_REQUEST['type'] ??
null,