aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/assets
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2012-12-19 16:41:25 +0100
committerMarc Alexander <admin@m-a-styles.de>2013-01-01 20:29:30 +0100
commit5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af (patch)
treef2e6dcc1e769f690be6479794fab8e6969823fe1 /phpBB/assets
parente444f5bf2a8b30aefb3700ce358d2a6be66c8cb5 (diff)
downloadforums-5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af.tar
forums-5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af.tar.gz
forums-5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af.tar.bz2
forums-5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af.tar.xz
forums-5d07ddffaf1f5a173ce3b4fede45e80ff8f7d1af.zip
[ticket/10805] Clear loading alert timeout after ajax request finished
The timeout for the "request timed out" popup should be cleared if it finished. Since it is currently not cleared, the timeout alert appears as an extra overlay if another ajaxified function is ran within 5 seconds of the initial function call. This patch will take care of clearing the timeout if either the success (function return_handler()) or error (function error_handler()) functions are called. PHPBB3-10805
Diffstat (limited to 'phpBB/assets')
-rw-r--r--phpBB/assets/javascript/core.js16
1 files changed, 15 insertions, 1 deletions
diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js
index c18bec7035..36e547b056 100644
--- a/phpBB/assets/javascript/core.js
+++ b/phpBB/assets/javascript/core.js
@@ -13,6 +13,7 @@ var keymap = {
var dark = $('#darkenwrapper');
var loading_alert = $('#loadingalert');
+var phpbbAlertTimer = 0;
/**
@@ -30,7 +31,7 @@ phpbb.loading_alert = function() {
loading_alert.show();
dark.fadeIn(phpbb.alert_time, function() {
// Wait five seconds and display an error if nothing has been returned by then.
- setTimeout(function() {
+ phpbbAlertTimer = setTimeout(function() {
if (loading_alert.is(':visible'))
{
phpbb.alert($('#phpbb_alert').attr('data-l-err'), $('#phpbb_alert').attr('data-l-timeout-processing-req'));
@@ -43,6 +44,16 @@ phpbb.loading_alert = function() {
}
/**
+ * Clear loading alert timeout
+*/
+phpbb.clearLoadingTimeout = function() {
+ if (phpbbAlertTimer != 0) {
+ clearTimeout(phpbbAlertTimer);
+ phpbbAlertTimer = 0;
+ }
+}
+
+/**
* Display a simple alert similar to JSs native alert().
*
* You can only call one alert or confirm box at any one time.
@@ -271,6 +282,8 @@ phpbb.ajaxify = function(options) {
{
var alert;
+ phpbb.clearLoadingTimeout();
+
// Is a confirmation required?
if (typeof res.S_CONFIRM_ACTION === 'undefined')
{
@@ -341,6 +354,7 @@ phpbb.ajaxify = function(options) {
{
var alert;
+ phpbb.clearLoadingTimeout();
alert = phpbb.alert(dark.attr('data-ajax-error-title'), dark.attr('data-ajax-error-text'));
}