From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- .../classes/Config/SpecialSchemaLinks.php | 478 +++++++++++++++++++++ 1 file changed, 478 insertions(+) create mode 100644 srcs/phpmyadmin/libraries/classes/Config/SpecialSchemaLinks.php (limited to 'srcs/phpmyadmin/libraries/classes/Config/SpecialSchemaLinks.php') diff --git a/srcs/phpmyadmin/libraries/classes/Config/SpecialSchemaLinks.php b/srcs/phpmyadmin/libraries/classes/Config/SpecialSchemaLinks.php new file mode 100644 index 0000000..e0af136 --- /dev/null +++ b/srcs/phpmyadmin/libraries/classes/Config/SpecialSchemaLinks.php @@ -0,0 +1,478 @@ + array( + * // Table name + * 'db' => array( + * // Column name + * 'user' => array( + * // Main url param (can be an array where represent sql) + * 'link_param' => 'username', + * // Other url params + * 'link_dependancy_params' => array( + * 0 => array( + * // URL parameter name + * // (can be array where url param has static value) + * 'param_info' => 'hostname', + * // Column name related to url param + * 'column_name' => 'host' + * ) + * ), + * // Page to link + * 'default_page' => './server_privileges.php' + * ) + * ) + * ) + * ); + * + * @return array + */ + public static function get(): array + { + global $cfg; + + $defaultPage = './' . Util::getScriptNameForOption( + $cfg['DefaultTabTable'], + 'table' + ); + + return [ + 'mysql' => [ + 'columns_priv' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'host', + ], + ], + 'default_page' => './server_privileges.php', + ], + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'Db', + ], + ], + 'default_page' => $defaultPage, + ], + 'column_name' => [ + 'link_param' => 'field', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'Db', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'Table_name', + ], + ], + 'default_page' => './tbl_structure.php?change_column=1', + ], + ], + 'db' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'host', + ], + ], + 'default_page' => './server_privileges.php', + ], + ], + 'event' => [ + 'name' => [ + 'link_param' => 'item_name', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'db', + ], + ], + 'default_page' => './db_events.php?edit_item=1', + ], + + ], + 'innodb_index_stats' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'database_name', + ], + ], + 'default_page' => $defaultPage, + ], + 'index_name' => [ + 'link_param' => 'index', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'database_name', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'table_name', + ], + ], + 'default_page' => './tbl_structure.php', + ], + ], + 'innodb_table_stats' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'database_name', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'proc' => [ + 'name' => [ + 'link_param' => 'item_name', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'db', + ], + 1 => [ + 'param_info' => 'item_type', + 'column_name' => 'type', + ], + ], + 'default_page' => './db_routines.php?edit_item=1', + ], + 'specific_name' => [ + 'link_param' => 'item_name', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'db', + ], + 1 => [ + 'param_info' => 'item_type', + 'column_name' => 'type', + ], + ], + 'default_page' => './db_routines.php?edit_item=1', + ], + ], + 'proc_priv' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'Host', + ], + ], + 'default_page' => './server_privileges.php', + ], + 'routine_name' => [ + 'link_param' => 'item_name', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'Db', + ], + 1 => [ + 'param_info' => 'item_type', + 'column_name' => 'Routine_type', + ], + ], + 'default_page' => './db_routines.php?edit_item=1', + ], + ], + 'proxies_priv' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'Host', + ], + ], + 'default_page' => './server_privileges.php', + ], + ], + 'tables_priv' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'Host', + ], + ], + 'default_page' => './server_privileges.php', + ], + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'Db', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'user' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'host', + ], + ], + 'default_page' => './server_privileges.php', + ], + ], + ], + 'information_schema' => [ + 'columns' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + 'column_name' => [ + 'link_param' => 'field', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'table_name', + ], + ], + 'default_page' => './tbl_structure.php?change_column=1', + ], + ], + 'key_column_usage' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'constraint_schema', + ], + ], + 'default_page' => $defaultPage, + ], + 'column_name' => [ + 'link_param' => 'field', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'table_name', + ], + ], + 'default_page' => './tbl_structure.php?change_column=1', + ], + 'referenced_table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'referenced_table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + 'referenced_column_name' => [ + 'link_param' => 'field', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'referenced_table_schema', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'referenced_table_name', + ], + ], + 'default_page' => './tbl_structure.php?change_column=1', + ], + ], + 'partitions' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'processlist' => [ + 'user' => [ + 'link_param' => 'username', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'hostname', + 'column_name' => 'host', + ], + ], + 'default_page' => './server_privileges.php', + ], + ], + 'referential_constraints' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'constraint_schema', + ], + ], + 'default_page' => $defaultPage, + ], + 'referenced_table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'constraint_schema', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'routines' => [ + 'routine_name' => [ + 'link_param' => 'item_name', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'routine_schema', + ], + 1 => [ + 'param_info' => 'item_type', + 'column_name' => 'routine_type', + ], + ], + 'default_page' => './db_routines.php', + ], + ], + 'schemata' => [ + 'schema_name' => [ + 'link_param' => 'db', + 'default_page' => $defaultPage, + ], + ], + 'statistics' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + 'column_name' => [ + 'link_param' => 'field', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + 1 => [ + 'param_info' => 'table', + 'column_name' => 'table_name', + ], + ], + 'default_page' => './tbl_structure.php?change_column=1', + ], + ], + 'tables' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'table_constraints' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + ], + 'views' => [ + 'table_name' => [ + 'link_param' => 'table', + 'link_dependancy_params' => [ + 0 => [ + 'param_info' => 'db', + 'column_name' => 'table_schema', + ], + ], + 'default_page' => $defaultPage, + ], + ], + ], + ]; + } +} -- cgit