diff --git a/ChangeLog b/ChangeLog index 499401e601..3bb635dda9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,7 @@ phpMyAdmin - ChangeLog + rfe #1566 Change value of "Number of rows:" when "Show all" is checked + rfe Focus console by clicking on white space + rfe 1507 Part 1: Cycle through console history with keyboard up/down arrows ++ rfe #1579 Default to primary key when adding relation 4.3.3.0 (not yet released) - bug The "Recently used tables" setting should be with Nav panel diff --git a/js/tbl_relation.js b/js/tbl_relation.js index 8858fabf41..fd35443d40 100644 --- a/js/tbl_relation.js +++ b/js/tbl_relation.js @@ -17,13 +17,13 @@ function show_hide_clauses($thisDropdown) /** * Sets dropdown options to values */ -function setDropdownValues($dropdown, values) { +function setDropdownValues($dropdown, values, selectedValue) { $dropdown.empty(); var optionsAsString = ''; // add an empty string to the beginning for empty selection values.unshift(''); $.each(values, function () { - optionsAsString += ""; + optionsAsString += ""; }); $dropdown.append($(optionsAsString)); } @@ -94,7 +94,13 @@ function getDropdownValues($dropdown) { setDropdownValues($columnDd, []); } else { // if a table selector // set values for the column dropdown - setDropdownValues($columnDd, data.columns); + var primary = null; + if (typeof data.primary !== 'undefined' + && 1 === data.primary.length + ) { + primary = data.primary[0]; + } + setDropdownValues($columnDd, data.columns, primary); } } else { PMA_ajaxShowMessage(data.error, false); diff --git a/libraries/tbl_relation.lib.php b/libraries/tbl_relation.lib.php index be5edfde1c..2381a9d53e 100644 --- a/libraries/tbl_relation.lib.php +++ b/libraries/tbl_relation.lib.php @@ -722,6 +722,15 @@ function PMA_sendHtmlForColumnDropdownList() $columns[] = htmlspecialchars($column); } $response->addJSON('columns', $columns); + + // @todo should be: $server->db($db)->table($table)->primary() + $primary = PMA_Index::getPrimary($foreignTable, $_REQUEST['foreignDb']); + if (false === $primary) { + return; + } + + $primarycols = array_keys($primary->getColumns()); + $response->addJSON('primary', $primarycols); } /**