From d786f49e05ffff931211d46edd91b567c07d170f Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Wed, 28 Jul 2021 16:30:44 +0300 Subject: [PATCH] Fix fast clicks on version history --- apps/common/main/lib/controller/History.js | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/apps/common/main/lib/controller/History.js b/apps/common/main/lib/controller/History.js index 502757238..b0a4b50c7 100644 --- a/apps/common/main/lib/controller/History.js +++ b/apps/common/main/lib/controller/History.js @@ -136,9 +136,15 @@ define([ this.currentServerVersion = record.get('serverVersion'); if ( _.isEmpty(url) || (urlGetTime - record.get('urlGetTime') > 5 * 60000)) { - _.delay(function() { - Common.Gateway.requestHistoryData(rev); // получаем url-ы для ревизий - }, 10); + var me = this; + if (!me.timerId) { + me.timerId = setTimeout(function () { + me.timerId = 0; + },30000); + _.delay(function() { + Common.Gateway.requestHistoryData(rev); // получаем url-ы для ревизий + }, 10); + } } else { var commentsController = this.getApplication().getController('Common.Controllers.Comments'); if (commentsController) { @@ -168,6 +174,11 @@ define([ onSetHistoryData: function(opts) { if (!this.mode.canUseHistory) return; + if (this.timerId) { + clearTimeout(this.timerId); + this.timerId = 0; + } + if (opts.data.error) { var config = { title: this.notcriticalErrorTitle, @@ -177,9 +188,6 @@ define([ }; Common.UI.alert(config); } else { - if (this.currentRev !== opts.data.version) { - return; - } var commentsController = this.getApplication().getController('Common.Controllers.Comments'); if (commentsController) { commentsController.onApiHideComment(); @@ -220,6 +228,7 @@ define([ hist.asc_setIsRequested(true); hist.asc_setServerVersion(this.currentServerVersion); this.api.asc_showRevision(hist); + this.currentRev = data.version; var reviewController = this.getApplication().getController('Common.Controllers.ReviewChanges'); if (reviewController)