/// <summary> /// Gets the dashboard settings e.g. windows supported /// </summary> /// <param name="doc"></param> private static void GetDashboardSkinSettings(XmlDocument doc) { TraktLogger.Info("Loading Settings for Dashboard"); // skinner can define different trending dashboards DashboardTrendingCollection = new List <DashboardTrendingSettings>(); DashBoardActivityWindows = new List <string>(); DashboardActivityPropertiesMaxItems = 0; DashboardActivityFacadeMaxItems = 25; DashboardActivityFacadeType = "None"; XmlNode rootNode = null; XmlNode node = null; rootNode = doc.DocumentElement.SelectSingleNode("/settings/dashboard/statistics"); if (rootNode != null) { HasDashboardStatistics = rootNode.InnerText.ToLowerInvariant() == "true"; } rootNode = doc.DocumentElement.SelectSingleNode("/settings/dashboard/activities"); if (rootNode != null) { node = rootNode.SelectSingleNode("windows"); if (node != null) { DashBoardActivityWindows = node.InnerText.Split('|').ToList(); } node = rootNode.SelectSingleNode("facadetype"); if (node != null) { DashboardActivityFacadeType = node.InnerText; } node = rootNode.SelectSingleNode("facademaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) { DashboardActivityFacadeMaxItems = maxItems; } } node = rootNode.SelectSingleNode("propertiesmaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) { DashboardActivityPropertiesMaxItems = maxItems; } } } var trendingNodes = doc.DocumentElement.SelectNodes("/settings/dashboard/trending"); if (trendingNodes != null) { foreach (XmlNode trendingNode in trendingNodes) { var trendingItem = new DashboardTrendingSettings { TVShowWindows = new List <string>(), MovieWindows = new List <string>(), PropertiesMaxItems = 0, FacadeMaxItems = 10, FacadeType = "None" }; node = trendingNode.SelectSingleNode("facadetype"); if (node != null) { trendingItem.FacadeType = node.InnerText; } node = trendingNode.SelectSingleNode("facademaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) { trendingItem.FacadeMaxItems = maxItems; } } node = trendingNode.SelectSingleNode("propertiesmaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) { trendingItem.PropertiesMaxItems = maxItems; } } node = trendingNode.SelectSingleNode("shows"); if (node != null) { node = node.SelectSingleNode("windows"); if (node != null) { trendingItem.TVShowWindows = node.InnerText.Split('|').ToList(); } } node = trendingNode.SelectSingleNode("movies"); if (node != null) { node = node.SelectSingleNode("windows"); if (node != null) { trendingItem.MovieWindows = node.InnerText.Split('|').ToList(); } } // add to the collection DashboardTrendingCollection.Add(trendingItem); } } }
/// <summary> /// Gets the dashboard settings e.g. windows supported /// </summary> /// <param name="doc"></param> private static void GetDashboardSkinSettings(XmlDocument doc) { TraktLogger.Info("Loading Settings for Dashboard"); // skinner can define different trending dashboards DashboardTrendingCollection = new List<DashboardTrendingSettings>(); DashBoardActivityWindows = new List<string>(); DashboardActivityPropertiesMaxItems = 0; DashboardActivityFacadeMaxItems = 25; DashboardActivityFacadeType = "None"; XmlNode rootNode = null; XmlNode node = null; rootNode = doc.DocumentElement.SelectSingleNode("/settings/dashboard/statistics"); if (rootNode != null) { HasDashboardStatistics = rootNode.InnerText.ToLowerInvariant() == "true"; } rootNode = doc.DocumentElement.SelectSingleNode("/settings/dashboard/activities"); if (rootNode != null) { node = rootNode.SelectSingleNode("windows"); if (node != null) { DashBoardActivityWindows = node.InnerText.Split('|').ToList(); } node = rootNode.SelectSingleNode("facadetype"); if (node != null) { DashboardActivityFacadeType = node.InnerText; } node = rootNode.SelectSingleNode("facademaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) DashboardActivityFacadeMaxItems = maxItems; } node = rootNode.SelectSingleNode("propertiesmaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) DashboardActivityPropertiesMaxItems = maxItems; } } MaxTrendingItems = 10; var trendingNodes = doc.DocumentElement.SelectNodes("/settings/dashboard/trending"); if (trendingNodes != null) { foreach (XmlNode trendingNode in trendingNodes) { var trendingItem = new DashboardTrendingSettings { TVShowWindows = new List<string>(), MovieWindows = new List<string>(), PropertiesMaxItems = 0, FacadeMaxItems = 10, FacadeType = "None" }; node = trendingNode.SelectSingleNode("facadetype"); if (node != null) { trendingItem.FacadeType = node.InnerText; } node = trendingNode.SelectSingleNode("facademaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) { trendingItem.FacadeMaxItems = maxItems; if (maxItems > MaxTrendingItems) MaxTrendingItems = maxItems; } } node = trendingNode.SelectSingleNode("propertiesmaxitems"); if (node != null) { int maxItems; if (int.TryParse(node.InnerText, out maxItems)) trendingItem.PropertiesMaxItems = maxItems; } node = trendingNode.SelectSingleNode("shows"); if (node != null) { node = node.SelectSingleNode("windows"); if (node != null) { trendingItem.TVShowWindows = node.InnerText.Split('|').ToList(); } } node = trendingNode.SelectSingleNode("movies"); if (node != null) { node = node.SelectSingleNode("windows"); if (node != null) { trendingItem.MovieWindows = node.InnerText.Split('|').ToList(); } } // add to the collection DashboardTrendingCollection.Add(trendingItem); } } }