private static AbstractCompetition LoadPanelCompetition(string competitionFileName, string competitionDirectory, XmlNode rootNode, string clubName, string trophyName, string competitionKey, string resultsKey) { AbstractCompetition competition = new PanelCompetition(competitionFileName, competitionDirectory, clubName, trophyName, competitionKey, resultsKey); XmlNode panelsNode = rootNode["Panels"]; int panelPosition = 1; var panelList = new List <CompetitionPanel>(); foreach (XmlNode eachPanelNode in panelsNode.ChildNodes) { CompetitionPanel eachPanel = new CompetitionPanel(competition, eachPanelNode, panelPosition); int imagePosition = 1; foreach (XmlNode eachImageNode in eachPanelNode.ChildNodes) { CompetitionImage eachImage = new CompetitionImage(competition, eachImageNode, imagePosition); eachPanel.AddImage(eachImage); imagePosition++; } CompetitionFactory.WritePanelLayoutImage(competitionFileName, competitionDirectory, eachPanel); panelList.Add(eachPanel); panelPosition++; } ((PanelCompetition)competition).SetPanels(panelList); return(competition); }
internal static List <AbstractCompetition> GetCompetitions() { IEnumerable <string> competitions = ImagePaths.GetCompetitionZipFilesList(); List <AbstractCompetition> competitionList = new List <AbstractCompetition>(); foreach (var item in competitions) { var today = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")); var competitionFileName = ImagePaths.RemoveSourcePathStart(item); if (competitionFileName.ToLower().EndsWith(".iris")) { var competitionDateString = competitionFileName.Substring(0, 10); var competitionDate = DateTime.Parse(competitionDateString); var competitionName = competitionFileName.Substring(0, competitionFileName.Length - 5); if (competitionDate >= today) { CompetitionHelper.ExtractFiles(competitionName); CompetitionHelper.CreateDatabase(competitionName); AbstractCompetition competition = CompetitionFactory.Load(competitionName); competitionList.Add(competition); } } } return(competitionList); }