public static void SaveMovie(Movie movie) { using (var db = DatabaseFactory.GetMetaDbConnection()) { if (movie.Id != null) db.Execute("delete from movie where id = ?", movie.Id); db.Insert(movie); } }
public void Rename(Recording record, Movie movie) { //FileUtil.CreateDirectoryPath(xbmc.GetSeriesDirectory(record.Name)); //Cleanup orphaned files if (!File.Exists(record.Filename)) { xbmc.DeleteVideoNfoFile(record.Filename); return; } HandleMovie(record, movie); }
public void HandleMovie(Recording record, Movie movie) { bool same; var oldFile = new FileInfo(record.Filename); var newFile = new FileInfo(GetMovieFilename(record, movie, out same)); //Create NFO xbmc.DeleteVideoNfoFile(oldFile.FullName); if (movie == null) { xbmc.CreateMovieNfoFile(newFile.FullName, record); } if (same) { /*LogUtil.Log("No Change (Movie): " + record.Title + ":"); LogUtil.Log("\tOld Filename: " + oldFile.Name); LogUtil.Log("\tNew Filename: " + newFile.Name); LogUtil.Log("");*/ return; //nothing to do } //Move File File.Move(oldFile.FullName, newFile.FullName); new RecordingData().UpdateFilename(record, newFile.FullName); //Logging var update = oldFile.FullName.StartsWith(Config.XbmcMoviePath, StringComparison.OrdinalIgnoreCase); if (movie == null) { LogUtil.Log("Match Failure (Movie): " + record.Title + ":"); LogUtil.Log("\tOld Filename: " + oldFile.Name); LogUtil.Log("\tNew Filename: " + newFile.Name); LogUtil.Log(""); } else if (!update) { LogUtil.Log("Match Success (Movie): " + record.Title + ":"); LogUtil.Log("\tOld Filename: " + oldFile.Name); LogUtil.Log("\tNew Filename: " + newFile.Name); LogUtil.Log(""); } else { LogUtil.Log("Match Updated (Movie): " + record.Title + ":"); LogUtil.Log("\tOld Filename: " + oldFile.Name); LogUtil.Log("\tNew Filename: " + newFile.Name); LogUtil.Log(""); } }
public string GetMovieFilename(Recording record, Movie movie, out bool same) { string oldFile = record.Filename; string newFile; int i = 1; do { var suffix = i == 1 ? "" : i.ToString(); if (movie != null) newFile = xbmc.GetMovieFilename(movie.Title, movie.ReleaseDate.Value, suffix, "ts"); else newFile = xbmc.GetAltMovieFilename(record.Name, record.StartTime.Value, suffix, "ts"); same = string.Equals(oldFile, newFile, StringComparison.OrdinalIgnoreCase); i++; } while (File.Exists(newFile) && !same); return newFile; }