Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpmyadmin/phpmyadmin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShivam Dixit <shivamd001@gmail.com>2014-06-01 15:52:24 +0400
committerShivam Dixit <shivamd001@gmail.com>2014-06-01 15:52:24 +0400
commit750f3d5f51056a228b8fa4945ecbb65c4fe81600 (patch)
treec12395e3aa0c493dd5249993717f045dcb28cb5d /js/tbl_change.js
parente5367c1c408289ceac74a5079ac372f4d2bddbe3 (diff)
Fixed #4415 Show a prompt when user navigates away from insert page without saving
Signed-off-by: Shivam Dixit <shivamd001@gmail.com>
Diffstat (limited to 'js/tbl_change.js')
-rw-r--r--js/tbl_change.js22
1 files changed, 21 insertions, 1 deletions
diff --git a/js/tbl_change.js b/js/tbl_change.js
index b95efc48ef..177c9e5ddf 100644
--- a/js/tbl_change.js
+++ b/js/tbl_change.js
@@ -237,6 +237,8 @@ function verificationsAfterFieldChange(urlField, multi_edit, theType)
* Unbind all event handlers before tearing down a page
*/
AJAX.registerTeardown('tbl_change.js', function () {
+ $("a").die('click');
+ $("form#insertForm :input:not([type=hidden])").unbind('change');
$('span.open_gis_editor').die('click');
$("input[name='gis_data[save]']").die('click');
$('input.checkbox_null').die('click');
@@ -245,6 +247,7 @@ AJAX.registerTeardown('tbl_change.js', function () {
$("select[name*='funcs']").die('click');
});
+
/**
* Ajax handlers for Change Table page
*
@@ -255,6 +258,24 @@ AJAX.registerTeardown('tbl_change.js', function () {
AJAX.registerOnload('tbl_change.js', function () {
$.datepicker.initialized = false;
+ var $unsavedForm = false;
+
+ $(document).on('click', 'a', function(e){
+
+ if ($unsavedForm) {
+ var is_confirmed = confirm(PMA_messages.strConfirmNavigation);
+ if (! is_confirmed) {
+ e.preventDefault();
+ } else {
+ unsavedForm = false;
+ }
+ }
+ });
+
+ $("form#insertForm :input:not([type=hidden])").change(function(){
+ $unsavedForm = true;
+ });
+
$('span.open_gis_editor').live('click', function (event) {
event.preventDefault();
@@ -303,7 +324,6 @@ AJAX.registerOnload('tbl_change.js', function () {
);
});
-
/**
* Reset the auto_increment column to 0 when selecting any of the
* insert options in submit_type-dropdown. Only perform the reset