コード例 #1
0
ファイル: MovieData.cs プロジェクト: craigrs84/PvrScraper
 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);
     }
 }
コード例 #2
0
ファイル: TmDbRename.cs プロジェクト: craigrs84/PvrScraper
        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);
        }
コード例 #3
0
ファイル: TmDbRename.cs プロジェクト: craigrs84/PvrScraper
        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("");
            }
        }
コード例 #4
0
ファイル: TmDbRename.cs プロジェクト: craigrs84/PvrScraper
 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;
 }