diff options
author | Christian Foellmann <foellmann@foe-services.de> | 2015-02-20 20:07:52 +0300 |
---|---|---|
committer | Christian Foellmann <foellmann@foe-services.de> | 2015-02-20 20:07:52 +0300 |
commit | 6f2e60343b0a324c65f2d1411bf4bd03e114fb98 (patch) | |
tree | 465db7c5b87db50bf7d50e8ca712929c40dbb9a3 | |
parent | fdd87c2dc05247294c8962b21a238c06a2049555 (diff) |
UPDATE 4.3.104.3.10
29 files changed, 84 insertions, 37 deletions
@@ -1,6 +1,17 @@ phpMyAdmin - ChangeLog ====================== +4.3.10.0 (2015-02-20) +- bug Undefined index navwork +- bug #4744 Opening console scroll down the page +- bug Remove extra column heading in view structure page +- bug Add missing confirmation when deleting central columns +- bug Undefined index DisableIS +- bug #4763 Database export with more than 512 tables fails +- bug #4769 Previously set column aliases are destroyed if returned to the same table +- bug #4752 Incorrect page after creating table +- bug #4771 Central Columns not working, showing error + 4.3.9.0 (2015-02-05) - bug #4728 Incorrect headings in routine editor - bug #4730 Notice while browsing tables when phpmyadmin pma database exists, but not all the tables @@ -1,7 +1,7 @@ phpMyAdmin - Readme =================== -Version 4.3.9 +Version 4.3.10 A set of PHP-scripts to manage MySQL over the web. diff --git a/js/console.js b/js/console.js index e6dd927841..28994df12f 100644 --- a/js/console.js +++ b/js/console.js @@ -281,10 +281,10 @@ var PMA_console = { PMA_console.$consoleContent.animate({'margin-bottom': 0}, 'fast', 'easeOutQuart', function() { $(window).trigger('resize'); + if(inputFocus) { + PMA_consoleInput.focus(); + } }); - if(inputFocus) { - PMA_consoleInput.focus(); - } }, /** * Change console to SQL information mode diff --git a/js/db_central_columns.js b/js/db_central_columns.js index c7b924d4ce..c3e89beb01 100644 --- a/js/db_central_columns.js +++ b/js/db_central_columns.js @@ -72,10 +72,16 @@ AJAX.registerOnload('db_central_columns.js', function () { $('#f_'+rownum+' .default_type').siblings('.default_value').hide(); } }); - $(".del_row").click(function() { - rownum = $(this).data('rownum'); - $("#del_col_name").val($('#f_'+rownum +' td[name=col_name] span').html()); - $("#del_form").submit(); + $(".del_row").click(function (event) { + event.preventDefault(); + event.stopPropagation(); + $td = $(this); + var question = PMA_messages.strDeleteCentralColumnWarning; + $td.PMA_confirm(question, null, function (url) { + rownum = $td.data('rownum'); + $("#del_col_name").val($('#f_' + rownum +' td[name=col_name] span').html()); + $("#del_form").submit(); + }); }); $('.edit_cancel_form').click(function(event) { event.preventDefault(); diff --git a/js/export.js b/js/export.js index c34059a2d7..b80c3dcebf 100644 --- a/js/export.js +++ b/js/export.js @@ -274,12 +274,14 @@ function aliasSelectHandler(event) { var outer = $inputWrapper[0].outerHTML; // Replace opening tags var regex = /<dummy_inp/gi; - var newTag = outer.replace(regex, '<input'); - // Replace closing tags - regex = /<\/dummy_inp/gi; - newTag = newTag.replace(regex, '</input'); - // Assign replacement - $inputWrapper.replaceWith(newTag); + if (outer.match(regex)) { + var newTag = outer.replace(regex, '<input'); + // Replace closing tags + regex = /<\/dummy_inp/gi; + newTag = newTag.replace(regex, '</input'); + // Assign replacement + $inputWrapper.replaceWith(newTag); + } } else if (type === '_tables') { $('.table_alias_select:visible').change(); } @@ -304,8 +306,15 @@ function createAliasModal(event) { }; dlgButtons[PMA_messages.strSaveAndClose] = function() { $(this).dialog("close"); + // do not fillup form submission with empty values + $.each($(this).find('input[type="text"]'), function (i, e) { + if ($(e).val().trim().length == 0) { + $(e).prop('disabled', true); + } + }); $('#alias_modal').parent().appendTo($('form[name="dump"]')); }; + $('#alias_modal input[type="text"]').prop('disabled', false); $('#alias_modal').dialog({ width: Math.min($(window).width() - 100, 700), modal: true, diff --git a/js/functions.js b/js/functions.js index d1fb1c1235..7921385060 100644 --- a/js/functions.js +++ b/js/functions.js @@ -2011,11 +2011,13 @@ function PMA_previewSQL($form) '&do_save_data=1' + '&preview_sql=1' + '&ajax_request=1'; + var $msgbox = PMA_ajaxShowMessage(); $.ajax({ type: 'POST', url: form_url, data: form_data, success: function (response) { + PMA_ajaxRemoveMessage($msgbox); if (response.success) { var $dialog_content = $('<div/>') .append(response.sql_data); @@ -2518,6 +2520,12 @@ AJAX.registerOnload('functions.js', function () { //Refresh navigation as a new table has been added PMA_reloadNavigation(); + + // Redirect to table structure page on creation of new table + var params_12 = 'ajax_request=true&ajax_page_request=true'; + params_12 += AJAX.cache.menus.getRequestParam(); + tblStruct_url = 'tbl_structure.php?db='+ data._params.db + '&token='+data._params.token +'&goto=db_structure.php&table='+data._params.table+''; + $.get(tblStruct_url, params_12, AJAX.responseHandler); } else { PMA_ajaxShowMessage( '<div class="error">' + data.error + '</div>', diff --git a/js/line_counts.php b/js/line_counts.php index da3501be1b..787bb812d4 100644 --- a/js/line_counts.php +++ b/js/line_counts.php @@ -14,8 +14,8 @@ define('LINE_COUNTS', true); $LINE_COUNT = array(); $LINE_COUNT["error_report.js"] = 338; -$LINE_COUNT["functions.js"] = 4657; -$LINE_COUNT["db_central_columns.js"] = 190; +$LINE_COUNT["functions.js"] = 4665; +$LINE_COUNT["db_central_columns.js"] = 196; $LINE_COUNT["jquery/jquery-ui-timepicker-addon.js"] = 2144; $LINE_COUNT["jquery/jquery.cookie.js"] = 91; $LINE_COUNT["jquery/jquery.sortableTable.js"] = 271; @@ -123,7 +123,7 @@ $LINE_COUNT["config.js"] = 800; $LINE_COUNT["big_ints.js"] = 67; $LINE_COUNT["server_user_groups.js"] = 42; $LINE_COUNT["makegrid.js"] = 1949; -$LINE_COUNT["export.js"] = 385; +$LINE_COUNT["export.js"] = 394; $LINE_COUNT["doclinks.js"] = 365; $LINE_COUNT["console.js"] = 928; $LINE_COUNT["transformations/image_upload.js"] = 28; diff --git a/js/messages.php b/js/messages.php index 72b4dbed66..5a84aaa8fd 100644 --- a/js/messages.php +++ b/js/messages.php @@ -46,6 +46,7 @@ $js_messages['strDropUserGroupWarning'] = __('Do you really want to delete user $js_messages['strConfirmDeleteQBESearch'] = __('Do you really want to delete the search "%s"?'); $js_messages['strConfirmNavigation'] = __('You have unsaved changes; are you sure you want to leave this page?'); $js_messages['strDropUserWarning'] = __('Do you really want to revoke the selected user(s) ?'); +$js_messages['strDeleteCentralColumnWarning'] = __('Do you really want to delete this central column?'); /* For modal dialog buttons */ $js_messages['strSaveAndClose'] = __('Save & Close'); diff --git a/libraries/Config.class.php b/libraries/Config.class.php index c3f94ae241..410612852c 100644 --- a/libraries/Config.class.php +++ b/libraries/Config.class.php @@ -114,7 +114,7 @@ class PMA_Config */ function checkSystem() { - $this->set('PMA_VERSION', '4.3.9'); + $this->set('PMA_VERSION', '4.3.10'); /** * @deprecated */ diff --git a/libraries/central_columns.lib.php b/libraries/central_columns.lib.php index 542d4b2a6e..606f274ef8 100644 --- a/libraries/central_columns.lib.php +++ b/libraries/central_columns.lib.php @@ -95,7 +95,11 @@ function PMA_getCentralColumnsCount($db) PMA_Util::backquote($central_list_table) . ' ' . 'WHERE db_name = \'' . $db . '\';'; $res = $GLOBALS['dbi']->fetchResult($query); - return $res[0]; + if (isset($res[0])) { + return $res[0]; + } else { + return 0; + } } /** * return the existing columns in central list among the given list of columns diff --git a/libraries/display_export.lib.php b/libraries/display_export.lib.php index 4efe0c5b21..d7f5ed828b 100644 --- a/libraries/display_export.lib.php +++ b/libraries/display_export.lib.php @@ -803,7 +803,7 @@ function PMA_getHtmlForAliasModalDialog($db = '', $table = '') } $db_input_html .= '<input type="text" name="' . $name_attr . '" ' . 'placeholder="' . $db . ' alias" class="' . $class . '" ' - . 'id="' . $id_attr . '" value="' . $val . '"/>'; + . 'id="' . $id_attr . '" value="' . $val . '" disabled="disabled"/>'; $db_html .= '<option value="' . $id_attr . '">' . $db . '</option>'; $table_html .= '<span id="' . $id_attr . '_tables" class="' . $class . '">'; $table_html .= '<select id="' . $id_attr . '_tables_select" ' @@ -827,7 +827,8 @@ function PMA_getHtmlForAliasModalDialog($db = '', $table = '') } $table_input_html .= '<input type="text" value="' . $val . '" ' . 'name="' . $name_attr . '" id="' . $id_attr . '" ' - . 'placeholder="' . $table . ' alias" class="' . $class . '"/>'; + . 'placeholder="' . $table . ' alias" class="' . $class . '" ' + . 'disabled="disabled"/>'; $table_html .= '<option value="' . $id_attr . '">' . $table . '</option>'; $col_html .= '<table id="' . $id_attr . '_cols" class="' diff --git a/libraries/language_stats.inc.php b/libraries/language_stats.inc.php index b5f1c38fa4..e5d95e812e 100644 --- a/libraries/language_stats.inc.php +++ b/libraries/language_stats.inc.php @@ -4,7 +4,7 @@ $GLOBALS["language_stats"] = array ( 'af' => 10, - 'ar' => 37, + 'ar' => 38, 'az' => 53, 'be@latin' => 27, 'be' => 27, @@ -32,9 +32,9 @@ $GLOBALS["language_stats"] = array ( 'hr' => 33, 'hu' => 100, 'hy' => 3, - 'ia' => 63, + 'ia' => 64, 'id' => 75, - 'it' => 80, + 'it' => 81, 'ja' => 73, 'ka' => 15, 'kk' => 10, @@ -44,7 +44,7 @@ $GLOBALS["language_stats"] = array ( 'ksh' => 1, 'ky' => 1, 'lt' => 49, - 'lv' => 21, + 'lv' => 22, 'mk' => 18, 'ml' => 1, 'mn' => 23, @@ -54,7 +54,7 @@ $GLOBALS["language_stats"] = array ( 'nl' => 99, 'pa' => 2, 'pl' => 89, - 'pt_BR' => 95, + 'pt_BR' => 96, 'pt' => 60, 'ro' => 60, 'ru' => 99, diff --git a/libraries/navigation/Nodes/Node.class.php b/libraries/navigation/Nodes/Node.class.php index d18783c39d..a067d30ff3 100644 --- a/libraries/navigation/Nodes/Node.class.php +++ b/libraries/navigation/Nodes/Node.class.php @@ -367,7 +367,9 @@ class Node $maxItems = $GLOBALS['cfg']['FirstLevelNavigationItems']; if ($GLOBALS['cfg']['NavigationTreeEnableGrouping']) { $dbSeparator = $GLOBALS['cfg']['NavigationTreeDbSeparator']; - if (! $GLOBALS['cfg']['Server']['DisableIS']) { + if (isset($GLOBALS['cfg']['Server']['DisableIS']) + && ! $GLOBALS['cfg']['Server']['DisableIS'] + ) { $query = "SELECT `SCHEMA_NAME` "; $query .= "FROM `INFORMATION_SCHEMA`.`SCHEMATA`, "; $query .= "("; @@ -472,7 +474,9 @@ class Node } } } else { - if (! $GLOBALS['cfg']['Server']['DisableIS']) { + if (isset($GLOBALS['cfg']['Server']['DisableIS']) + && ! $GLOBALS['cfg']['Server']['DisableIS'] + ) { $query = "SELECT `SCHEMA_NAME` "; $query .= "FROM `INFORMATION_SCHEMA`.`SCHEMATA` "; $query .= $this->_getWhereClause('SCHEMA_NAME', $searchClause); @@ -538,7 +542,9 @@ class Node { if ($GLOBALS['cfg']['NavigationTreeEnableGrouping']) { $dbSeparator = $GLOBALS['cfg']['NavigationTreeDbSeparator']; - if (! $GLOBALS['cfg']['Server']['DisableIS']) { + if (isset($GLOBALS['cfg']['Server']['DisableIS']) + && ! $GLOBALS['cfg']['Server']['DisableIS'] + ) { $query = "SELECT COUNT(*) "; $query .= "FROM ( "; $query .= "SELECT DISTINCT SUBSTRING_INDEX(SCHEMA_NAME, "; @@ -586,7 +592,9 @@ class Node } } } else { - if (! $GLOBALS['cfg']['Server']['DisableIS']) { + if (isset($GLOBALS['cfg']['Server']['DisableIS']) + && ! $GLOBALS['cfg']['Server']['DisableIS'] + ) { $query = "SELECT COUNT(*) "; $query .= "FROM INFORMATION_SCHEMA.SCHEMATA "; $query .= $this->_getWhereClause('SCHEMA_NAME', $searchClause); diff --git a/libraries/navigation/Nodes/Node_Database.class.php b/libraries/navigation/Nodes/Node_Database.class.php index 74dff6cd35..7fca56c110 100644 --- a/libraries/navigation/Nodes/Node_Database.class.php +++ b/libraries/navigation/Nodes/Node_Database.class.php @@ -361,7 +361,7 @@ class Node_Database extends Node // Remove hidden items so that they are not displayed in navigation tree $cfgRelation = PMA_getRelationsParam(); - if ($cfgRelation['navwork']) { + if (isset($cfgRelation['navwork']) && $cfgRelation['navwork']) { $navTable = PMA_Util::backquote($cfgRelation['db']) . "." . PMA_Util::backquote($cfgRelation['navigationhiding']); $sqlQuery = "SELECT `item_name` FROM " . $navTable diff --git a/libraries/navigation/Nodes/Node_DatabaseChild.class.php b/libraries/navigation/Nodes/Node_DatabaseChild.class.php index 4966bb5378..398d0b2178 100644 --- a/libraries/navigation/Nodes/Node_DatabaseChild.class.php +++ b/libraries/navigation/Nodes/Node_DatabaseChild.class.php @@ -25,7 +25,7 @@ abstract class Node_DatabaseChild extends Node { $ret = ''; $cfgRelation = PMA_getRelationsParam(); - if ($cfgRelation['navwork']) { + if (isset($cfgRelation['navwork']) && $cfgRelation['navwork']) { $db = $this->realParent()->real_name; $item = $this->real_name; $ret = '<span class="navItemControls">' diff --git a/libraries/structure.lib.php b/libraries/structure.lib.php index 43492cc38e..3cd9c830b6 100644 --- a/libraries/structure.lib.php +++ b/libraries/structure.lib.php @@ -1296,9 +1296,8 @@ function PMA_getHtmlForTableStructureHeader( . '<th>' . __('Default') . '</th>' . '<th>' . __('Extra') . '</th>'; - if ($db_is_system_schema || $tbl_is_view) { - $html_output .= '<th>' . __('View') . '</th>'; - } else { /* see tbl_structure.js, function moreOptsMenuResize() */ + /* see tbl_structure.js, function moreOptsMenuResize() */ + if (! $db_is_system_schema && ! $tbl_is_view) { $colspan = 9; if (PMA_DRIZZLE) { $colspan -= 2; @@ -2128,7 +2127,7 @@ function PMA_getHtmlForActionsInTableStructure($type, $tbl_storage_engine, ); } $html_output .= PMA_getHtmlForDistinctValueAction($url_query, $row, $titles); - if (isset($GLOBALS['cfgRelation']['central_columnswork']) + if (isset($GLOBALS['cfgRelation']['central_columnswork']) && $GLOBALS['cfgRelation']['central_columnswork'] ) { $html_output .= '<li class="browse nowrap">'; diff --git a/locale/az/LC_MESSAGES/phpmyadmin.mo b/locale/az/LC_MESSAGES/phpmyadmin.mo Binary files differindex 2ebd648b55..0df6bc1df8 100644 --- a/locale/az/LC_MESSAGES/phpmyadmin.mo +++ b/locale/az/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/es/LC_MESSAGES/phpmyadmin.mo b/locale/es/LC_MESSAGES/phpmyadmin.mo Binary files differindex daaa454787..7bd4ea3283 100644 --- a/locale/es/LC_MESSAGES/phpmyadmin.mo +++ b/locale/es/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/hu/LC_MESSAGES/phpmyadmin.mo b/locale/hu/LC_MESSAGES/phpmyadmin.mo Binary files differindex f5af56f451..915a0d079e 100644 --- a/locale/hu/LC_MESSAGES/phpmyadmin.mo +++ b/locale/hu/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/ia/LC_MESSAGES/phpmyadmin.mo b/locale/ia/LC_MESSAGES/phpmyadmin.mo Binary files differindex 30f29b7fec..58d25f018a 100644 --- a/locale/ia/LC_MESSAGES/phpmyadmin.mo +++ b/locale/ia/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/id/LC_MESSAGES/phpmyadmin.mo b/locale/id/LC_MESSAGES/phpmyadmin.mo Binary files differindex 6f7ec36702..a2d1ff14c0 100644 --- a/locale/id/LC_MESSAGES/phpmyadmin.mo +++ b/locale/id/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/it/LC_MESSAGES/phpmyadmin.mo b/locale/it/LC_MESSAGES/phpmyadmin.mo Binary files differindex 4b187a92bb..c39551c895 100644 --- a/locale/it/LC_MESSAGES/phpmyadmin.mo +++ b/locale/it/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/ja/LC_MESSAGES/phpmyadmin.mo b/locale/ja/LC_MESSAGES/phpmyadmin.mo Binary files differindex 8d51a619f4..6d48dc8d8c 100644 --- a/locale/ja/LC_MESSAGES/phpmyadmin.mo +++ b/locale/ja/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/lt/LC_MESSAGES/phpmyadmin.mo b/locale/lt/LC_MESSAGES/phpmyadmin.mo Binary files differindex 7df457c578..e5cfb2503b 100644 --- a/locale/lt/LC_MESSAGES/phpmyadmin.mo +++ b/locale/lt/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/nl/LC_MESSAGES/phpmyadmin.mo b/locale/nl/LC_MESSAGES/phpmyadmin.mo Binary files differindex bd84b05dae..e804cdcd2b 100644 --- a/locale/nl/LC_MESSAGES/phpmyadmin.mo +++ b/locale/nl/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/pt_BR/LC_MESSAGES/phpmyadmin.mo b/locale/pt_BR/LC_MESSAGES/phpmyadmin.mo Binary files differindex ab41c705a4..89b0c2a7a6 100644 --- a/locale/pt_BR/LC_MESSAGES/phpmyadmin.mo +++ b/locale/pt_BR/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/sk/LC_MESSAGES/phpmyadmin.mo b/locale/sk/LC_MESSAGES/phpmyadmin.mo Binary files differindex d23ad4706e..f5f797d315 100644 --- a/locale/sk/LC_MESSAGES/phpmyadmin.mo +++ b/locale/sk/LC_MESSAGES/phpmyadmin.mo diff --git a/locale/tr/LC_MESSAGES/phpmyadmin.mo b/locale/tr/LC_MESSAGES/phpmyadmin.mo Binary files differindex b73f5af4e0..1ba58aad9b 100644 --- a/locale/tr/LC_MESSAGES/phpmyadmin.mo +++ b/locale/tr/LC_MESSAGES/phpmyadmin.mo diff --git a/navigation.php b/navigation.php index 2c35311e50..2b1b85a5d2 100644 --- a/navigation.php +++ b/navigation.php @@ -24,7 +24,7 @@ if (! $response->isAjax()) { } $cfgRelation = PMA_getRelationsParam(); -if ($cfgRelation['navwork']) { +if (isset($cfgRelation['navwork']) && $cfgRelation['navwork']) { if (isset($_REQUEST['hideNavItem'])) { if (! empty($_REQUEST['itemName']) && ! empty($_REQUEST['itemType']) |