Recent videos works. Fixed Details metadata call. Fix JSON missing date crash.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -274,7 +274,7 @@ sealed class CinemaLibraryManager : ILibraryManager
|
||||
|
||||
List<BaseItem> resultL = new List<BaseItem>(result.Items);
|
||||
|
||||
if (query.OrderBy.FirstOrDefault().OrderBy == ItemSortBy.DatePlayed && query.User != null)
|
||||
if (query.OrderBy.FirstOrDefault().OrderBy == ItemSortBy.DatePlayed && query.User != null && query.MediaTypes.Contains(MediaType.Video))
|
||||
{
|
||||
// Get Resume play items
|
||||
// PERF: This may quickly become very slow
|
||||
|
||||
@@ -10,7 +10,6 @@ namespace CinemaLib.API;
|
||||
|
||||
public class Metadata
|
||||
{
|
||||
private const string UserAgent = "User-Agent: XBMC/19 (Linux 6.1; http://www.xbmc.org)";
|
||||
private const string AccessToken = "9ajdu4xyn1ig8nxsodr3";
|
||||
private const int MaxPageLimit = 100; // thousand is too much for some search types
|
||||
|
||||
@@ -97,8 +96,9 @@ public class Metadata
|
||||
if (id == null || id.Length == 0)
|
||||
throw new ArgumentNullException();
|
||||
|
||||
Uri uri = new Uri(new Uri(ApiRoot, "media/"), id);
|
||||
MediaSource? result = await Program._http.GetFromJsonAsync<MediaSource>(uri, CreateFilterJsonOptions(), cancel);
|
||||
UriBuilder uri = new UriBuilder(new Uri(new Uri(ApiRoot, "media/"), id));
|
||||
uri.Query = $"?access_token={AccessToken}";
|
||||
MediaSource? result = await Program._http.GetFromJsonAsync<MediaSource>(uri.Uri, CreateFilterJsonOptions(), cancel);
|
||||
if (result != null)
|
||||
result = FixDetailResponse(result);
|
||||
return result;
|
||||
@@ -279,7 +279,8 @@ public class Metadata
|
||||
{
|
||||
public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
||||
{
|
||||
return DateTime.Parse(reader.GetString());
|
||||
string? a = reader.GetString();
|
||||
return a == null || a.Length == 0 ? default : DateTime.Parse(a);
|
||||
}
|
||||
|
||||
public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
|
||||
|
||||
@@ -3,7 +3,14 @@ using Cinema.Webshare;
|
||||
|
||||
class Program
|
||||
{
|
||||
public static HttpClient _http = new HttpClient();
|
||||
private const string UserAgent = "XBMC/19 (Linux 6.1; http://www.xbmc.org)";
|
||||
public static HttpClient _http = InitHttpClient();
|
||||
|
||||
private static HttpClient InitHttpClient() {
|
||||
HttpClient result = new HttpClient();
|
||||
result.DefaultRequestHeaders.Add("User-Agent", UserAgent);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static async Task Main(string[] args)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user