using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Web;

namespace SitefinityWebApp.Examples
{
    public partial class GetPagesFromSitemapInSpecificLanguageExample
    {
        public void GetPagesFromSitemapInSpecificLanguage(CultureInfo culture)
        {
            SiteMapProvider pro = SiteMapBase.GetSiteMapProvider(HttpContext.Current.Request.RequestContext);

            using (new CultureRegion(culture))
            {
                SiteMapNodeCollection nodes = pro.GetChildNodes(pro.RootNode);

                foreach (SiteMapNode node in nodes)
                {
                    PageSiteNode pageSiteNode = (node as PageSiteNode);

                    if (pageSiteNode != null)
                    {
                        CultureInfo[] availableLanguages = pageSiteNode.AvailableLanguages;
                        // check available languages for page node. A page node will be returned for pages in specific language even if the an actual page version in that language is not present 
                    }
                }
            }
        }
    }
}