public EpisodeFile MoveEpisodeFile(EpisodeFile episodeFile, Series series) { var episodes = _episodeService.GetEpisodesByFileId(episodeFile.Id); var newFileName = _buildFileNames.BuildFileName(episodes, series, episodeFile); var filePath = _buildFileNames.BuildFilePath(series, episodes.First().SeasonNumber, newFileName, Path.GetExtension(episodeFile.RelativePath)); _logger.Debug("Renaming episode file: {0} to {1}", episodeFile, filePath); return(TransferFile(episodeFile, series, episodes, filePath, false)); }
public string MoveEpisodeFile(EpisodeFile episodeFile, Series series) { var episodes = _episodeService.GetEpisodesByFileId(episodeFile.Id); var newFileName = _buildFileNames.BuildFilename(episodes, series, episodeFile); var filePath = _buildFileNames.BuildFilePath(series, episodes.First().SeasonNumber, newFileName, Path.GetExtension(episodeFile.Path)); MoveFile(episodeFile, filePath); return(filePath); }
public EpisodeFile MoveEpisodeFile(EpisodeFile episodeFile, Series series) { var episodes = _episodeService.GetEpisodesByFileId(episodeFile.Id); var filePath = _buildFileNames.BuildFilePath(episodes, series, episodeFile, Path.GetExtension(episodeFile.RelativePath)); EnsureEpisodeFolder(episodeFile, series, episodes.Select(v => v.SeasonNumber).First(), filePath); _logger.Debug("Renaming episode file: {0} to {1}", episodeFile, filePath); return(TransferFile(episodeFile, series, episodes, filePath, TransferMode.Move)); }
public MovieFile MoveMovieFile(MovieFile movieFile, Movie movie) { var newFileName = _buildFileNames.BuildFileName(movie, movieFile); var filePath = _buildFileNames.BuildFilePath(movie, newFileName, Path.GetExtension(movieFile.RelativePath)); EnsureMovieFolder(movieFile, movie, filePath); _logger.Debug("Renaming movie file: {0} to {1}", movieFile, filePath); return(TransferFile(movieFile, movie, filePath, TransferMode.Move)); }
private IEnumerable <RenameEpisodeFilePreview> GetPreviews(Series series, List <Episode> episodes, List <EpisodeFile> files) { foreach (var f in files) { var file = f; var episodesInFile = episodes.Where(e => e.EpisodeFileId == file.Id).ToList(); var episodeFilePath = Path.Combine(series.Path, file.RelativePath); if (!episodesInFile.Any()) { _logger.Warn("File ({0}) is not linked to any episodes", episodeFilePath); continue; } var seasonNumber = episodesInFile.First().SeasonNumber; var newName = _filenameBuilder.BuildFileName(episodesInFile, series, file); var newPath = _filenameBuilder.BuildFilePath(series, seasonNumber, newName, Path.GetExtension(episodeFilePath)); if (!episodeFilePath.PathEquals(newPath)) { yield return(new RenameEpisodeFilePreview { SeriesId = series.Id, SeasonNumber = seasonNumber, EpisodeNumbers = episodesInFile.Select(e => e.EpisodeNumber).ToList(), EpisodeFileId = file.Id, ExistingPath = file.RelativePath, NewPath = series.Path.GetRelativePath(newPath) }); } } }
private IEnumerable <RenameMovieFilePreview> GetPreviews(Movie movie, List <MovieFile> files) { foreach (var file in files) { var movieFilePath = Path.Combine(movie.Path, file.RelativePath); var newName = _filenameBuilder.BuildFileName(movie, file); var newPath = _filenameBuilder.BuildFilePath(movie, newName, Path.GetExtension(movieFilePath)); if (!movieFilePath.PathEquals(newPath, StringComparison.Ordinal)) { yield return(new RenameMovieFilePreview { MovieId = movie.Id, MovieFileId = file.Id, ExistingPath = movieFilePath, //NewPath = movie.Path.GetRelativePath(newPath) NewPath = newPath }); } } }