private string GetSiteName()
        {
            string listName = "http://win-3qnlgcnit6m:95";

            ULSLog2013.LogMessage("GetSiteName was called");

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                try {
                    SPFarm farm = SPFarm.Local;

                    if (farm.Properties.ContainsKey("SiteName"))
                    {
                        listName = farm.Properties["SiteName"].ToString();
                        ULSLog2013.LogMessage("Farm key is present lets update");
                    }
                    else
                    {
                        ULSLog2013.LogMessage("Site name key is not present use default");
                    }
                }
                catch (Exception ex)
                {
                    ULSLog2013.LogError(ex, "getSiteName");
                }
            }

                                                 );
            ULSLog2013.LogMessage("Site Name has been set to :" + listName);
            return(listName);
        }
        public override SiteMapNodeCollection GetChildNodes(SiteMapNode node)
        {
            ULSLog2013.LogMessage("Child Nodes was called");



            SiteMapNodeCollection test = new SiteMapNodeCollection();

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                try
                {
                    using (SPSite site = new SPSite(SPContext.Current.Site.ID))
                    {
                        using (SPWeb web = site.RootWeb)
                        {
                            SPList nav = web.Lists["Navigation"];

                            ULSLog2013.LogMessage("Found our list:" + nav.Title);
                            SPQuery sPQuery            = new SPQuery();
                            sPQuery.Query              = "<OrderBy><FieldRef Name='LinkOrder' Ascending='True' /><FieldRef Name='Title' Ascending='True' /></OrderBy><Where><IsNull><FieldRef Name='ParentKey' /></IsNull></Where>";
                            SPListItemCollection items = nav.GetItems(sPQuery);

                            foreach (SPListItem item in items)
                            {
                                SiteMapNode smNode = new SiteMapNode(this, item["Key"].ToString(), item["LinkURL"].ToString(), item["Title"].ToString());
                                test.Add(smNode);

                                string str = item["Key"].ToString();
                                SetChildNodes(str, smNode, nav);
                            }
                            ULSLog2013.LogMessage("We got this many items:" + items.Count.ToString());
                        }
                    }
                }
                catch (Exception ex)
                {
                    ULSLog2013.LogError(ex, "finding list");
                }
            });

            return(test);
        }