public IList<EpisodeType> GetMovies(string sourcePath) { var fileTypeValues = Settings.Default.FileTypes.Split('|'); var fileList = new ArrayList(); foreach (var fileTypeValue in fileTypeValues) { var di = Directory.GetFiles(sourcePath, string.Format("*.{0}", fileTypeValue), SearchOption.AllDirectories); fileList.AddRange(di); } IList<EpisodeType> movieList = new List<EpisodeType>(); foreach (string file in fileList) { var episodeType = new EpisodeType(); var fileName = Path.GetFileName(file); if (string.IsNullOrEmpty(fileName)) continue; if (fileName.ToLower().Contains("sample")) continue; var checker = BootStrapper.ResolveAll<IEpisodeChecker>(); Tuple<string, string> result = null; foreach (var c in checker) { result = c.CheckSeasonEpisode(CleanName(fileName)); if (result != null) break; } if (result != null) continue; episodeType.FileName = fileName; episodeType.FullPath = file; episodeType.FileSize = Math.Round((((double)new FileInfo(file).Length) / 1048576), 2).ToString(); movieList.Add(episodeType); } return movieList; }
public IList<EpisodeType> GetSourceEpisode(string sourcePath, string fileType) { var di = Directory.GetFiles(sourcePath, "*.avi", SearchOption.AllDirectories); var di2 = Directory.GetFiles(sourcePath, "*.mkv", SearchOption.AllDirectories); var l = new ArrayList(di); l.AddRange(di2); IList<EpisodeType> episode = new List<EpisodeType>(); foreach (string file in l) { var episodeType = new EpisodeType(); var fileName = Path.GetFileName(file); if(string.IsNullOrEmpty(fileName)) continue; if(fileName.ToLower().Contains("sample")) continue; var checker = BootStrapper.ResolveAll<IEpisodeChecker>(); Tuple<string, string> result = null; foreach (var c in checker) { result = c.CheckSeasonEpisode(fileName); if (result != null) break; } if (result == null) continue; var seasonString = result.Item1; var episodeString = result.Item2; var fName = fileName.Replace(seasonString, ""); fName = fName.Replace(episodeString, ""); episodeType.FileName = fName; episodeType.Season = seasonString; episodeType.Episode = episodeString; episodeType.FullPath = file; episodeType.FileSize = Math.Round((((double)new FileInfo(file).Length) / 1048576), 2).ToString(); episode.Add(episodeType); } return episode; }
private void ExecuteAddMapping(object obj) { _selectedFile = null; if (!CurrentMappings.ContainsKey(Name)) { CurrentMappings.Add(Name, NewName); _episodeService.WriteMappingValue(_currentMappings); } PropertyChanged(this, new PropertyChangedEventArgs("CurrentMappings")); UpdateFileLists(); }
private void ExecuteAddMapping(object obj) { _selectedFile = null; CurrentMappings.Add(Name, NewName); _episodeService.WriteMappingValue(_currentMappings); PropertyChanged(this, new PropertyChangedEventArgs("CurrentMappings")); PropertyChanged(this, new PropertyChangedEventArgs("NewFileList")); }