From 07b08efe26674e702c7c5fb2d22c7fbd6778ed45 Mon Sep 17 00:00:00 2001 From: Alexei Koshelev Date: Tue, 14 Mar 2023 20:44:19 +0300 Subject: [PATCH 1/2] Fix bug 61613 --- apps/spreadsheeteditor/main/app/view/TableSettings.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/spreadsheeteditor/main/app/view/TableSettings.js b/apps/spreadsheeteditor/main/app/view/TableSettings.js index 019df77854..bb8594487a 100644 --- a/apps/spreadsheeteditor/main/app/view/TableSettings.js +++ b/apps/spreadsheeteditor/main/app/view/TableSettings.js @@ -578,8 +578,9 @@ define([ var data = self.mnuTableTemplatePicker.dataViewItems; data && _.each(Templates, function(template, index){ var img = template.asc_getImage(); - data[index].model.set('imageUrl', img, {silent: true}); - $(data[index].el).find('img').attr('src', img); + var dataViewItem = data.filter(function(item) {return item.model.get('caption') === template.asc_getDisplayName();})[0]; + dataViewItem && dataViewItem.model.set('imageUrl', img, {silent: true}); + dataViewItem && $(dataViewItem.el).find('img').attr('src', img); }); } else { var templates = []; From 5f1f44a46613fd8cebc610e90f21c8beedb83b93 Mon Sep 17 00:00:00 2001 From: Alexei Koshelev Date: Wed, 15 Mar 2023 17:33:52 +0300 Subject: [PATCH 2/2] [SSE] Fix bug in PivotTable list and refactoring (fix bug 61613) --- .../main/app/controller/PivotTable.js | 13 +++++++++++-- .../main/app/view/TableSettings.js | 10 +++++++++- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/apps/spreadsheeteditor/main/app/controller/PivotTable.js b/apps/spreadsheeteditor/main/app/controller/PivotTable.js index b1022d9dee..390486a08b 100644 --- a/apps/spreadsheeteditor/main/app/controller/PivotTable.js +++ b/apps/spreadsheeteditor/main/app/controller/PivotTable.js @@ -359,10 +359,19 @@ define([ if (count>0 && count==Templates.length) { var data = styles.menuPicker.dataViewItems; + var findDataViewItem = function(template) { + for(var i = 0; i < data.length; i++) { + if(data[i].model.get('name') && data[i].model.get('name') === template.asc_getName()) return data[i]; + else if(data[i].model.get('caption') === template.asc_getDisplayName()) return data[i]; + } + return undefined; + }; + data && _.each(Templates, function(template, index){ var img = template.asc_getImage(); - data[index].model.set('imageUrl', img, {silent: true}); - $(data[index].el).find('img').attr('src', img); + var dataViewItem = findDataViewItem(template); + dataViewItem && dataViewItem.model.set('imageUrl', img, {silent: true}); + dataViewItem && $(dataViewItem.el).find('img').attr('src', img); }); styles.fieldPicker.store.reset(styles.fieldPicker.store.models); } else { diff --git a/apps/spreadsheeteditor/main/app/view/TableSettings.js b/apps/spreadsheeteditor/main/app/view/TableSettings.js index bb8594487a..af5e90d93c 100644 --- a/apps/spreadsheeteditor/main/app/view/TableSettings.js +++ b/apps/spreadsheeteditor/main/app/view/TableSettings.js @@ -576,9 +576,17 @@ define([ var count = self.mnuTableTemplatePicker.store.length; if (count>0 && count==Templates.length) { var data = self.mnuTableTemplatePicker.dataViewItems; + var findDataViewItem = function(template) { + for(var i = 0; i < data.length; i++) { + if(data[i].model.get('name') && data[i].model.get('name') === template.asc_getName()) return data[i]; + else if(data[i].model.get('caption') === template.asc_getDisplayName()) return data[i]; + } + return undefined; + }; + data && _.each(Templates, function(template, index){ var img = template.asc_getImage(); - var dataViewItem = data.filter(function(item) {return item.model.get('caption') === template.asc_getDisplayName();})[0]; + var dataViewItem = findDataViewItem(template); dataViewItem && dataViewItem.model.set('imageUrl', img, {silent: true}); dataViewItem && $(dataViewItem.el).find('img').attr('src', img); });