From 477b8ec60c3a16f63ccc752efa1af1d822cc92d4 Mon Sep 17 00:00:00 2001 From: andris-sevcenko Date: Wed, 11 Jul 2018 17:00:59 +0300 Subject: [PATCH] Closed #2934 --- CHANGELOG-v3.md | 2 ++ .../assetindexes/dist/AssetIndexesUtility.js | 9 ++++++--- .../dist/AssetIndexesUtility.min.js | 2 +- .../dist/AssetIndexesUtility.min.js.map | 2 +- src/web/assets/cp/dist/js/Craft.js | 19 ++++++++++++++++++- src/web/assets/cp/dist/js/Craft.min.js | 2 +- src/web/assets/cp/dist/js/Craft.min.js.map | 2 +- src/web/assets/cp/src/js/ProgressBar.js | 19 ++++++++++++++++++- src/web/assets/utilities/dist/utilities.css | 8 ++++++++ .../assets/utilities/dist/utilities.css.map | 2 +- src/web/assets/utilities/dist/utilities.scss | 13 +++++++++++++ 11 files changed, 70 insertions(+), 10 deletions(-) diff --git a/CHANGELOG-v3.md b/CHANGELOG-v3.md index 52eff6f3723..37c7abc8f9a 100644 --- a/CHANGELOG-v3.md +++ b/CHANGELOG-v3.md @@ -2,6 +2,8 @@ ## Unreleased +### Added +- Assets indexing progressbar now also displays the amount of files indexed and total to give a sense of progress. ([#2934](https://github.com/craftcms/cms/issues/2934)) ### Changed - Craft no longer relies on ImageMagick or GD to define the image formats that should be considered manipulatable. ([#2408](https://github.com/craftcms/cms/issues/2408)) - Removed the `showBetaUpdates` config setting as it’s no longer being used. diff --git a/src/web/assets/assetindexes/dist/AssetIndexesUtility.js b/src/web/assets/assetindexes/dist/AssetIndexesUtility.js index 3a46428075f..61a2c530a53 100644 --- a/src/web/assets/assetindexes/dist/AssetIndexesUtility.js +++ b/src/web/assets/assetindexes/dist/AssetIndexesUtility.js @@ -24,7 +24,7 @@ if (!this.$trigger.hasClass('disabled')) { if (!this.progressBar) { - this.progressBar = new Craft.ProgressBar(this.$status); + this.progressBar = new Craft.ProgressBar(this.$status, true); } else { this.progressBar.resetProgressBar(); @@ -38,6 +38,7 @@ this.currentBatchQueue = []; this.progressBar.$progressBar.removeClass('hidden'); + this.progressBar.$progressBarStatus.removeClass('hidden'); this.progressBar.$progressBar.velocity('stop').velocity( { @@ -66,8 +67,9 @@ }, updateProgressBar: function() { - var width = (100 * this.completedActions / this.totalActions); - this.progressBar.setProgressPercentage(width); + this.progressBar.setItemCount(this.totalActions); + this.progressBar.setProcessedItemCount(this.completedActions); + this.progressBar.updateProgressBar(); }, loadAction: function(data) { @@ -175,6 +177,7 @@ this.$allDone.css('opacity', 0); } + this.progressBar.$progressBarStatus.addClass('hidden'); this.progressBar.$progressBar.velocity({opacity: 0}, { duration: 'fast', complete: $.proxy(function() { this.$allDone.velocity({opacity: 1}, {duration: 'fast'}); diff --git a/src/web/assets/assetindexes/dist/AssetIndexesUtility.min.js b/src/web/assets/assetindexes/dist/AssetIndexesUtility.min.js index 3ce33d79b8c..d1bbd208638 100644 --- a/src/web/assets/assetindexes/dist/AssetIndexesUtility.min.js +++ b/src/web/assets/assetindexes/dist/AssetIndexesUtility.min.js @@ -1,2 +1,2 @@ -!function(a){Craft.AssetIndexesUtility=Garnish.Base.extend({$trigger:null,$form:null,totalActions:null,completedActions:null,loadingActions:null,queue:null,init:function(t){this.$form=a("#"+t),this.$trigger=a("input.submit",this.$form),this.$status=a(".utility-status",this.$form),this.addListener(this.$form,"submit","onSubmit")},onSubmit:function(t){t.preventDefault(),this.$trigger.hasClass("disabled")||(this.progressBar?this.progressBar.resetProgressBar():this.progressBar=new Craft.ProgressBar(this.$status),this.totalActions=1,this.completedActions=0,this.queue=[],this.loadingActions=0,this.currentBatchQueue=[],this.progressBar.$progressBar.removeClass("hidden"),this.progressBar.$progressBar.velocity("stop").velocity({opacity:1},{complete:a.proxy(function(){var t=Garnish.getPostData(this.$form),s=Craft.expandPostArray(t);s.start=!0,this.loadAction({params:s})},this)}),this.$allDone&&this.$allDone.css("opacity",0),this.$trigger.addClass("disabled"),this.$trigger.trigger("blur"))},updateProgressBar:function(){var t=100*this.completedActions/this.totalActions;this.progressBar.setProgressPercentage(t)},loadAction:function(t){this.loadingActions++,void 0!==t.confirm&&t.confirm?this.showConfirmDialog(t):this.postActionRequest(t.params)},showConfirmDialog:function(e){var t=a('