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 <CompetitionImage> GetHeldImages(Competition competition, string competitionName) { List <CompetitionImage> heldImages = new List <CompetitionImage>(); string databaseFilePath = ImagePaths.GetDatabaseFile(competitionName); SQLiteConnection dbConnection = new SQLiteConnection("DataSource=" + databaseFilePath + ";Version=3;"); dbConnection.Open(); string sql = "SELECT name FROM held_images"; SQLiteCommand cmd = new SQLiteCommand(sql, dbConnection); SQLiteDataReader reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { CompetitionImage competitionImage = competition.GetImageObjectById(reader.GetString(0)); heldImages.Add(competitionImage); } } dbConnection.Close(); return(heldImages); }
// Create a CompetitionImage that represents the Panel Image internal CompetitionImage GetPanelImage() { if (this.panelImage == null) { string panelTitle = "Panel " + this.GetPosition(); CompetitionImage competitionImage = new CompetitionImage(this.competition, this.GetPanelId(), panelTitle, this.panelAuthor, this.GetPosition()); this.panelImage = competitionImage; } return(this.panelImage); }
private static AbstractCompetition LoadSingleImageCompetition(string competitionFileName, string competitionDirectory, XmlNode rootNode, string clubName, string trophyName, bool scoring, string competitionKey, string resultsKey) { AbstractCompetition competition = new Competition(competitionFileName, competitionDirectory, clubName, trophyName, competitionKey, resultsKey); XmlNode imagesNode = rootNode["Images"]; int i = 1; var imageList = new List <CompetitionImage>(); foreach (XmlNode eachImageNode in imagesNode.ChildNodes) { CompetitionImage eachImage = new CompetitionImage(competition, eachImageNode, i); imageList.Add(eachImage); i += 1; } ((Competition)competition).SetImages(imageList); ((Competition)competition).SetScoring(scoring); return(competition); }
internal void AddImage(CompetitionImage eachImage) { this.images.Add(eachImage); }