]> git.joonet.de Git - adminer.git/commitdiff
Disable repetitive events as soon as possible
authorJakub Vrana <jakub@vrana.cz>
Mon, 18 Oct 2010 23:06:30 +0000 (01:06 +0200)
committerJakub Vrana <jakub@vrana.cz>
Mon, 18 Oct 2010 23:06:30 +0000 (01:06 +0200)
adminer/static/editing.js
adminer/static/functions.js
editor/include/adminer.inc.php

index 99c10569c19a69610d8f18bb145365fda78a7cca..b03a414c8d686fb8eea9d3398cb065f8bda5fb8c 100644 (file)
@@ -285,6 +285,7 @@ function partitionNameChange(el) {
 * @param HTMLSelectElement
 */
 function foreignAddRow(field) {
+       field.onchange = function () { };
        var row = field.parentNode.parentNode.cloneNode(true);
        var selects = row.getElementsByTagName('select');
        for (var i=0; i < selects.length; i++) {
@@ -292,7 +293,6 @@ function foreignAddRow(field) {
                selects[i].selectedIndex = 0;
        }
        field.parentNode.parentNode.parentNode.appendChild(row);
-       field.onchange = function () { };
 }
 
 
@@ -301,6 +301,7 @@ function foreignAddRow(field) {
 * @param HTMLSelectElement
 */
 function indexesAddRow(field) {
+       field.onchange = function () { };
        var row = field.parentNode.parentNode.cloneNode(true);
        var spans = row.getElementsByTagName('span');
        for (var i=0; i < spans.length - 1; i++) {
@@ -315,13 +316,13 @@ function indexesAddRow(field) {
        input.name = input.name.replace(/indexes\[[0-9]+/, '$&1');
        input.value = '';
        field.parentNode.parentNode.parentNode.appendChild(row);
-       field.onchange = function () { };
 }
 
 /** Add column for index
 * @param HTMLSelectElement
 */
 function indexesAddColumn(field) {
+       field.onchange = function () { };
        var column = field.parentNode.cloneNode(true);
        var select = column.getElementsByTagName('select')[0];
        select.name = select.name.replace(/\]\[[0-9]+/, '$&1');
@@ -330,7 +331,6 @@ function indexesAddColumn(field) {
        input.name = input.name.replace(/\]\[[0-9]+/, '$&1');
        input.value = '';
        field.parentNode.parentNode.appendChild(column);
-       field.onchange = function () { };
 }
 
 
index 1581cfbd362491bb7e626bd6fe4871bde5ee7fd4..f8478a0074fc86ab4b6b47a4b7950de21e9eeb4f 100644 (file)
@@ -105,6 +105,7 @@ function setHtml(id, html) {
 * @param HTMLSelectElement
 */
 function selectAddRow(field) {
+       field.onchange = function () { };
        var row = field.parentNode.cloneNode(true);
        var selects = row.getElementsByTagName('select');
        for (var i=0; i < selects.length; i++) {
@@ -118,7 +119,6 @@ function selectAddRow(field) {
                inputs[0].className = '';
        }
        field.parentNode.parentNode.appendChild(row);
-       field.onchange = function () { };
 }
 
 
@@ -159,6 +159,7 @@ function textareaKeydown(target, event, tab, button) {
 * @param boolean display textarea instead of input
 */
 function selectDblClick(td, event, text) {
+       td.ondblclick = function () { };
        var pos = event.rangeOffset;
        var value = (td.firstChild.firstChild ? td.firstChild.firstChild.data : (td.firstChild.alt ? td.firstChild.alt : td.firstChild.data));
        var input = document.createElement(text ? 'textarea' : 'input');
@@ -193,5 +194,4 @@ function selectDblClick(td, event, text) {
                range.moveStart('character', pos);
                range.select();
        }
-       td.ondblclick = function () { };
 }
index ac99cc5b418dcf37432a1947936326db9e69d237..71209989fb179815a738c13840291c8e468193ac 100644 (file)
@@ -271,7 +271,7 @@ ORDER BY ORDINAL_POSITION", null, "") as $row) { //! requires MySQL 5
                        echo lang('Subject') . ": <input name='email_subject' value='" . h($_POST["email_subject"]) . "'>\n";
                        echo "<p><textarea name='email_message' rows='15' cols='75' onkeydown='return textareaKeydown(this, event, false, this.form.email);'>" . h($_POST["email_message"] . ($_POST["email_append"] ? '{$' . "$_POST[email_addition]}" : "")) . "</textarea><br>\n";
                        echo html_select("email_addition", $columns, $_POST["email_addition"]) . "<input type='submit' name='email_append' value='" . lang('Insert') . "'>\n"; //! JavaScript
-                       echo "<p>" . lang('Attachments') . ": <input type='file' name='email_files[]' onchange=\"var el = this.cloneNode(true); el.value = ''; this.parentNode.appendChild(el); this.onchange = function () { };\">";
+                       echo "<p>" . lang('Attachments') . ": <input type='file' name='email_files[]' onchange=\"this.onchange = function () { }; var el = this.cloneNode(true); el.value = ''; this.parentNode.appendChild(el);\">";
                        echo "<p>" . (count($emailFields) == 1 ? '<input type="hidden" name="email_field" value="' . h(key($emailFields)) . '">' : html_select("email_field", $emailFields));
                        echo "<input type='submit' name='email' value='" . lang('Send') . "' onclick=\"return this.form['delete'].onclick();\">\n";
                        echo "</div></fieldset>\n";