diff --git a/src/Yavsc.Abstract/Blogspot/IBlogPost.cs b/src/Yavsc.Abstract/Blogspot/IBlogPost.cs index 691e03f2..5287685d 100644 --- a/src/Yavsc.Abstract/Blogspot/IBlogPost.cs +++ b/src/Yavsc.Abstract/Blogspot/IBlogPost.cs @@ -7,9 +7,8 @@ using Yavsc.Interfaces; namespace Yavsc.Blogspot { - public interface IBlogPost : IBlogPostPayLoad, ICircleAuthorized, ITaggable, ITrackedEntity, IIdentified, ITitle + public interface IBlogPost : IBlogPostPayLoad, ICircleAuthorized, ITrackedEntity, ITitle { - string AuthorId { get; set; } IApplicationUser Author { get; } } } diff --git a/src/Yavsc.Abstract/Identity/Security/ICircleAuthorized.cs b/src/Yavsc.Abstract/Identity/Security/ICircleAuthorized.cs index cc108d2e..25c21961 100644 --- a/src/Yavsc.Abstract/Identity/Security/ICircleAuthorized.cs +++ b/src/Yavsc.Abstract/Identity/Security/ICircleAuthorized.cs @@ -1,10 +1,14 @@ +using Yavsc.Interfaces; + namespace Yavsc.Abstract.Identity.Security { - public interface ICircleAuthorized + public interface ICircleAuthorized : ITaggable { - long Id { get; set; } + string AuthorId { get; } + bool AuthorizeCircle(long circleId); + ICircleAuthorization [] GetACL(); } diff --git a/src/Yavsc.Abstract/Interfaces/Models/ITaggable.cs b/src/Yavsc.Abstract/Interfaces/Models/ITaggable.cs index 89a51d30..eb325b6f 100644 --- a/src/Yavsc.Abstract/Interfaces/Models/ITaggable.cs +++ b/src/Yavsc.Abstract/Interfaces/Models/ITaggable.cs @@ -1,9 +1,9 @@ namespace Yavsc.Interfaces { - public interface ITaggable + public interface ITaggable : IIdentified { string [] GetTags(); K Id { get; } } -} \ No newline at end of file +} diff --git a/src/Yavsc.Blogs.Tests/BlogApiTests.cs b/src/Yavsc.Blogs.Tests/BlogApiTests.cs index fd64555a..35d67fbe 100644 --- a/src/Yavsc.Blogs.Tests/BlogApiTests.cs +++ b/src/Yavsc.Blogs.Tests/BlogApiTests.cs @@ -239,7 +239,8 @@ public sealed class BlogApiTests : IClassFixture // The list should now be empty. var listResponse = await http.GetAsync("/api/v1/blog"); - using var doc = JsonDocument.Parse(await listResponse.Content.ReadAsStringAsync()); + String response = await listResponse.Content.ReadAsStringAsync(); + using var doc = JsonDocument.Parse(response); Assert.Equal(0, doc.RootElement.GetArrayLength()); } diff --git a/src/Yavsc.Blogs/Controllers/BlogApiController.cs b/src/Yavsc.Blogs/Controllers/BlogApiController.cs index 23d71742..ac7b59df 100644 --- a/src/Yavsc.Blogs/Controllers/BlogApiController.cs +++ b/src/Yavsc.Blogs/Controllers/BlogApiController.cs @@ -22,9 +22,9 @@ namespace Yavsc.Blogs.Controllers // GET: api/BlogApi [HttpGet] - public async Task> GetBlogspot(int start = 0, int take = 25) + public async Task> GetBlogspot(int start = 0, int take = 25) { - return await blogSpotService.Index(User, null, start, take); + return (await blogSpotService.Index(User, null, start, take)).Cast(); } // GET: api/BlogApi/5 diff --git a/src/Yavsc.Org.Tests/appsettings.json b/src/Yavsc.Org.Tests/appsettings.json index 5f353cd8..ef95fef6 100644 --- a/src/Yavsc.Org.Tests/appsettings.json +++ b/src/Yavsc.Org.Tests/appsettings.json @@ -1,6 +1,7 @@ { "Site": { "Authority": "https://localhost:5101", + "Audience": ["blogs"], "Title": "Yavsc dev", "Slogan": "Yavsc : WIP.", "Banner": "/images/yavsc.png", diff --git a/src/Yavsc.Org/Views/Blogspot/Index.cshtml b/src/Yavsc.Org/Views/Blogspot/Index.cshtml index d5dc27c9..52cf3b88 100644 --- a/src/Yavsc.Org/Views/Blogspot/Index.cshtml +++ b/src/Yavsc.Org/Views/Blogspot/Index.cshtml @@ -52,19 +52,19 @@
- +

@post.Title

- + @post.Article @Html.DisplayFor(m => post.Author) posté le @post.DateCreated.ToString("dddd d MMM yyyy à H:mm") @if ((post.DateModified - post.DateCreated).Minutes > 0){  @:- Modifié le @post.DateModified.ToString("dddd d MMM yyyy à H:mm") - }) + }
@@ -74,13 +74,13 @@ } else { - Details + Details } @if ((await AuthorizationService.AuthorizeAsync(User, post, new EditPermission())).Succeeded) { - Edit + Edit - Delete + Delete }
diff --git a/src/Yavsc.Server/Models/Blog/BlogPost.cs b/src/Yavsc.Server/Models/Blog/BlogPost.cs index e1b44603..442cbb1f 100644 --- a/src/Yavsc.Server/Models/Blog/BlogPost.cs +++ b/src/Yavsc.Server/Models/Blog/BlogPost.cs @@ -35,7 +35,7 @@ namespace Yavsc.Models.Blog public string? AuthorId { get; set; } [Display(Name = "Auteur")] - public virtual ApplicationUser? Author { set; get; } + public virtual ApplicationUser Author { set; get; } [Display(Name = "Date de création")] @@ -95,6 +95,6 @@ namespace Yavsc.Models.Blog [InverseProperty("Post")] public virtual List Comments { get; set; } - IApplicationUser IBlogPost.Author { get => this.Author; } + IApplicationUser IBlogPost.Author => Author; } }