diff options
author | Callum Macrae <callum@lynxphp.com> | 2011-11-17 17:09:09 +0000 |
---|---|---|
committer | Igor Wiedler <igor@wiedler.ch> | 2012-03-31 02:09:21 +0200 |
commit | 8da463ac9e0048626bc5dd76073d31e9bc68fc2b (patch) | |
tree | 31d8a2422a2f9f19c59fe4dc51bae8fc2cf1d04e /phpBB/assets/javascript/core.js | |
parent | 885c2914db51f0ed8157d9e43333d89dcfdb0153 (diff) | |
download | forums-8da463ac9e0048626bc5dd76073d31e9bc68fc2b.tar forums-8da463ac9e0048626bc5dd76073d31e9bc68fc2b.tar.gz forums-8da463ac9e0048626bc5dd76073d31e9bc68fc2b.tar.bz2 forums-8da463ac9e0048626bc5dd76073d31e9bc68fc2b.tar.xz forums-8da463ac9e0048626bc5dd76073d31e9bc68fc2b.zip |
[ticket/10270] Recoded some potentially buggy code in phpbb.confirm.
The code before could have removed event handlers defined by other code.
PHPBB3-10270
Diffstat (limited to 'phpBB/assets/javascript/core.js')
-rw-r--r-- | phpBB/assets/javascript/core.js | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js index a8ccad863f..f67e251b5d 100644 --- a/phpBB/assets/javascript/core.js +++ b/phpBB/assets/javascript/core.js @@ -124,21 +124,22 @@ phpbb.confirm = function(msg, callback, fadedark) { e.stopPropagation(); return true; }); - div.find('input[type="button"]').one('click', function() { + + var click_handler = function() { var res = this.className === 'button1'; var fade = (typeof fadedark !== 'undefined' && !fadedark && res) ? div : dark; fade.fadeOut(phpbb.alert_time, function() { div.hide(); }); - div.find('input[type="button"]').unbind('click'); + div.find('input[type="button"]').unbind('click', click_handler); callback(res); return false; - }); + }; + div.find('input[type="button"]').one('click', click_handler); dark.one('click', function(e) { div.find('.alert_close').unbind('click'); - var fade = (typeof fadedark !== 'undefined' && !fadedark && res) ? div : dark; - fade.fadeOut(phpbb.alert_time, function() { + dark.fadeOut(phpbb.alert_time, function() { div.hide(); }); callback(false); |