adds first get images implementation with image type not complete yet
This commit is contained in:
parent
6b36364b99
commit
ff53bbec16
@ -6,7 +6,7 @@ namespace Piwigo.Client.Tests;
|
||||
[TestFixture]
|
||||
public class AlbumApiTests : ApiTestsBase
|
||||
{
|
||||
private AlbumApi _albumApi = null!;
|
||||
private IAlbumApi _albumApi = null!;
|
||||
|
||||
protected override void OnSetUp()
|
||||
{
|
||||
|
@ -1,3 +1,4 @@
|
||||
using System.Reflection;
|
||||
using Flurl.Http.Configuration;
|
||||
using Flurl.Http.Content;
|
||||
using Flurl.Http.Testing;
|
||||
@ -43,6 +44,19 @@ public class ApiTestsBase
|
||||
SetJsonResult(@"{stat: ""ok"", result: null}");
|
||||
}
|
||||
|
||||
internal async Task SetJsonResultFromFileAsync(string fileName)
|
||||
{
|
||||
var assemblyLocation = Assembly.GetExecutingAssembly().Location;
|
||||
var directory = Path.GetDirectoryName(assemblyLocation) ?? Environment.CurrentDirectory;
|
||||
var path = Path.Combine(directory, fileName);
|
||||
|
||||
using var reader = File.OpenText(path);
|
||||
|
||||
var fileContent = await reader.ReadToEndAsync();
|
||||
|
||||
SetJsonResult(fileContent);
|
||||
}
|
||||
|
||||
internal void SetJsonResult(string json)
|
||||
{
|
||||
HttpTest?.RespondWith(json);
|
||||
|
285
PiwigoDotnet/Piwigo.Client.Tests/ImageApi.getImages.json
Normal file
285
PiwigoDotnet/Piwigo.Client.Tests/ImageApi.getImages.json
Normal file
@ -0,0 +1,285 @@
|
||||
{
|
||||
stat: "ok",
|
||||
result: {
|
||||
paging: {
|
||||
page: 0,
|
||||
per_page: 100,
|
||||
count: 4,
|
||||
total_count: "1"
|
||||
},
|
||||
images: [
|
||||
{
|
||||
is_favorite: false,
|
||||
id: 4,
|
||||
width: 4452,
|
||||
height: 2968,
|
||||
hit: 2,
|
||||
file: "2017-08-30-20-38-c7d_7682.jpg",
|
||||
name: "2017-08-30-20-38-c7d 7682",
|
||||
comment: null,
|
||||
date_creation: "2017-08-30 20:38:47",
|
||||
date_available: "2022-10-20 22:01:32",
|
||||
page_url: "http://localhost:8080/picture.php?/4",
|
||||
element_url: "http://localhost:8080/upload/2022/10/20/20221020220132-2c6d9eab.jpg",
|
||||
derivatives: {
|
||||
square: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220132-2c6d9eab-sq.jpg",
|
||||
width: 120,
|
||||
height: 120
|
||||
},
|
||||
thumb: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220132-2c6d9eab-th.jpg",
|
||||
width: 144,
|
||||
height: 96
|
||||
},
|
||||
2small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220132-2c6d9eab-2s.jpg",
|
||||
width: 240,
|
||||
height: 160
|
||||
},
|
||||
xsmall: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220132-2c6d9eab-xs.jpg",
|
||||
width: 432,
|
||||
height: 288
|
||||
},
|
||||
small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220132-2c6d9eab-sm.jpg",
|
||||
width: 576,
|
||||
height: 384
|
||||
},
|
||||
medium: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220132-2c6d9eab-me.jpg",
|
||||
width: 792,
|
||||
height: 528
|
||||
},
|
||||
large: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220132-2c6d9eab-la.jpg",
|
||||
width: 1008,
|
||||
height: 672
|
||||
},
|
||||
xlarge: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220132-2c6d9eab-xl.jpg",
|
||||
width: 1224,
|
||||
height: 816
|
||||
},
|
||||
xxlarge: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220132-2c6d9eab-xx.jpg",
|
||||
width: 1656,
|
||||
height: 1104
|
||||
}
|
||||
},
|
||||
categories: [
|
||||
{
|
||||
id: 7,
|
||||
url: "http://localhost:8080/index.php?/category/7",
|
||||
page_url: "http://localhost:8080/picture.php?/4/category/7"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
is_favorite: false,
|
||||
id: 3,
|
||||
width: 3961,
|
||||
height: 2641,
|
||||
hit: 4,
|
||||
file: "2017-05-24-20-35-c7d_6283.jpg",
|
||||
name: "2017-05-24-20-35-c7d 6283",
|
||||
comment: null,
|
||||
date_creation: "2017-05-24 20:35:44",
|
||||
date_available: "2022-10-20 22:01:31",
|
||||
page_url: "http://localhost:8080/picture.php?/3",
|
||||
element_url: "http://localhost:8080/upload/2022/10/20/20221020220131-9a567bdb.jpg",
|
||||
derivatives: {
|
||||
square: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220131-9a567bdb-sq.jpg",
|
||||
width: 120,
|
||||
height: 120
|
||||
},
|
||||
thumb: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220131-9a567bdb-th.jpg",
|
||||
width: 144,
|
||||
height: 96
|
||||
},
|
||||
2small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220131-9a567bdb-2s.jpg",
|
||||
width: 240,
|
||||
height: 160
|
||||
},
|
||||
xsmall: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220131-9a567bdb-xs.jpg",
|
||||
width: 432,
|
||||
height: 288
|
||||
},
|
||||
small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220131-9a567bdb-sm.jpg",
|
||||
width: 576,
|
||||
height: 384
|
||||
},
|
||||
medium: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220131-9a567bdb-me.jpg",
|
||||
width: 792,
|
||||
height: 528
|
||||
},
|
||||
large: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220131-9a567bdb-la.jpg",
|
||||
width: 1008,
|
||||
height: 672
|
||||
},
|
||||
xlarge: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220131-9a567bdb-xl.jpg",
|
||||
width: 1224,
|
||||
height: 816
|
||||
},
|
||||
xxlarge: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220131-9a567bdb-xx.jpg",
|
||||
width: 1656,
|
||||
height: 1104
|
||||
}
|
||||
},
|
||||
categories: [
|
||||
{
|
||||
id: 7,
|
||||
url: "http://localhost:8080/index.php?/category/7",
|
||||
page_url: "http://localhost:8080/picture.php?/3/category/7"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
is_favorite: false,
|
||||
id: 2,
|
||||
width: 3107,
|
||||
height: 4660,
|
||||
hit: 4,
|
||||
file: "2017-04-21-11-53-C7D_4469.jpg",
|
||||
name: "2017-04-21-11-53-C7D 4469",
|
||||
comment: null,
|
||||
date_creation: "2017-04-21 11:53:28",
|
||||
date_available: "2022-10-20 22:01:30",
|
||||
page_url: "http://localhost:8080/picture.php?/2",
|
||||
element_url: "http://localhost:8080/upload/2022/10/20/20221020220130-8e50dbd3.jpg",
|
||||
derivatives: {
|
||||
square: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220130-8e50dbd3-sq.jpg",
|
||||
width: 120,
|
||||
height: 120
|
||||
},
|
||||
thumb: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220130-8e50dbd3-th.jpg",
|
||||
width: 96,
|
||||
height: 144
|
||||
},
|
||||
2small: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220130-8e50dbd3-2s.jpg",
|
||||
width: 160,
|
||||
height: 240
|
||||
},
|
||||
xsmall: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220130-8e50dbd3-xs.jpg",
|
||||
width: 216,
|
||||
height: 324
|
||||
},
|
||||
small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220130-8e50dbd3-sm.jpg",
|
||||
width: 288,
|
||||
height: 432
|
||||
},
|
||||
medium: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220130-8e50dbd3-me.jpg",
|
||||
width: 396,
|
||||
height: 594
|
||||
},
|
||||
large: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220130-8e50dbd3-la.jpg",
|
||||
width: 504,
|
||||
height: 756
|
||||
},
|
||||
xlarge: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220130-8e50dbd3-xl.jpg",
|
||||
width: 612,
|
||||
height: 918
|
||||
},
|
||||
xxlarge: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220130-8e50dbd3-xx.jpg",
|
||||
width: 828,
|
||||
height: 1242
|
||||
}
|
||||
},
|
||||
categories: [
|
||||
{
|
||||
id: 7,
|
||||
url: "http://localhost:8080/index.php?/category/7",
|
||||
page_url: "http://localhost:8080/picture.php?/2/category/7"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
is_favorite: false,
|
||||
id: 1,
|
||||
width: 5184,
|
||||
height: 3456,
|
||||
hit: 2,
|
||||
file: "2017-01-05-11-25-c7d_2770.jpg",
|
||||
name: "2017-01-05-11-25-c7d 2770",
|
||||
comment: null,
|
||||
date_creation: "2017-01-05 11:25:34",
|
||||
date_available: "2022-10-20 22:01:29",
|
||||
page_url: "http://localhost:8080/picture.php?/1",
|
||||
element_url: "http://localhost:8080/upload/2022/10/20/20221020220129-6b8c2a7d.jpg",
|
||||
derivatives: {
|
||||
square: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220129-6b8c2a7d-sq.jpg",
|
||||
width: 120,
|
||||
height: 120
|
||||
},
|
||||
thumb: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220129-6b8c2a7d-th.jpg",
|
||||
width: 144,
|
||||
height: 96
|
||||
},
|
||||
2small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220129-6b8c2a7d-2s.jpg",
|
||||
width: 240,
|
||||
height: 160
|
||||
},
|
||||
xsmall: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220129-6b8c2a7d-xs.jpg",
|
||||
width: 432,
|
||||
height: 288
|
||||
},
|
||||
small: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220129-6b8c2a7d-sm.jpg",
|
||||
width: 576,
|
||||
height: 384
|
||||
},
|
||||
medium: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220129-6b8c2a7d-me.jpg",
|
||||
width: 792,
|
||||
height: 528
|
||||
},
|
||||
large: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220129-6b8c2a7d-la.jpg",
|
||||
width: 1008,
|
||||
height: 672
|
||||
},
|
||||
xlarge: {
|
||||
url: "http://localhost:8080/i.php?/upload/2022/10/20/20221020220129-6b8c2a7d-xl.jpg",
|
||||
width: 1224,
|
||||
height: 816
|
||||
},
|
||||
xxlarge: {
|
||||
url: "http://localhost:8080/_data/i/upload/2022/10/20/20221020220129-6b8c2a7d-xx.jpg",
|
||||
width: 1656,
|
||||
height: 1104
|
||||
}
|
||||
},
|
||||
categories: [
|
||||
{
|
||||
id: 7,
|
||||
url: "http://localhost:8080/index.php?/category/7",
|
||||
page_url: "http://localhost:8080/picture.php?/1/category/7"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
36
PiwigoDotnet/Piwigo.Client.Tests/ImageApiTests.cs
Normal file
36
PiwigoDotnet/Piwigo.Client.Tests/ImageApiTests.cs
Normal file
@ -0,0 +1,36 @@
|
||||
using Microsoft.Extensions.Logging.Abstractions;
|
||||
using Piwigo.Client.Contract;
|
||||
|
||||
namespace Piwigo.Client.Tests;
|
||||
|
||||
[TestFixture]
|
||||
public class ImageApiTests : ApiTestsBase
|
||||
{
|
||||
private IImageApi _imageApi = null!;
|
||||
|
||||
protected override void OnSetUp()
|
||||
{
|
||||
base.OnSetUp();
|
||||
_imageApi = new ImageApi(Context, new NullLogger<ImageApi>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task GetImages_should_return_expected_images()
|
||||
{
|
||||
await SetJsonResultFromFileAsync("ImageApi.getImages.json");
|
||||
|
||||
var result = await _imageApi.GetImages(7, true, new PagingInfo(0, 100, 0), ImageFilter.Empty);
|
||||
|
||||
CorrectMethodShouldGetCalled("pwg.categories.getImages");
|
||||
CorrectParamShouldGetSent("cat_id", "7");
|
||||
CorrectParamShouldGetSent("recursive", "true");
|
||||
CorrectParamShouldGetSent("per_page", "100");
|
||||
CorrectParamShouldGetSent("page", "0");
|
||||
|
||||
result.Images.Should().HaveCount(4);
|
||||
result.Images.First().Id.Should().Be(4);
|
||||
result.Paging.Page.Should().Be(0);
|
||||
result.Paging.PageSize.Should().Be(100);
|
||||
result.Paging.TotalItems.Should().Be(4);
|
||||
}
|
||||
}
|
@ -21,4 +21,10 @@
|
||||
<ProjectReference Include="..\Piwigo.Client\Piwigo.Client.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Update="ImageApi.getImages.json">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
20
PiwigoDotnet/Piwigo.Client/Contract/Image.cs
Normal file
20
PiwigoDotnet/Piwigo.Client/Contract/Image.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Piwigo.Client.Contract;
|
||||
|
||||
public class Image
|
||||
{
|
||||
[JsonProperty("id")]
|
||||
public int Id { get; init; }
|
||||
|
||||
[JsonProperty("width")]
|
||||
public int Width { get; init; }
|
||||
|
||||
[JsonProperty("height")]
|
||||
public int Height { get; init; }
|
||||
|
||||
[JsonProperty("hit")]
|
||||
public int Hit { get; init; }
|
||||
|
||||
//TODO: add additional fields
|
||||
}
|
34
PiwigoDotnet/Piwigo.Client/Contract/ImageFilter.cs
Normal file
34
PiwigoDotnet/Piwigo.Client/Contract/ImageFilter.cs
Normal file
@ -0,0 +1,34 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace Piwigo.Client.Contract;
|
||||
|
||||
[SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
public record ImageFilter
|
||||
{
|
||||
public static ImageFilter Empty => new()
|
||||
{
|
||||
MinRate = null,
|
||||
MaxRate = null,
|
||||
MinHit = null,
|
||||
MaxHit = null,
|
||||
MinRatio = null,
|
||||
MaxRatio = null,
|
||||
MaxLevel = null,
|
||||
MinDateAvailable = null,
|
||||
MaxDataAvailable = null,
|
||||
MinDateCreated = null,
|
||||
MaxDateCreated = null
|
||||
};
|
||||
|
||||
public float? MinRate { get; init; }
|
||||
public float? MaxRate { get; init; }
|
||||
public int? MinHit { get; init; }
|
||||
public int? MaxHit { get; init; }
|
||||
public float? MinRatio { get; init; }
|
||||
public float? MaxRatio { get; init; }
|
||||
public int? MaxLevel { get; init; }
|
||||
public DateTime? MinDateAvailable { get; init; }
|
||||
public DateTime? MaxDataAvailable { get; init; }
|
||||
public DateTime? MinDateCreated { get; init; }
|
||||
public DateTime? MaxDateCreated { get; init; }
|
||||
}
|
22
PiwigoDotnet/Piwigo.Client/Contract/PagedImages.cs
Normal file
22
PiwigoDotnet/Piwigo.Client/Contract/PagedImages.cs
Normal file
@ -0,0 +1,22 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Piwigo.Client.Contract;
|
||||
|
||||
public class PagedImages
|
||||
{
|
||||
protected PagedImages()
|
||||
{
|
||||
}
|
||||
|
||||
public PagedImages(PagingInfo paging, IReadOnlyCollection<Image> images)
|
||||
{
|
||||
Paging = paging ?? throw new ArgumentNullException(nameof(paging));
|
||||
Images = images ?? throw new ArgumentNullException(nameof(images));
|
||||
}
|
||||
|
||||
[JsonProperty("paging")]
|
||||
public PagingInfo Paging { get; init; } = null!;
|
||||
|
||||
[JsonProperty("images")]
|
||||
public IReadOnlyCollection<Image> Images { get; init; } = null!;
|
||||
}
|
5
PiwigoDotnet/Piwigo.Client/Contract/PagingInfo.cs
Normal file
5
PiwigoDotnet/Piwigo.Client/Contract/PagingInfo.cs
Normal file
@ -0,0 +1,5 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Piwigo.Client.Contract;
|
||||
|
||||
public record PagingInfo([property: JsonProperty("page")] int Page, [property: JsonProperty("per_page")] int PageSize, [property: JsonProperty("count")] int TotalItems);
|
@ -1,3 +1,9 @@
|
||||
using Piwigo.Client.Contract;
|
||||
|
||||
namespace Piwigo.Client;
|
||||
|
||||
public interface IImageApi {}
|
||||
public interface IImageApi
|
||||
{
|
||||
Task<PagedImages> GetImages(int albumId, bool recursive, PagingInfo page, ImageFilter filter, ImageOrder order = ImageOrder.Name,
|
||||
CancellationToken cancellationToken = default);
|
||||
}
|
101
PiwigoDotnet/Piwigo.Client/ImageApi.cs
Normal file
101
PiwigoDotnet/Piwigo.Client/ImageApi.cs
Normal file
@ -0,0 +1,101 @@
|
||||
using System.Globalization;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Piwigo.Client.Contract;
|
||||
|
||||
namespace Piwigo.Client;
|
||||
|
||||
public class ImageApi : IImageApi
|
||||
{
|
||||
private readonly IPiwigoContext _context;
|
||||
private readonly ILogger<ImageApi> _logger;
|
||||
|
||||
public ImageApi(IPiwigoContext context, ILogger<ImageApi> logger)
|
||||
{
|
||||
_context = context ?? throw new ArgumentNullException(nameof(context));
|
||||
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
|
||||
}
|
||||
|
||||
public async Task<PagedImages> GetImages(int albumId, bool recursive, PagingInfo page, ImageFilter filter, ImageOrder order = ImageOrder.Name,
|
||||
CancellationToken cancellationToken = default)
|
||||
{
|
||||
var orderValue = order switch
|
||||
{
|
||||
ImageOrder.Id => "id",
|
||||
ImageOrder.File => "file",
|
||||
ImageOrder.Name => "name",
|
||||
ImageOrder.Hit => "hit",
|
||||
ImageOrder.RatingScore => "rating_score",
|
||||
ImageOrder.DateCreation => "date_creation",
|
||||
ImageOrder.DateAvailable => "date_available",
|
||||
ImageOrder.Random => "random",
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(order), order, null)
|
||||
};
|
||||
|
||||
var formParams = new Dictionary<string, string>
|
||||
{
|
||||
{ "cat_id", albumId.ToString() },
|
||||
{ "recursive", recursive.ToString() },
|
||||
{ "per_page", page.PageSize.ToString() },
|
||||
{ "page", page.Page.ToString() },
|
||||
{ "order", orderValue }
|
||||
};
|
||||
|
||||
if (filter.MinRate.HasValue)
|
||||
{
|
||||
formParams.Add("f_min_rate", filter.MinRate.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
if (filter.MaxRate.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_rate", filter.MaxRate.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
if (filter.MinHit.HasValue)
|
||||
{
|
||||
formParams.Add("f_min_hit", filter.MinHit.Value.ToString());
|
||||
}
|
||||
|
||||
if (filter.MaxHit.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_hit", filter.MaxHit.Value.ToString());
|
||||
}
|
||||
|
||||
if (filter.MinRatio.HasValue)
|
||||
{
|
||||
formParams.Add("f_min_ratio", filter.MinRatio.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
if (filter.MaxRatio.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_ratio", filter.MaxRatio.Value.ToString(CultureInfo.InvariantCulture));
|
||||
}
|
||||
|
||||
if (filter.MaxLevel.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_level", filter.MaxLevel.Value.ToString());
|
||||
}
|
||||
|
||||
if (filter.MinDateAvailable.HasValue)
|
||||
{
|
||||
formParams.Add("f_min_date_available", filter.MinDateAvailable.Value.ToString("yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
if (filter.MaxDataAvailable.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_date_available", filter.MaxDataAvailable.Value.ToString("yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
if (filter.MinDateCreated.HasValue)
|
||||
{
|
||||
formParams.Add("f_min_date_created", filter.MinDateCreated.Value.ToString("yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
if (filter.MaxDateCreated.HasValue)
|
||||
{
|
||||
formParams.Add("f_max_date_created", filter.MaxDateCreated.Value.ToString("yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
var response = await _context.PostAsync<PiwigoResponse<PagedImages>>(_logger, "pwg.categories.getImages", formParams, cancellationToken);
|
||||
return response.Result;
|
||||
}
|
||||
}
|
13
PiwigoDotnet/Piwigo.Client/ImageOrder.cs
Normal file
13
PiwigoDotnet/Piwigo.Client/ImageOrder.cs
Normal file
@ -0,0 +1,13 @@
|
||||
namespace Piwigo.Client;
|
||||
|
||||
public enum ImageOrder
|
||||
{
|
||||
Id = 0,
|
||||
File,
|
||||
Name,
|
||||
Hit,
|
||||
RatingScore,
|
||||
DateCreation,
|
||||
DateAvailable,
|
||||
Random
|
||||
}
|
Loading…
Reference in New Issue
Block a user