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 bool IsSatisfiedBy(List <Episode> episodes) { var episodeIds = episodes.SelectList(e => e.Id); var episodeFileIds = episodes.Where(c => c.EpisodeFileId != 0).Select(c => c.EpisodeFileId).Distinct(); foreach (var episodeFileId in episodeFileIds) { var episodesInFile = _episodeService.GetEpisodesByFileId(episodeFileId); if (episodesInFile.Select(e => e.Id).Except(episodeIds).Any()) { return(false); } } return(true); }