From fd40613d8ebae128ef72576ff6243fe2da37b06a Mon Sep 17 00:00:00 2001 From: m3ntalsp00n Date: Sat, 4 Feb 2017 15:47:09 +1000 Subject: [PATCH] showUpdate funciton allows updated messages Signed-off-by: m3ntalsp00n --- core/js/js.js | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/core/js/js.js b/core/js/js.js index 3651635541a..0576dcc3357 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -780,8 +780,18 @@ var OCP = {}, // sometimes "beforeunload" happens later, so need to defer the reload a bit setTimeout(function() { if (!self._userIsNavigatingAway && !self._reloadCalled) { - OC.Notification.show(t('core', 'Problem loading page, reloading in 5 seconds')); - setTimeout(OC.reload, 5000); + var timer = 0; + var seconds = 5; + var interval = setInterval( function() { + OC.Notification.showUpdate(t('core', 'Problem loading page, reloading in ' + (seconds - timer) + ' seconds')); + if (timer >= seconds) { + clearInterval(interval); + OC.reload(); + } + timer++; + }, 1000 // 1 second interval + ); + // only call reload once self._reloadCalled = true; } @@ -1173,6 +1183,30 @@ OC.Notification={ return this.showHtml($('
').text(text).html(), options); }, + /** + * Updates (replaces) a sanitized notification. + * + * @param {string} text Message to display + * @return {jQuery} JQuery element for notificaiton row + */ + showUpdate: function(text) { + var $notification = $('#notification'); + // sanitise + var $html = $('
').text(text).html(); + + // new notification + if (text && $notification.find('.row').length == 0) { + return this.showHtml($html); + } + + var $row = $('
').prepend($html); + + // just update html in notification + $notification.html($row); + + return $row; + }, + /** * Shows a notification that disappears after x seconds, default is * 7 seconds -- 2.39.5