From c410eae85cb8ba2a150fd83b581cc24f23a0e61e Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Wed, 12 Aug 2020 12:51:35 +0300 Subject: [PATCH 1/3] fix Used in entities magento/adobe-stock-integration#1749 --- .../deleteImageWithDetailConfirmation.js | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js index 51d124ca319e6..2bff49a256c96 100644 --- a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js +++ b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js @@ -52,13 +52,15 @@ define([ */ getRecordRelatedContentMessage: function (images) { var usedInMessage = $t('The selected assets are used in the content of the following entities: '), - usedIn = []; + usedIn = {}; $.each(images, function (key, image) { $.each(image.details, function (sectionIndex, section) { if (section.title === 'Used In' && _.isObject(section) && !_.isEmpty(section.value)) { $.each(section.value, function (entityTypeIndex, entityTypeData) { - usedIn.push(entityTypeData.name + '(' + entityTypeData.number + ')'); + usedIn[entityTypeData.name] = entityTypeData.name in usedIn ? + usedIn[entityTypeData.name] + entityTypeData.number : + entityTypeData.number; }); } }); @@ -68,7 +70,26 @@ define([ return ''; } - return usedInMessage + usedIn.join(', ') + '.'; + return usedInMessage + this.usedInObjectToString(usedIn); + }, + + /** + * Fromats usedIn object to string + * + * @param {Object} usedIn + * @return {String} + */ + usedInObjectToString: function (usedIn) { + var message = '', + count = 0; + + $.each(usedIn, function (entityName, number) { + count++; + message += entityName + '(' + number + ')'; + message += count != Object.keys(usedIn).length ? ', ' : '.'; + }); + + return message; } }; }); From a1de7214949210220abe3a3428ba78778ac9d2ab Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Wed, 12 Aug 2020 14:26:59 +0300 Subject: [PATCH 2/3] Fix static tests --- .../web/js/action/deleteImageWithDetailConfirmation.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js index 2bff49a256c96..f7ea1b8459904 100644 --- a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js +++ b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js @@ -86,7 +86,7 @@ define([ $.each(usedIn, function (entityName, number) { count++; message += entityName + '(' + number + ')'; - message += count != Object.keys(usedIn).length ? ', ' : '.'; + message += count !== Object.keys(usedIn).length ? ', ' : '.'; }); return message; From 84ee18b2c95d6476604eb17302d3040afc5b014c Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Thu, 13 Aug 2020 12:35:28 +0300 Subject: [PATCH 3/3] Code review suggestion --- .../web/js/action/deleteImageWithDetailConfirmation.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js index f7ea1b8459904..ed40674df20f0 100644 --- a/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js +++ b/app/code/Magento/MediaGalleryUi/view/adminhtml/web/js/action/deleteImageWithDetailConfirmation.js @@ -80,16 +80,13 @@ define([ * @return {String} */ usedInObjectToString: function (usedIn) { - var message = '', - count = 0; + var entities = []; $.each(usedIn, function (entityName, number) { - count++; - message += entityName + '(' + number + ')'; - message += count !== Object.keys(usedIn).length ? ', ' : '.'; + entities.push(entityName + '(' + number + ')'); }); - return message; + return entities.join(', ') + '.'; } }; });