]> git.joonet.de Git - adminer.git/commitdiff
Don't reset column when searching for an empty value with Enter
authorJakub Vrana <jakub@vrana.cz>
Sat, 21 Dec 2013 01:42:13 +0000 (17:42 -0800)
committerJakub Vrana <jakub@vrana.cz>
Sat, 21 Dec 2013 01:42:43 +0000 (17:42 -0800)
adminer/include/adminer.inc.php
adminer/static/functions.js
changes.txt
editor/include/adminer.inc.php

index 6a61457e917c0ebfa91302cd0d90874f974748f7..b78d6c163afd90cbff1b860210ac5e7bf7f4ee16 100644 (file)
@@ -275,7 +275,7 @@ username.form['auth[driver]'].onchange();
                        if (!$val || ("$val[col]$val[val]" != "" && in_array($val["op"], $this->operators))) {
                                echo "<div>" . select_input(" name='where[$i][col]' onchange='$change_next'", $columns, $val["col"], "(" . lang('anywhere') . ")");
                                echo html_select("where[$i][op]", $this->operators, $val["op"], $change_next);
-                               echo "<input type='search' name='where[$i][val]' value='" . h($val["val"]) . "' onchange='" . ($val ? "selectFieldChange(this.form)" : "selectAddRow(this)") . ";' onsearch='selectSearchSearch(this);'></div>\n";
+                               echo "<input type='search' name='where[$i][val]' value='" . h($val["val"]) . "' onchange='" . ($val ? "selectFieldChange(this.form)" : "selectAddRow(this)") . ";' onkeydown='selectSearchKeydown(this, event);' onsearch='selectSearchSearch(this);'></div>\n";
                        }
                }
                echo "</div></fieldset>\n";
index 034b29fce29e4657edd975644ae739c1331b29d4..304952e52f02adb4ed4d1646bdef562eff7e7714 100644 (file)
@@ -311,6 +311,17 @@ function selectAddRow(field) {
        field.parentNode.parentNode.appendChild(row);
 }
 
+/** Prevent onsearch handler on Enter
+* @param HTMLInputElement
+* @param KeyboardEvent
+*/
+function selectSearchKeydown(el, event) {
+       if (event.keyCode == 13 || event.keyCode == 10) {
+               el.onsearch = function () {
+               };
+       }
+}
+
 /** Clear column name after resetting search
 * @param HTMLInputElement
 */
index 2dfc2b3059b7f2d7410a2e0c925fe90383d95c97..6179ee5c70b4a8631b24490234b3a8d0d17fb427 100644 (file)
@@ -16,6 +16,7 @@ Encrypt passwords stored in session by a key stored in cookie
 Don't append newlines to uploaded files, bug since Adminer 3.7.0
 Don't display SQL edit form on Ctrl+click on the select query, introduced in Adminer 3.6.4
 Use MD5 for editing long keys only in supported drivers, bug since Adminer 3.6.4
+Don't reset column when searching for an empty value with Enter, bug since Adminer 3.6.4
 Don't execute external JavaScript when verifying version
 Include JUSH in the compiled version
 Protect CSRF token against BREACH
index 87a47d3ddb28e007fbc137858eeb47219c6f2f00..dcb41ac7ef57eb4b204adc9936fb90347ad4af5e 100644 (file)
@@ -240,7 +240,7 @@ ORDER BY ORDINAL_POSITION", null, "") as $row) { //! requires MySQL 5
                        if (($val["col"] == "" || $columns[$val["col"]]) && "$val[col]$val[val]" != "") {
                                echo "<div><select name='where[$i][col]'><option value=''>(" . lang('anywhere') . ")" . optionlist($columns, $val["col"], true) . "</select>";
                                echo html_select("where[$i][op]", array(-1 => "") + $this->operators, $val["op"]);
-                               echo "<input type='search' name='where[$i][val]' value='" . h($val["val"]) . "' onsearch='selectSearchSearch(this);'></div>\n";
+                               echo "<input type='search' name='where[$i][val]' value='" . h($val["val"]) . "' onkeydown='selectSearchKeydown(this, event);' onsearch='selectSearchSearch(this);'></div>\n";
                                $i++;
                        }
                }