Exemplo n.º 1
0
 private static void WriteStyles(TextWriter w, string stylesXml, ContentPackage pkg)
 {
     if (!string.IsNullOrEmpty(stylesXml))
     {
         var Url = DNA.Utility.UrlUtility.CreateUrlHelper();
         var stylesEl = XElement.Parse(stylesXml);
         if (stylesEl != null && stylesEl.HasElements)
         {
             foreach (var style in stylesEl.Elements())
             {
                 var src = style.StrAttr("src");
                 if (!string.IsNullOrEmpty(src))
                 {
                     #region link element
                     var linkElement = new XElement("link",
                         new XAttribute("type", "text/css"),
                         new XAttribute("rel", "stylesheet"));
                     var formattedSrc = src;
                     if (!src.StartsWith("http"))
                     {
                         if (src.StartsWith("~"))
                             formattedSrc = Url.Content(src);
                         else
                             formattedSrc = Url.Content(pkg.ResolveUri(src));
                     }
                     linkElement.Add(new XAttribute("href", formattedSrc));
                     w.Write(linkElement.OuterXml());
                     #endregion
                 }
                 else
                 {
                     w.Write("<style type=\"text/css\" >");
                     var csstext = string.IsNullOrEmpty(style.Value) ? style.InnerXml() : style.Value;
                     if (!string.IsNullOrEmpty(csstext))
                         w.Write(csstext);
                     w.Write("</style>");
                 }
             }
         }
     }
 }
Exemplo n.º 2
0
        private static void WriteScripts(TextWriter w, string scriptsXml, ContentPackage pkg)
        {
            if (!string.IsNullOrEmpty(scriptsXml))
            {
                var Url = DNA.Utility.UrlUtility.CreateUrlHelper();
                var scriptsEl = XElement.Parse(scriptsXml);
                if (scriptsEl != null && scriptsEl.HasElements)
                {
                    foreach (var script in scriptsEl.Elements())
                    {
                        var type = string.IsNullOrEmpty(script.StrAttr("type")) ? "text/javascript" : script.StrAttr("type");

                        var src = script.StrAttr("src");
                        if (!string.IsNullOrEmpty(src))
                        {
                            //var scriptElement = new XElement("script", new XAttribute("type", type));
                            var formattedSrc = src;
                            if (!src.StartsWith("http"))
                            {
                                if (src.StartsWith("~"))
                                    formattedSrc = Url.Content(src);
                                else
                                    formattedSrc = Url.Content(pkg.ResolveUri(src));
                            }
                            w.Write("<script type=\"" + type + "\" src=\"" + formattedSrc + "\"></script>");
                        }
                        else
                        {
                            var scriptContent = string.IsNullOrEmpty(script.Value) ? script.InnerXml() : script.Value;
                            w.Write("<script type=\"" + type + "\">");
                            w.Write(scriptContent);
                            w.Write("</script>");
                        }

                    }
                }
            }
        }