Concordion.Internal.Listener.JavaScriptLinker.BeforeParsing C# (CSharp) Method

BeforeParsing() public method

public BeforeParsing ( System.Xml.Linq.XDocument document ) : void
document System.Xml.Linq.XDocument
return void
        public void BeforeParsing(XDocument document)
        {
            var html = document.Root;
            var head = html.Element("head");
            Check.NotNull(head, "<head> section is missing from document");
            m_Script = new XElement("script");
            m_Script.SetAttributeValue(XName.Get("type"), "text/javascript");
            m_Script.SetValue("");
            head.Add(m_Script);
        }

Usage Example

        public void XmlOutputContainsAnExplicitEndTagForScriptElement()
        {
            var javaScriptLinker = new JavaScriptLinker(NOT_NEEDED_PARAMETER);

            var html = new XElement("html");
            var head = new XElement("head");
            html.Add(head);

            javaScriptLinker.BeforeParsing(new XDocument(html));

            var expected = "<head><script type=\"text/javascript\"></script></head>";
            var actual = new HtmlUtil().RemoveWhitespaceBetweenTags(head.ToString());
            Assert.AreEqual(expected, actual);
        }