PMA\libraries\navigation\Navigation::unhideNavigationItem PHP Метод

unhideNavigationItem() публичный Метод

Remove a hidden item of navigation tree from the list of hidden items in PMA database.
public unhideNavigationItem ( string $itemName, string $itemType, string $dbName, string $tableName = null ) : void
$itemName string name of the navigation tree item
$itemType string type of the navigation tree item
$dbName string database name
$tableName string table name if applicable
Результат void
    public function unhideNavigationItem($itemName, $itemType, $dbName, $tableName = null)
    {
        $navTable = Util::backquote($GLOBALS['cfgRelation']['db']) . "." . Util::backquote($GLOBALS['cfgRelation']['navigationhiding']);
        $sqlQuery = "DELETE FROM " . $navTable . " WHERE" . " `username`='" . $GLOBALS['dbi']->escapeString($GLOBALS['cfg']['Server']['user']) . "'" . " AND `item_name`='" . $GLOBALS['dbi']->escapeString($itemName) . "'" . " AND `item_type`='" . $GLOBALS['dbi']->escapeString($itemType) . "'" . " AND `db_name`='" . $GLOBALS['dbi']->escapeString($dbName) . "'" . (!empty($tableName) ? " AND `table_name`='" . $GLOBALS['dbi']->escapeString($tableName) . "'" : "");
        PMA_queryAsControlUser($sqlQuery, false);
    }

Usage Example

if (!$response->isAjax()) {
    $response->addHTML(PMA\libraries\Message::error(__('Fatal error: The navigation can only be accessed via AJAX')));
    exit;
}
if (isset($_REQUEST['getNaviSettings']) && $_REQUEST['getNaviSettings']) {
    $response->addJSON('message', PageSettings::getNaviSettings());
    exit;
}
$cfgRelation = PMA_getRelationsParam();
if ($cfgRelation['navwork']) {
    if (isset($_REQUEST['hideNavItem'])) {
        if (!empty($_REQUEST['itemName']) && !empty($_REQUEST['itemType']) && !empty($_REQUEST['dbName'])) {
            $navigation->hideNavigationItem($_REQUEST['itemName'], $_REQUEST['itemType'], $_REQUEST['dbName'], !empty($_REQUEST['tableName']) ? $_REQUEST['tableName'] : null);
        }
        exit;
    }
    if (isset($_REQUEST['unhideNavItem'])) {
        if (!empty($_REQUEST['itemName']) && !empty($_REQUEST['itemType']) && !empty($_REQUEST['dbName'])) {
            $navigation->unhideNavigationItem($_REQUEST['itemName'], $_REQUEST['itemType'], $_REQUEST['dbName'], !empty($_REQUEST['tableName']) ? $_REQUEST['tableName'] : null);
        }
        exit;
    }
    if (isset($_REQUEST['showUnhideDialog'])) {
        if (!empty($_REQUEST['dbName'])) {
            $response->addJSON('message', $navigation->getItemUnhideDialog($_REQUEST['dbName']));
        }
        exit;
    }
}
// Do the magic
$response->addJSON('message', $navigation->getDisplay());