public Nintendo64_PostProcess(string DirectoryToProcess, char SpaceChar, bool MetaEnabled, bool RenamingEnabled, bool MovingEnabled, DatabaseConnector DBConnection) { MetaEnabled = true; RenamingEnabled = true; MovingEnabled = true; string[] FilesToProcess = System.IO.Directory.GetFiles(@DirectoryToProcess); Progress ProgressForm = new Progress(); ProgressForm.Show(); ProgressForm.Step = ProgressForm.CalculateStep(FilesToProcess.Length); foreach (string SingleFile in FilesToProcess) { ProgressForm.UpdateProcessingName = SingleFile; //Get the Directory including the file string FileDirectory = System.IO.Directory.GetParent(SingleFile).FullName; //Get the filename without the path string Filename = SingleFile.Replace(FileDirectory + "\\", ""); string Searchname = Filename; //Strip and Save the extension Regex FileExtensionRegex = new Regex("\\.(...)$"); string Extension = FileExtensionRegex.Match(Searchname).Value; Searchname = FileExtensionRegex.Replace(Searchname, ""); //Replace "SpaceChar" with actual spaces for our search Searchname = Searchname.Replace(SpaceChar, " ".ToCharArray()[0]); LogFacility.WriteToFile(4, "Title to search: " + Searchname, LogSource); //Initiate scraper Scraper.TheGamesDB InfoScraper = new Scraper.TheGamesDB(LogFacility); List<Game> Results = InfoScraper.Search(Searchname, "Nintendo 64"); //We will only take the first result, let's hope that it's the best one... if (Results != null) DBConnection.InsertGame(InfoScraper.GetGameByID(Results[0].scraper_gdb_id)); else LogFacility.WriteToFile(1, "Could not find an item for " + Searchname, LogSource); if (Results != null) { Filename = Results[0].Name.Replace(" ".ToCharArray()[0], SpaceChar); Filename += Extension; LogFacility.WriteToFile(4, "Resulted Filename: " + FileDirectory + "\\" + Filename, LogSource); if (RenamingEnabled && !MovingEnabled) System.IO.File.Move(SingleFile, FileDirectory + "\\" + Filename); if (MovingEnabled) System.IO.File.Move(SingleFile, FileDirectory + "\\" + Filename); } ProgressForm.UpdateProgressBar(); } ProgressForm.Close(); }
private void btSearch_Click(object sender, EventArgs e) { LogInstance.WriteToFile(4, "Starting search for " + tBSearchString.Text + " on platform " + cBPlatform.Text, LogSource); cBSearchResultPicker.Items.Clear(); TheGamesDB Scraper_GameDB = new TheGamesDB(LogInstance); List<Game> ResultList; string Platform = cBPlatform.Text; if (Platform == "Choose Platform" || Platform == "Choose the desired platform") Platform = ""; if (tBSearchString.Text != "") ResultList = Scraper_GameDB.Search(tBSearchString.Text, Platform); else { LogInstance.WriteToFile(4, "User did not define a search!", LogSource); MessageBox.Show("Please enter something to search for."); return; } if (ResultList != null) { for (int x = 0; x < ResultList.Count; x++) { if (ResultList[x].ReleaseDate.Year != 1) cBSearchResultPicker.Items.Add (ResultList[x].Name.Replace(":", "-") + " (" + ResultList[x].ReleaseDate.Year + ") - ID: " + ResultList[x].scraper_gdb_id); else cBSearchResultPicker.Items.Add(ResultList[x].Name.Replace(":", " -") + " - ID: " + ResultList[x].scraper_gdb_id); } } btAddGame.Enabled = true; btAddGame.Visible = true; cBSearchResultPicker.SelectedIndex = 0; cBSearchResultPicker.Enabled = true; cBSearchResultPicker.Visible = true; }