private void BuildSiteIndex()
        {
            Index.sitemapindex indexmap = new Index.sitemapindex();

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                using (SPSite site = new SPSite(siteId))
                {
                    using (SPWeb web = site.OpenWeb(webId))
                    {
                        SPWebCollection webs = site.AllWebs; //GetAllWebs(web);

                        foreach (SPWeb subweb in webs)
                        {
                            if (subweb.AllowAnonymousAccess && subweb.WebTemplate.ToLower().Contains("website"))
                            {
                                Index.tSitemap sitemap = new Index.tSitemap();
                                sitemap.lastmod        = subweb.LastItemModifiedDate.ToString("yyyy-MM-dd");//,.ToShortDateString();
                                sitemap.loc            = subweb.Url + "/sitemap.xml";
                                indexmap.sitemap.Add(sitemap);

                                if (settings.UseMobile)
                                {
                                    Index.tSitemap mobilemap = new Index.tSitemap();
                                    mobilemap.lastmod        = subweb.LastItemModifiedDate.ToString("yyyy-MM-dd");//,.ToShortDateString();
                                    mobilemap.loc            = subweb.Url + "/mobilemap.xml";
                                    indexmap.sitemap.Add(mobilemap);
                                }
                            }
                        }

                        if (settings.UseNews)
                        {
                            Index.tSitemap newsmap = new Index.tSitemap();
                            newsmap.lastmod        = site.LastContentModifiedDate.ToString("yyyy-MM-dd");//,.ToShortDateString();
                            newsmap.loc            = web.Url + "/newsmap.xml";
                            indexmap.sitemap.Add(newsmap);
                        }

                        if (settings.UseVideo)
                        {
                            Index.tSitemap videomap = new Index.tSitemap();
                            videomap.lastmod        = site.LastContentModifiedDate.ToString("yyyy-MM-dd");//,.ToShortDateString();
                            videomap.loc            = web.Url + "/videomap.xml";
                            indexmap.sitemap.Add(videomap);
                        }
                    }
                }
            });

            textWriter.Append(indexmap.Serialize(Encoding.UTF8));
        }
Beispiel #2
0
 /// <summary>
 /// Deserializes workflow markup into an sitemapindex object
 /// </summary>
 /// <param name="xml">string workflow markup to deserialize</param>
 /// <param name="obj">Output sitemapindex object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
 public static bool Deserialize(string xml, out sitemapindex obj, out System.Exception exception)
 {
     exception = null;
     obj       = default(sitemapindex);
     try
     {
         obj = Deserialize(xml);
         return(true);
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return(false);
     }
 }
Beispiel #3
0
 public static bool LoadFromFile(string fileName, out sitemapindex obj)
 {
     System.Exception exception = null;
     return(LoadFromFile(fileName, out obj, out exception));
 }
Beispiel #4
0
 public static bool LoadFromFile(string fileName, out sitemapindex obj, out System.Exception exception)
 {
     return(LoadFromFile(fileName, Encoding.UTF8, out obj, out exception));
 }
Beispiel #5
0
 /// <summary>
 /// Deserializes xml markup from file into an sitemapindex object
 /// </summary>
 /// <param name="fileName">string xml file to load and deserialize</param>
 /// <param name="obj">Output sitemapindex object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
 public static bool LoadFromFile(string fileName, System.Text.Encoding encoding, out sitemapindex obj, out System.Exception exception)
 {
     exception = null;
     obj       = default(sitemapindex);
     try
     {
         obj = LoadFromFile(fileName, encoding);
         return(true);
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return(false);
     }
 }
Beispiel #6
0
 public static bool Deserialize(string xml, out sitemapindex obj)
 {
     System.Exception exception = null;
     return(Deserialize(xml, out obj, out exception));
 }