mirror of
				https://github.com/zoriya/Kyoo.git
				synced 2025-11-04 03:27:14 -05:00 
			
		
		
		
	Update TrackRepository.cs
This commit is contained in:
		
							parent
							
								
									2f61b57d4f
								
							
						
					
					
						commit
						dfd6f3e28e
					
				@ -36,7 +36,7 @@ namespace Kyoo.Controllers
 | 
				
			|||||||
			await _database.DisposeAsync();
 | 
								await _database.DisposeAsync();
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		public override Task<Track> Get(string slug)
 | 
							public override Task<Track> Get(string slug, StreamType type = StreamType.Unknow)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			Match match = Regex.Match(slug,
 | 
								Match match = Regex.Match(slug,
 | 
				
			||||||
				@"(?<show>.*)-s(?<season>\d+)e(?<episode>\d+)\.(?<language>.{0,3})(?<forced>-forced)?(\..*)?");
 | 
									@"(?<show>.*)-s(?<season>\d+)e(?<episode>\d+)\.(?<language>.{0,3})(?<forced>-forced)?(\..*)?");
 | 
				
			||||||
@ -56,12 +56,22 @@ namespace Kyoo.Controllers
 | 
				
			|||||||
			int episodeNumber = match.Groups["episode"].Success ? int.Parse(match.Groups["episode"].Value) : -1;
 | 
								int episodeNumber = match.Groups["episode"].Success ? int.Parse(match.Groups["episode"].Value) : -1;
 | 
				
			||||||
			string language = match.Groups["language"].Value;
 | 
								string language = match.Groups["language"].Value;
 | 
				
			||||||
			bool forced = match.Groups["forced"].Success;
 | 
								bool forced = match.Groups["forced"].Success;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if (type == StreamType.Unknow)
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
				return _database.Tracks.FirstOrDefaultAsync(x => x.Episode.Show.Slug == showSlug
 | 
									return _database.Tracks.FirstOrDefaultAsync(x => x.Episode.Show.Slug == showSlug
 | 
				
			||||||
			        	                                         && x.Episode.SeasonNumber == seasonNumber
 | 
								        	                                         && x.Episode.SeasonNumber == seasonNumber
 | 
				
			||||||
			                	                                 && x.Episode.EpisodeNumber == episodeNumber
 | 
								                	                                 && x.Episode.EpisodeNumber == episodeNumber
 | 
				
			||||||
			                        	                         && x.Language == language
 | 
								                        	                         && x.Language == language
 | 
				
			||||||
			                                	                 && x.IsForced == forced);
 | 
								                                	                 && x.IsForced == forced);
 | 
				
			||||||
		 	}
 | 
							 	}
 | 
				
			||||||
 | 
								return _database.Tracks.FirstOrDefaultAsync(x => x.Episode.Show.Slug == showSlug
 | 
				
			||||||
 | 
														 && x.Episode.SeasonNumber == seasonNumber
 | 
				
			||||||
 | 
														 && x.Episode.EpisodeNumber == episodeNumber
 | 
				
			||||||
 | 
														 && x.Type == type
 | 
				
			||||||
 | 
														 && x.Language == language
 | 
				
			||||||
 | 
														 && x.IsForced == forced);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		public Task<ICollection<Track>> Search(string query)
 | 
							public Task<ICollection<Track>> Search(string query)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user