From 2b84f96836919d81d9fee43d411d409fd48aab57 Mon Sep 17 00:00:00 2001 From: Rasmus John Pedersen Date: Thu, 16 May 2019 08:49:16 +0200 Subject: [PATCH] Don't render data-udi in RTE on frontend --- .../RteMacroRenderingValueConverter.cs | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/src/Umbraco.Web/PropertyEditors/ValueConverters/RteMacroRenderingValueConverter.cs b/src/Umbraco.Web/PropertyEditors/ValueConverters/RteMacroRenderingValueConverter.cs index fbbf058c49..fa14bd8488 100644 --- a/src/Umbraco.Web/PropertyEditors/ValueConverters/RteMacroRenderingValueConverter.cs +++ b/src/Umbraco.Web/PropertyEditors/ValueConverters/RteMacroRenderingValueConverter.cs @@ -89,32 +89,35 @@ namespace Umbraco.Web.PropertyEditors.ValueConverters // Find all images with rel attribute var imgNodes = doc.DocumentNode.SelectNodes("//img[@rel]"); + var modified = false; if (imgNodes != null) { - var modified = false; - foreach (var img in imgNodes) { - var firstOrDefault = img.Attributes.FirstOrDefault(x => x.Name == "rel"); - if (firstOrDefault != null) + var nodeId = img.GetAttributeValue("rel", string.Empty); + if (int.TryParse(nodeId, out _)) { - var rel = firstOrDefault.Value; - - // Check that the rel attribute is a integer before removing - int nodeId; - if (int.TryParse(rel, out nodeId)) - { - img.Attributes.Remove("rel"); - modified = true; - } + img.Attributes.Remove("rel"); + modified = true; } } + } - if (modified) + // Find all a and img tags with a data-udi attribute + var dataUdiNodes = doc.DocumentNode.SelectNodes("(//a|//img)[@data-udi]"); + if (dataUdiNodes != null) + { + foreach (var node in dataUdiNodes) { - return doc.DocumentNode.OuterHtml; + node.Attributes.Remove("data-udi"); + modified = true; } } + + if (modified) + { + return doc.DocumentNode.OuterHtml; + } } return sourceString;