diff --git a/ChangeLog b/ChangeLog index ec0eaa0dd..f62bc2610 100644 --- a/ChangeLog +++ b/ChangeLog @@ -65,6 +65,7 @@ danbarry - bug #1982315 [GUI] Comma and quote in ENUM, thanks to Joshua Hogendorn + [GUI] Color picker (work in progress, now just for original theme) - bug #1970836 [parser] SQL parser is slow, thanks to Christian Schmidt ++ rfe #1692928 [transformation] Option to disable browser transformations 2.11.8.0 (not yet released) - patch #1987593 [interface] Table list pagination in navi, diff --git a/libraries/display_tbl.lib.php b/libraries/display_tbl.lib.php index 5024a2c3c..cf01c2325 100644 --- a/libraries/display_tbl.lib.php +++ b/libraries/display_tbl.lib.php @@ -579,6 +579,14 @@ function PMA_displayTableHeaders(&$is_display, &$fields_meta, $fields_cnt = 0, $ PMA_generate_html_checkbox('display_blob', $GLOBALS['strShow'] . ' BLOB', ! empty($_SESSION['userconf']['display_blob']), false); echo ''; + // I would have preferred to name this "display_transformation". + // This is the only way I found to be able to keep this setting sticky + // per SQL query, and at the same time have a default that displays + // the transformations. + echo '
'; + PMA_generate_html_checkbox('hide_transformation', $GLOBALS['strHide'] . ' ' . $GLOBALS['strMIME_transformation'], ! empty($_SESSION['userconf']['hide_transformation']), false); + echo '
'; + echo '
'; echo ''; @@ -686,7 +694,7 @@ function PMA_displayTableHeaders(&$is_display, &$fields_meta, $fields_cnt = 0, $ } } - if ($GLOBALS['cfgRelation']['commwork'] && $GLOBALS['cfgRelation']['mimework'] && $GLOBALS['cfg']['BrowseMIME']) { + if ($GLOBALS['cfgRelation']['commwork'] && $GLOBALS['cfgRelation']['mimework'] && $GLOBALS['cfg']['BrowseMIME'] && ! $_SESSION['userconf']['hide_transformation']) { require_once './libraries/transformations.lib.php'; $GLOBALS['mime_map'] = PMA_getMIME($db, $table); } @@ -1634,6 +1642,14 @@ function PMA_displayTable_checkConfigParams() unset($_SESSION['userconf']['query'][$sql_key]['display_blob']); } + if (isset($_REQUEST['hide_transformation'])) { + $_SESSION['userconf']['query'][$sql_key]['hide_transformation'] = true; + unset($_REQUEST['hide_transformation']); + } elseif (isset($_REQUEST['display_options_form'])) { + // we know that the checkbox was unchecked + unset($_SESSION['userconf']['query'][$sql_key]['hide_transformation']); + } + // move current query to the last position, to be removed last // so only least executed query will be removed if maximum remembered queries // limit is reached @@ -1652,6 +1668,7 @@ function PMA_displayTable_checkConfigParams() $_SESSION['userconf']['relational_display'] = $_SESSION['userconf']['query'][$sql_key]['relational_display']; $_SESSION['userconf']['display_binary'] = isset($_SESSION['userconf']['query'][$sql_key]['display_binary']) ? true : false; $_SESSION['userconf']['display_blob'] = isset($_SESSION['userconf']['query'][$sql_key]['display_blob']) ? true : false; + $_SESSION['userconf']['hide_transformation'] = isset($_SESSION['userconf']['query'][$sql_key]['hide_transformation']) ? true : false; $_SESSION['userconf']['pos'] = $_SESSION['userconf']['query'][$sql_key]['pos']; $_SESSION['userconf']['max_rows'] = $_SESSION['userconf']['query'][$sql_key]['max_rows']; $_SESSION['userconf']['repeat_cells'] = $_SESSION['userconf']['query'][$sql_key]['repeat_cells'];