Bloom.Book.TranslationGroupManager.StripOutText C# (CSharp) Method

StripOutText() private static method

Remove nodes that are either pure text or exist only to contain text, including BR and P Elements with a "bloom-cloneToOtherLanguages" class are preserved
private static StripOutText ( XmlNode element ) : void
element System.Xml.XmlNode
return void
        private static void StripOutText(XmlNode element)
        {
            var listToRemove = new List<XmlNode>();
            foreach (XmlNode node in element.SelectNodes("descendant-or-self::*[(self::p or self::br or self::u or self::b or self::i) and not(contains(@class,'bloom-cloneToOtherLanguages'))]"))
            {
                listToRemove.Add(node);
            }
            // clean up any remaining texts that weren't enclosed
            foreach (XmlNode node in element.SelectNodes("descendant-or-self::*[not(contains(@class,'bloom-cloneToOtherLanguages'))]/text()"))
            {
                listToRemove.Add(node);
            }
            RemoveXmlChildren(listToRemove);
        }