| 
														
															@@ -60,29 +60,35 @@ namespace Emby.Server.Implementations.Localization 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															         public async Task LoadAll() 
														 | 
														
														 | 
														
															         public async Task LoadAll() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         { 
														 | 
														
														 | 
														
															         { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            const string ratingsResource = "Emby.Server.Implementations.Ratings."; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            const string ratingsResource = "Emby.Server.Implementations.Localization.Ratings."; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															             Directory.CreateDirectory(LocalizationPath); 
														 | 
														
														 | 
														
															             Directory.CreateDirectory(LocalizationPath); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															             var existingFiles = GetRatingsFiles(LocalizationPath).Select(Path.GetFileName); 
														 | 
														
														 | 
														
															             var existingFiles = GetRatingsFiles(LocalizationPath).Select(Path.GetFileName); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															             // Extract from the assembly 
														 | 
														
														 | 
														
															             // Extract from the assembly 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            foreach (var resource in _assembly.GetManifestResourceNames() 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                .Where(i => i.StartsWith(ratingsResource))) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            foreach (var resource in _assembly.GetManifestResourceNames()) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             { 
														 | 
														
														 | 
														
															             { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                if (!resource.StartsWith(ratingsResource)) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    continue; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 string filename = "ratings-" + resource.Substring(ratingsResource.Length); 
														 | 
														
														 | 
														
															                 string filename = "ratings-" + resource.Substring(ratingsResource.Length); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                if (!existingFiles.Contains(filename)) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                if (existingFiles.Contains(filename)) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 { 
														 | 
														
														 | 
														
															                 { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    using (var stream = _assembly.GetManifestResourceStream(resource)) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        string target = Path.Combine(LocalizationPath, filename); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        _logger.LogInformation("Extracting ratings to {0}", target); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    continue; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        using (var fs = _fileSystem.GetFileStream(target, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read)) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                            await stream.CopyToAsync(fs); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                using (var stream = _assembly.GetManifestResourceStream(resource)) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    string target = Path.Combine(LocalizationPath, filename); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    _logger.LogInformation("Extracting ratings to {0}", target); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    using (var fs = _fileSystem.GetFileStream(target, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read)) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        await stream.CopyToAsync(fs); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                     } 
														 | 
														
														 | 
														
															                     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 } 
														 | 
														
														 | 
														
															                 } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -289,7 +295,8 @@ namespace Emby.Server.Implementations.Localization 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         /// <returns>Dictionary{System.StringParentalRating}.</returns> 
														 | 
														
														 | 
														
															         /// <returns>Dictionary{System.StringParentalRating}.</returns> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         private async Task LoadRatings(string file) 
														 | 
														
														 | 
														
															         private async Task LoadRatings(string file) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         { 
														 | 
														
														 | 
														
															         { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            Dictionary<string, ParentalRating> dict = new Dictionary<string, ParentalRating>(StringComparer.OrdinalIgnoreCase); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            Dictionary<string, ParentalRating> dict 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                = new Dictionary<string, ParentalRating>(StringComparer.OrdinalIgnoreCase); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															             using (var str = File.OpenRead(file)) 
														 | 
														
														 | 
														
															             using (var str = File.OpenRead(file)) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             using (var reader = new StreamReader(str)) 
														 | 
														
														 | 
														
															             using (var reader = new StreamReader(str)) 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -309,7 +316,10 @@ namespace Emby.Server.Implementations.Localization 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         dict.Add(parts[0], (new ParentalRating { Name = parts[0], Value = value })); 
														 | 
														
														 | 
														
															                         dict.Add(parts[0], (new ParentalRating { Name = parts[0], Value = value })); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                     } 
														 | 
														
														 | 
														
															                     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 #if DEBUG 
														 | 
														
														 | 
														
															 #if DEBUG 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    _logger.LogWarning("Misformed line in {Path}", file); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    else 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        _logger.LogWarning("Misformed line in {Path}", file); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 #endif 
														 | 
														
														 | 
														
															 #endif 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 } 
														 | 
														
														 | 
														
															                 } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 |