From e4d5503bcf87e34a2e04b50652da0bc7ec69fc2c Mon Sep 17 00:00:00 2001 From: Madhura Jayaratne Date: Tue, 4 Nov 2014 13:31:51 -0800 Subject: [PATCH] bug #4577 Additional fix for table structure page. Multi submits can be inputs as well Signed-off-by: Madhura Jayaratne --- js/sql.js | 4 ++-- js/tbl_structure.js | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/js/sql.js b/js/sql.js index d876099eb0..7e044aecbb 100644 --- a/js/sql.js +++ b/js/sql.js @@ -101,7 +101,7 @@ AJAX.registerTeardown('sql.js', function () { $('th.column_heading.marker').die('click'); $(window).unbind('scroll'); $(".filter_rows").die("keyup"); - $('body').off('click', '#resultsForm.ajax button[name="submit_mult"]'); + $('body').off('click', '#resultsForm.ajax button[name="submit_mult"], #resultsForm.ajax input[name="submit_mult"]'); }); /** @@ -442,7 +442,7 @@ AJAX.registerOnload('sql.js', function () { /** * Handles mutli submits of results browsing page such as edit, delete and export */ - $('body').on('click', '#resultsForm.ajax button[name="submit_mult"]', function (e) { + $('body').on('click', '#resultsForm.ajax button[name="submit_mult"], #resultsForm.ajax input[name="submit_mult"]', function (e) { e.preventDefault(); var $button = $(this); var $form = $button.parent('form'); diff --git a/js/tbl_structure.js b/js/tbl_structure.js index ad8275f9ae..3af0e33ac2 100644 --- a/js/tbl_structure.js +++ b/js/tbl_structure.js @@ -78,6 +78,7 @@ AJAX.registerTeardown('tbl_structure.js', function () { $("a.add_unique_anchor.ajax").die('click'); $("#move_columns_anchor").die('click'); $(".append_fields_form.ajax").unbind('submit'); + $('body').off('click', '#fieldsForm.ajax button[name="submit_mult"], #fieldsForm.ajax input[name="submit_mult"]'); }); AJAX.registerOnload('tbl_structure.js', function () { @@ -500,6 +501,21 @@ AJAX.registerOnload('tbl_structure.js', function () { } }); }); + + /** + * Handles mutli submits in table structure page such as browse, drop, primary etc. + * However this does not handle multiple field changes. It is handled by a seperate handler. + */ + $('body').on('click', '#fieldsForm.ajax button[name="submit_mult"], #fieldsForm.ajax input[name="submit_mult"]', function (e) { + var $button = $(this); + if (! $button.is('.change_columns_anchor.ajax')) { + e.preventDefault(); + var $form = $button.parent('form'); + var submitData = $form.serialize() + '&ajax_request=true&ajax_page_request=true&submit_mult=' + $button.val(); + PMA_ajaxShowMessage(); + $.get($form.attr('action'), submitData, AJAX.responseHandler); + } + }); }); /** Handler for "More" dropdown in structure table rows */