1
0
mirror of https://github.com/phpmyadmin/phpmyadmin.git synced 2026-10-28 07:41:55 +03:00
Files
phpmyadmin/libraries/classes/Navigation/Nodes/NodeTableContainer.php
Hugues Peccatte 3255e4ad7b Split Util class regarding the responsabilities (#15567)
PhpMyAdmin\Util is a very huge class with a lot of responsabilities.

There is a lot of work to split it, but this may be just a small start, waiting for a more normalized code.

* Split Util class regarding the responsabilities
* Split the buttonOrImage function

Signed-off-by: Hugues Peccatte <hugues.peccatte@gmail.com>
2019-11-21 20:20:05 -03:00

64 lines
1.8 KiB
PHP

<?php
/**
* Functionality for the navigation tree
*
* @package PhpMyAdmin-Navigation
*/
declare(strict_types=1);
namespace PhpMyAdmin\Navigation\Nodes;
use PhpMyAdmin\Html\Generator;
use PhpMyAdmin\Navigation\NodeFactory;
use PhpMyAdmin\Url;
use PhpMyAdmin\Util;
/**
* Represents a container for table nodes in the navigation tree
*
* @package PhpMyAdmin-Navigation
*/
class NodeTableContainer extends NodeDatabaseChildContainer
{
/**
* Initialises the class
*/
public function __construct()
{
parent::__construct(__('Tables'), Node::CONTAINER);
$this->icon = Generator::getImage('b_browse', __('Tables'));
$this->links = [
'text' => Url::getFromRoute('/database/structure', [
'server' => $GLOBALS['server'],
'db' => '%1\$s',
'tbl_type' => 'table',
]),
'icon' => Url::getFromRoute('/database/structure', [
'server' => $GLOBALS['server'],
'db' => '%1\$s',
'tbl_type' => 'table',
]),
];
$this->realName = 'tables';
$this->classes = 'tableContainer subContainer';
$newLabel = _pgettext('Create new table', 'New');
$new = NodeFactory::getInstance(
'Node',
$newLabel
);
$new->isNew = true;
$new->icon = Generator::getImage('b_table_add', $newLabel);
$new->links = [
'text' => Url::getFromRoute('/table/create', [
'server' => $GLOBALS['server'],
]) . '&amp;db=%2$s',
'icon' => Url::getFromRoute('/table/create', [
'server' => $GLOBALS['server'],
]) . '&amp;db=%2$s',
];
$new->classes = 'new_table italics';
$this->addChild($new);
}
}