PMA\libraries\Util::getScriptNameForOption PHP Method

getScriptNameForOption() public static method

Get the script name corresponding to a plain English config word in order to append in links on navigation and main panel
public static getScriptNameForOption ( string $target, string $location ) : string
$target string a valid value for $cfg['NavigationTreeDefaultTabTable'], $cfg['NavigationTreeDefaultTabTable2'], $cfg['DefaultTabTable'], $cfg['DefaultTabDatabase'] or $cfg['DefaultTabServer']
$location string one out of 'server', 'table', 'database'
return string script name corresponding to the config word
    public static function getScriptNameForOption($target, $location)
    {
        if ($location == 'server') {
            // Values for $cfg['DefaultTabServer']
            switch ($target) {
                case 'welcome':
                    return 'index.php';
                case 'databases':
                    return 'server_databases.php';
                case 'status':
                    return 'server_status.php';
                case 'variables':
                    return 'server_variables.php';
                case 'privileges':
                    return 'server_privileges.php';
            }
        } elseif ($location == 'database') {
            // Values for $cfg['DefaultTabDatabase']
            switch ($target) {
                case 'structure':
                    return 'db_structure.php';
                case 'sql':
                    return 'db_sql.php';
                case 'search':
                    return 'db_search.php';
                case 'operations':
                    return 'db_operations.php';
            }
        } elseif ($location == 'table') {
            // Values for $cfg['DefaultTabTable'],
            // $cfg['NavigationTreeDefaultTabTable'] and
            // $cfg['NavigationTreeDefaultTabTable2']
            switch ($target) {
                case 'structure':
                    return 'tbl_structure.php';
                case 'sql':
                    return 'tbl_sql.php';
                case 'search':
                    return 'tbl_select.php';
                case 'insert':
                    return 'tbl_change.php';
                case 'browse':
                    return 'sql.php';
            }
        }
        return $target;
    }

Usage Example

 /**
  * Initialises the class
  *
  * @param string $name     An identifier for the new node
  * @param int    $type     Type of node, may be one of CONTAINER or OBJECT
  * @param bool   $is_group Whether this object has been created
  *                         while grouping nodes
  */
 public function __construct($name, $type = Node::OBJECT, $is_group = false)
 {
     parent::__construct($name, $type, $is_group);
     $this->icon = Util::getImage('s_db.png', __('Database operations'));
     $script_name = Util::getScriptNameForOption($GLOBALS['cfg']['DefaultTabDatabase'], 'database');
     $this->links = array('text' => $script_name . '?server=' . $GLOBALS['server'] . '&db=%1$s&token=' . $_SESSION[' PMA_token '], 'icon' => 'db_operations.php?server=' . $GLOBALS['server'] . '&db=%1$s&token=' . $_SESSION[' PMA_token '], 'title' => __('Structure'));
     $this->classes = 'database';
 }
All Usage Examples Of PMA\libraries\Util::getScriptNameForOption
Util