diff --git a/libraries/classes/Controllers/Database/RoutinesController.php b/libraries/classes/Controllers/Database/RoutinesController.php index 714995ef68..2033d0029e 100644 --- a/libraries/classes/Controllers/Database/RoutinesController.php +++ b/libraries/classes/Controllers/Database/RoutinesController.php @@ -42,7 +42,7 @@ class RoutinesController extends AbstractController { global $db, $table, $tables, $num_tables, $total_num_tables, $sub_part, $is_show_stats; global $db_is_system_schema, $tooltip_truename, $tooltip_aliasname, $pos; - global $errors, $titles; + global $errors; $params = ['type' => $_REQUEST['type'] ?? null]; @@ -74,11 +74,6 @@ class RoutinesController extends AbstractController $this->dbi->selectDb($db); } - /** - * Create labels for the list - */ - $titles = Util::buildActionTitles(); - /** * Keep a list of errors that occurred while * processing an 'Add' or 'Edit' operation. diff --git a/libraries/classes/Controllers/Database/StructureController.php b/libraries/classes/Controllers/Database/StructureController.php index ee2c47225e..a9c5664c10 100644 --- a/libraries/classes/Controllers/Database/StructureController.php +++ b/libraries/classes/Controllers/Database/StructureController.php @@ -249,7 +249,6 @@ class StructureController extends AbstractController return; } $changes = true; - $titles = Util::buildActionTitles(); $favoriteTable = $parameters['favorite_table'] ?? ''; $alreadyFavorite = $this->checkFavoriteTable($favoriteTable); @@ -300,7 +299,6 @@ class StructureController extends AbstractController 'db_table_name_hash' => md5($this->db . '.' . $favoriteTable), 'fav_params' => $favoriteParams, 'already_favorite' => $alreadyFavorite, - 'titles' => $titles, ]); $this->response->addJSON($json); @@ -540,7 +538,6 @@ class StructureController extends AbstractController * the code easier to read without this operator. */ $may_have_rows = $current_table['TABLE_ROWS'] > 0 || $table_is_view; - $titles = Util::buildActionTitles(); if (! $this->dbIsSystemSchema) { $drop_query = sprintf( @@ -601,8 +598,7 @@ class StructureController extends AbstractController 'input_class' => implode(' ', $input_class), 'table_is_view' => $table_is_view, 'current_table' => $current_table, - 'browse_table_title' => $may_have_rows ? $titles['Browse'] : $titles['NoBrowse'], - 'search_table_title' => $may_have_rows ? $titles['Search'] : $titles['NoSearch'], + 'may_have_rows' => $may_have_rows, 'browse_table_label_title' => htmlspecialchars($current_table['TABLE_COMMENT']), 'browse_table_label_truename' => $truename, 'empty_table_sql_query' => 'TRUNCATE ' . Util::backquote( @@ -616,12 +612,10 @@ class StructureController extends AbstractController ) ) ), - 'empty_table_title' => $may_have_rows ? $titles['Empty'] : $titles['NoEmpty'], 'tracking_icon' => $this->getTrackingIcon($truename), 'server_slave_status' => $replicaInfo['status'], 'table_url_params' => $tableUrlParams, 'db_is_system_schema' => $this->dbIsSystemSchema, - 'titles' => $titles, 'drop_query' => $drop_query, 'drop_message' => $drop_message, 'collation' => $collationDefinition, diff --git a/libraries/classes/Controllers/Database/TriggersController.php b/libraries/classes/Controllers/Database/TriggersController.php index 640fec56f9..fd4bedbae5 100644 --- a/libraries/classes/Controllers/Database/TriggersController.php +++ b/libraries/classes/Controllers/Database/TriggersController.php @@ -22,7 +22,7 @@ class TriggersController extends AbstractController { global $db, $table, $tables, $num_tables, $total_num_tables, $sub_part, $is_show_stats; global $db_is_system_schema, $tooltip_truename, $tooltip_aliasname, $pos; - global $errors, $titles; + global $errors; if (! $this->response->isAjax()) { /** @@ -50,11 +50,6 @@ class TriggersController extends AbstractController $this->dbi->selectDb($db); } - /** - * Create labels for the list - */ - $titles = Util::buildActionTitles(); - /** * Keep a list of errors that occurred while * processing an 'Add' or 'Edit' operation. diff --git a/libraries/classes/Controllers/Table/ChangeController.php b/libraries/classes/Controllers/Table/ChangeController.php index 69df047778..2c2f76ba55 100644 --- a/libraries/classes/Controllers/Table/ChangeController.php +++ b/libraries/classes/Controllers/Table/ChangeController.php @@ -60,7 +60,7 @@ class ChangeController extends AbstractController global $result, $rows, $found_unique_key, $after_insert, $comments_map, $table_columns; global $chg_evt_handler, $timestamp_seen, $columns_cnt, $tabindex, $tabindex_for_function; global $tabindex_for_null, $tabindex_for_value, $o_rows, $biggest_max_file_size, $has_blob_field; - global $titles, $jsvkey, $vkey, $current_result, $repopulate, $checked; + global $jsvkey, $vkey, $current_result, $repopulate, $checked; $pageSettings = new PageSettings('Edit'); $this->response->addHTML($pageSettings->getErrorHTML()); @@ -197,8 +197,6 @@ class ChangeController extends AbstractController $html_output .= Url::getHiddenInputs($_form_params); - $titles['Browse'] = Generator::getIcon('b_browse', __('Browse foreign values')); - // user can toggle the display of Function column and column types // (currently does not work for multi-edits) if (! $cfg['ShowFunctionFields'] || ! $cfg['ShowFieldTypesInDataEditView']) { @@ -257,7 +255,6 @@ class ChangeController extends AbstractController $table, $db, $row_id, - $titles, $biggest_max_file_size, $text_dir, $repopulate, diff --git a/libraries/classes/Controllers/Table/SearchController.php b/libraries/classes/Controllers/Table/SearchController.php index e1147d0b92..d6da116831 100644 --- a/libraries/classes/Controllers/Table/SearchController.php +++ b/libraries/classes/Controllers/Table/SearchController.php @@ -6,7 +6,6 @@ namespace PhpMyAdmin\Controllers\Table; use PhpMyAdmin\Common; use PhpMyAdmin\DatabaseInterface; -use PhpMyAdmin\Html\Generator; use PhpMyAdmin\Operations; use PhpMyAdmin\Relation; use PhpMyAdmin\RelationCleanup; @@ -360,12 +359,6 @@ class SearchController extends AbstractController { $selected_operator = ($_POST['criteriaColumnOperators'][$search_index] ?? ''); $entered_value = ($_POST['criteriaValues'] ?? ''); - $titles = [ - 'Browse' => Generator::getIcon( - 'b_browse', - __('Browse foreign values') - ), - ]; //Gets column's type and collation $type = $this->columnTypes[$column_index]; $collation = $this->columnCollations[$column_index]; @@ -421,7 +414,6 @@ class SearchController extends AbstractController 'foreign_max_limit' => $GLOBALS['cfg']['ForeignKeyMaxLimit'], 'criteria_values' => $entered_value, 'db' => $this->db, - 'titles' => $titles, 'in_fbs' => true, ]); diff --git a/libraries/classes/Controllers/Table/StructureController.php b/libraries/classes/Controllers/Table/StructureController.php index 1603e3412f..c759ce9f38 100644 --- a/libraries/classes/Controllers/Table/StructureController.php +++ b/libraries/classes/Controllers/Table/StructureController.php @@ -1467,23 +1467,6 @@ class StructureController extends AbstractController $this->table ); - $titles = [ - 'Change' => Generator::getIcon('b_edit', __('Change')), - 'Drop' => Generator::getIcon('b_drop', __('Drop')), - 'NoDrop' => Generator::getIcon('b_drop', __('Drop')), - 'Primary' => Generator::getIcon('b_primary', __('Primary')), - 'Index' => Generator::getIcon('b_index', __('Index')), - 'Unique' => Generator::getIcon('b_unique', __('Unique')), - 'Spatial' => Generator::getIcon('b_spatial', __('Spatial')), - 'IdxFulltext' => Generator::getIcon('b_ftext', __('Fulltext')), - 'NoPrimary' => Generator::getIcon('bd_primary', __('Primary')), - 'NoIndex' => Generator::getIcon('bd_index', __('Index')), - 'NoUnique' => Generator::getIcon('bd_unique', __('Unique')), - 'NoSpatial' => Generator::getIcon('bd_spatial', __('Spatial')), - 'NoIdxFulltext' => Generator::getIcon('bd_ftext', __('Fulltext')), - 'DistinctValues' => Generator::getIcon('b_browse', __('Distinct values')), - ]; - /** * Displays Space usage and row statistics */ @@ -1569,7 +1552,6 @@ class StructureController extends AbstractController 'db_is_system_schema' => $db_is_system_schema, 'tbl_is_view' => $tbl_is_view, 'mime_map' => $mime_map, - 'titles' => $titles, 'tbl_storage_engine' => $tbl_storage_engine, 'primary' => $primary_index, 'columns_with_unique_index' => $columns_with_unique_index, diff --git a/libraries/classes/Controllers/Table/TriggersController.php b/libraries/classes/Controllers/Table/TriggersController.php index 7430e84d75..c5131b4da9 100644 --- a/libraries/classes/Controllers/Table/TriggersController.php +++ b/libraries/classes/Controllers/Table/TriggersController.php @@ -19,7 +19,7 @@ class TriggersController extends AbstractController { global $db, $table, $tables, $num_tables, $total_num_tables, $sub_part, $is_show_stats; global $db_is_system_schema, $tooltip_truename, $tooltip_aliasname, $pos; - global $errors, $titles; + global $errors; if (! $this->response->isAjax()) { /** @@ -47,11 +47,6 @@ class TriggersController extends AbstractController $this->dbi->selectDb($db); } - /** - * Create labels for the list - */ - $titles = Util::buildActionTitles(); - /** * Keep a list of errors that occurred while * processing an 'Add' or 'Edit' operation. diff --git a/libraries/classes/Controllers/Table/ZoomSearchController.php b/libraries/classes/Controllers/Table/ZoomSearchController.php index 2fb1fad5c4..cab2668dc1 100644 --- a/libraries/classes/Controllers/Table/ZoomSearchController.php +++ b/libraries/classes/Controllers/Table/ZoomSearchController.php @@ -6,7 +6,6 @@ namespace PhpMyAdmin\Controllers\Table; use PhpMyAdmin\Common; use PhpMyAdmin\DatabaseInterface; -use PhpMyAdmin\Html\Generator; use PhpMyAdmin\Relation; use PhpMyAdmin\Response; use PhpMyAdmin\Table\Search; @@ -382,13 +381,6 @@ class ZoomSearchController extends AbstractController } unset($tmpData); - //Displays form for point data and scatter plot - $titles = [ - 'Browse' => Generator::getIcon( - 'b_browse', - __('Browse foreign values') - ), - ]; $column_names_hashes = []; foreach ($this->columnNames as $columnName) { @@ -403,7 +395,6 @@ class ZoomSearchController extends AbstractController 'foreigners' => $this->foreigners, 'column_null_flags' => $this->columnNullFlags, 'column_types' => $this->columnTypes, - 'titles' => $titles, 'goto' => $goto, 'data' => $data, 'data_json' => json_encode($data), @@ -425,12 +416,6 @@ class ZoomSearchController extends AbstractController { $selected_operator = ($_POST['criteriaColumnOperators'][$search_index] ?? ''); $entered_value = ($_POST['criteriaValues'] ?? ''); - $titles = [ - 'Browse' => Generator::getIcon( - 'b_browse', - __('Browse foreign values') - ), - ]; //Gets column's type and collation $type = $this->columnTypes[$column_index]; $collation = $this->columnCollations[$column_index]; @@ -486,7 +471,6 @@ class ZoomSearchController extends AbstractController 'foreign_max_limit' => $GLOBALS['cfg']['ForeignKeyMaxLimit'], 'criteria_values' => $entered_value, 'db' => $this->db, - 'titles' => $titles, 'in_fbs' => true, ]); diff --git a/libraries/classes/InsertEdit.php b/libraries/classes/InsertEdit.php index cee4913e87..51fce0ba68 100644 --- a/libraries/classes/InsertEdit.php +++ b/libraries/classes/InsertEdit.php @@ -680,9 +680,6 @@ class InsertEdit * @param array $foreignData data about the foreign keys * @param array $paramTableDbArray array containing $table and $db * @param int $rownumber the row number - * @param array $titles An HTML IMG tag for a particular icon from - * a theme, which may be an actual file or - * an icon from a sprite * @param string $text_dir text direction * @param string $special_chars_encoded replaced char if the string starts * with a \r\n pair (0x0d0a) add an extra \n @@ -714,7 +711,6 @@ class InsertEdit array $foreignData, array $paramTableDbArray, $rownumber, - array $titles, $text_dir, $special_chars_encoded, $vkey, @@ -742,7 +738,6 @@ class InsertEdit $data, $paramTableDbArray, $rownumber, - $titles, $readOnly ); } elseif (is_array($foreignData['disp_row'])) { @@ -880,9 +875,6 @@ class InsertEdit * @param string $data data to edit * @param array $paramTableDbArray array containing $table and $db * @param int $rownumber the row number - * @param array $titles An HTML IMG tag for a particular icon from - * a theme, which may be an actual file or - * an icon from a sprite * @param bool $readOnly is column read only or not * * @return string an html snippet @@ -898,7 +890,6 @@ class InsertEdit $data, array $paramTableDbArray, $rownumber, - array $titles, $readOnly ) { [$table, $db] = $paramTableDbArray; @@ -929,7 +920,7 @@ class InsertEdit ], '' ) . '">' - . str_replace("'", "\'", $titles['Browse']) . ''; + . Generator::getIcon('b_browse', __('Browse foreign values')) . ''; return $html_output; } @@ -3219,7 +3210,6 @@ class InsertEdit * @param string $table table * @param string $db database * @param int $row_id row id - * @param array $titles titles * @param int $biggest_max_file_size biggest max file size * @param string $default_char_editing default char editing mode which is stored * in the config.inc.php script @@ -3252,7 +3242,6 @@ class InsertEdit $table, $db, $row_id, - array $titles, $biggest_max_file_size, $default_char_editing, $text_dir, @@ -3492,7 +3481,6 @@ class InsertEdit $db, ], $row_id, - $titles, $text_dir, $special_chars_encoded, $vkey, @@ -3533,7 +3521,6 @@ class InsertEdit * @param string $table table * @param string $db database * @param int $row_id row id - * @param array $titles titles * @param int $biggest_max_file_size biggest max file size * @param string $text_dir text direction * @param array $repopulate the data to be repopulated @@ -3563,7 +3550,6 @@ class InsertEdit $table, $db, $row_id, - array $titles, $biggest_max_file_size, $text_dir, array $repopulate, @@ -3618,7 +3604,6 @@ class InsertEdit $table, $db, $row_id, - $titles, $biggest_max_file_size, $default_char_editing, $text_dir, diff --git a/libraries/classes/Util.php b/libraries/classes/Util.php index 21e26e8678..2d79b5dc84 100644 --- a/libraries/classes/Util.php +++ b/libraries/classes/Util.php @@ -3174,39 +3174,6 @@ class Util return ctype_digit((string) $input); } - /** - * Build titles and icons for action links - * - * @return array the action titles - */ - public static function buildActionTitles(): array - { - $titles = []; - - $titles['Browse'] = Generator::getIcon('b_browse', __('Browse')); - $titles['NoBrowse'] = Generator::getIcon('bd_browse', __('Browse')); - $titles['Search'] = Generator::getIcon('b_select', __('Search')); - $titles['NoSearch'] = Generator::getIcon('bd_select', __('Search')); - $titles['Insert'] = Generator::getIcon('b_insrow', __('Insert')); - $titles['NoInsert'] = Generator::getIcon('bd_insrow', __('Insert')); - $titles['Structure'] = Generator::getIcon('b_props', __('Structure')); - $titles['Drop'] = Generator::getIcon('b_drop', __('Drop')); - $titles['NoDrop'] = Generator::getIcon('bd_drop', __('Drop')); - $titles['Empty'] = Generator::getIcon('b_empty', __('Empty')); - $titles['NoEmpty'] = Generator::getIcon('bd_empty', __('Empty')); - $titles['Edit'] = Generator::getIcon('b_edit', __('Edit')); - $titles['NoEdit'] = Generator::getIcon('bd_edit', __('Edit')); - $titles['Export'] = Generator::getIcon('b_export', __('Export')); - $titles['NoExport'] = Generator::getIcon('bd_export', __('Export')); - $titles['Execute'] = Generator::getIcon('b_nextpage', __('Execute')); - $titles['NoExecute'] = Generator::getIcon('bd_nextpage', __('Execute')); - // For Favorite/NoFavorite, we need icon only. - $titles['Favorite'] = Generator::getIcon('b_favorite', ''); - $titles['NoFavorite'] = Generator::getIcon('b_no_favorite', ''); - - return $titles; - } - /** * Get the protocol from the RFC 7239 Forwarded header * diff --git a/templates/database/structure/favorite_anchor.twig b/templates/database/structure/favorite_anchor.twig index 39f740de31..5be122894c 100644 --- a/templates/database/structure/favorite_anchor.twig +++ b/templates/database/structure/favorite_anchor.twig @@ -2,6 +2,6 @@ class="ajax favorite_table_anchor" href="{{ url('/database/structure/favorite-table', fav_params) }}" title="{{ already_favorite ? 'Remove from Favorites'|trans : 'Add to Favorites'|trans }}" - data-favtargets="{{ db_table_name_hash }}" > - {{ already_favorite ? titles['Favorite']|raw : titles['NoFavorite']|raw }} + data-favtargets="{{ db_table_name_hash }}"> + {{ already_favorite ? get_icon('b_favorite') : get_icon('b_no_favorite') }} diff --git a/templates/database/structure/structure_table_row.twig b/templates/database/structure/structure_table_row.twig index 653faac2d3..dea94c2da9 100644 --- a/templates/database/structure/structure_table_row.twig +++ b/templates/database/structure/structure_table_row.twig @@ -34,38 +34,36 @@ 'db_table_name_hash': db_table_name_hash, 'fav_params': fav_params, 'already_favorite': already_favorite, - 'titles': titles } only %} {% endif %}