diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/grid.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/grid.controller.js index ccc390252b..ac14dc834d 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/grid.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/grid.controller.js @@ -72,7 +72,10 @@ angular.module("umbraco") ui.item.find(".umb-rte").each(function (key, value) { // remove all RTEs in the dragged row and save their settings var rteId = value.id; - draggedRteSettings[rteId] = _.findWhere(tinyMCE.editors, { id: rteId }).settings; + var editor = _.findWhere(tinyMCE.editors, { id: rteId }); + if (editor) { + draggedRteSettings[rteId] = editor.settings; + } }); }, @@ -84,9 +87,17 @@ angular.module("umbraco") // reset all RTEs affected by the dragging ui.item.parents(".umb-column").find(".umb-rte").each(function (key, value) { var rteId = value.id; - draggedRteSettings[rteId] = draggedRteSettings[rteId] || _.findWhere(tinyMCE.editors, { id: rteId }).settings; - tinyMCE.execCommand("mceRemoveEditor", false, rteId); - tinyMCE.init(draggedRteSettings[rteId]); + var settings = draggedRteSettings[rteId]; + if (!settings) { + var editor = _.findWhere(tinyMCE.editors, { id: rteId }); + if (editor) { + settings = editor.settings; + } + } + if (settings) { + tinyMCE.execCommand("mceRemoveEditor", false, rteId); + tinyMCE.init(settings); + } }); currentForm.$setDirty(); }