From ad4b57f3c2050f132610b3f5b7d8911070ba9a99 Mon Sep 17 00:00:00 2001 From: Trevor Hinesley Date: Thu, 10 Apr 2014 15:10:21 -0500 Subject: [PATCH] Fixing issue where if escape key was pressed, it would prevent any other forms from being submitted --- app/assets/javascripts/abracadabra.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/abracadabra.js b/app/assets/javascripts/abracadabra.js index 7b8d271..870fe95 100644 --- a/app/assets/javascripts/abracadabra.js +++ b/app/assets/javascripts/abracadabra.js @@ -1,6 +1,7 @@ $(function() { abracadabraSubmissionInProgress = false; abracadabraDeleteMousedown = false; + abracadabraEscapeKeydown = true; function closeAbracadabra(element, destroy, valueChanged) { $element = $(element); @@ -50,8 +51,9 @@ $(function() { } $("body").on("submit", ".abracadabra-form", function(e) { - if(abracadabraSubmissionInProgress == true) { + if(abracadabraSubmissionInProgress == true || abracadabraEscapeKeydown == true) { e.preventDefault(); + abracadabraEscapeKeydown = false; return false; } abracadabraSubmissionInProgress = true; @@ -116,6 +118,7 @@ $(function() { /* Press Escape to cancel */ if (e.keyCode == 27) { + abracadabraEscapeKeydown = true; e.preventDefault(); if(abracadabraSubmissionInProgress == false) { closeAbracadabra(this, false, false); @@ -136,6 +139,10 @@ $(function() { }); $(".abracadabra").on("click", function() { + if($(".abracadabra-container:visible").length) { + return false; + } + link = $(this); link.hide(); path = link.data("path");