mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-26 08:12:42 -04:00 
			
		
		
		
	Weather updates
This commit is contained in:
		
							parent
							
								
									b6bc22ae63
								
							
						
					
					
						commit
						3c47375229
					
				| @ -573,9 +573,9 @@ namespace MediaBrowser.ApiInteraction | ||||
|         { | ||||
|             string url = ApiUrl + "/ServerConfiguration"; | ||||
| 
 | ||||
|             using (Stream stream = await GetSerializedStreamAsync(url).ConfigureAwait(false)) | ||||
|             using (Stream stream = await GetSerializedStreamAsync(url, ApiInteraction.SerializationFormat.Json).ConfigureAwait(false)) | ||||
|             { | ||||
|                 return DeserializeFromStream<ServerConfiguration>(stream); | ||||
|                 return DeserializeFromStream<ServerConfiguration>(stream, ApiInteraction.SerializationFormat.Json); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
| @ -622,14 +622,22 @@ namespace MediaBrowser.ApiInteraction | ||||
|         /// This is a helper around getting a stream from the server that contains serialized data | ||||
|         /// </summary> | ||||
|         private Task<Stream> GetSerializedStreamAsync(string url) | ||||
|         { | ||||
|             return GetSerializedStreamAsync(url, SerializationFormat); | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// This is a helper around getting a stream from the server that contains serialized data | ||||
|         /// </summary> | ||||
|         private Task<Stream> GetSerializedStreamAsync(string url, SerializationFormat serializationFormat) | ||||
|         { | ||||
|             if (url.IndexOf('?') == -1) | ||||
|             { | ||||
|                 url += "?dataformat=" + SerializationFormat.ToString().ToLower(); | ||||
|                 url += "?dataformat=" + serializationFormat.ToString().ToLower(); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 url += "&dataformat=" + SerializationFormat.ToString().ToLower(); | ||||
|                 url += "&dataformat=" + serializationFormat.ToString().ToLower(); | ||||
|             } | ||||
| 
 | ||||
|             return GetStreamAsync(url); | ||||
|  | ||||
| @ -41,6 +41,14 @@ namespace MediaBrowser.Common.Kernel | ||||
|         /// </summary> | ||||
|         public HttpServer HttpServer { get; private set; } | ||||
| 
 | ||||
|         protected virtual string HttpServerUrlPrefix | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 return "http://+:" + Configuration.HttpServerPortNumber + "/mediabrowser/"; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// Gets the kernel context. The UI kernel will have to override this. | ||||
|         /// </summary> | ||||
| @ -181,7 +189,7 @@ namespace MediaBrowser.Common.Kernel | ||||
|         { | ||||
|             DisposeHttpServer(); | ||||
| 
 | ||||
|             HttpServer = new HttpServer("http://+:" + Configuration.HttpServerPortNumber + "/mediabrowser/"); | ||||
|             HttpServer = new HttpServer(HttpServerUrlPrefix); | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|  | ||||
| @ -62,7 +62,7 @@ namespace MediaBrowser.Common.Net.Handlers | ||||
| 
 | ||||
|         protected async override Task WriteResponseToOutputStream(Stream stream) | ||||
|         { | ||||
|             await EnsureObjectToSerialize(); | ||||
|             await EnsureObjectToSerialize().ConfigureAwait(false); | ||||
| 
 | ||||
|             switch (SerializationFormat) | ||||
|             { | ||||
|  | ||||
| @ -53,12 +53,18 @@ namespace MediaBrowser.Controller.Weather | ||||
|         { | ||||
|             WeatherInfo info = new WeatherInfo(); | ||||
| 
 | ||||
|             if (data.current_condition != null) | ||||
|             { | ||||
|                 if (data.current_condition.Any()) | ||||
|                 { | ||||
|                     info.CurrentWeather = data.current_condition.First().ToWeatherStatus(); | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|             if (data.weather != null) | ||||
|             { | ||||
|                 info.Forecasts = data.weather.Select(w => w.ToWeatherForecast()).ToArray(); | ||||
|             } | ||||
| 
 | ||||
|             return info; | ||||
|         } | ||||
|  | ||||
| @ -1,17 +1,19 @@ | ||||
|  | ||||
| using MediaBrowser.Model.Weather; | ||||
| 
 | ||||
| namespace MediaBrowser.Model.Configuration | ||||
| { | ||||
|     public class ServerConfiguration : BaseApplicationConfiguration | ||||
|     { | ||||
|         public bool EnableInternetProviders { get; set; } | ||||
|         public string WeatherZipCode { get; set; } | ||||
|         public bool EnableUserProfiles { get; set; } | ||||
| 
 | ||||
|         public string WeatherZipCode { get; set; } | ||||
|         public WeatherUnits WeatherUnit { get; set; } | ||||
| 
 | ||||
|         public ServerConfiguration() | ||||
|             : base() | ||||
|         { | ||||
|             EnableUserProfiles = true; | ||||
|             WeatherZipCode = "02116"; | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -61,6 +61,7 @@ | ||||
|     <Compile Include="Weather\WeatherForecast.cs" /> | ||||
|     <Compile Include="Weather\WeatherInfo.cs" /> | ||||
|     <Compile Include="Weather\WeatherStatus.cs" /> | ||||
|     <Compile Include="Weather\WeatherUnits.cs" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <Reference Include="protobuf-net"> | ||||
|  | ||||
							
								
								
									
										9
									
								
								MediaBrowser.Model/Weather/WeatherUnits.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								MediaBrowser.Model/Weather/WeatherUnits.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | ||||
|  | ||||
| namespace MediaBrowser.Model.Weather | ||||
| { | ||||
|     public enum WeatherUnits | ||||
|     { | ||||
|         Fahrenheit, | ||||
|         Celsius | ||||
|     } | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user