From 973b5789c8cabc211298f65a3b7f3ae6ba9b816f Mon Sep 17 00:00:00 2001 From: Musa Demir Date: Fri, 25 Mar 2022 17:38:43 +0300 Subject: [PATCH 1/5] move changes to dev based branch moved from https://github.com/abpframework/abp/pull/12064 --- .../Admin/Blogs/IBlogPostAdminAppService.cs | 2 ++ .../Admin/Blogs/BlogPostAdminAppService.cs | 23 +++++++++++++++++-- .../BlogPostAdminClientProxy.Generated.cs | 8 +++++++ .../Admin/Blogs/BlogPostAdminController.cs | 8 +++++++ .../Pages/CmsKit/BlogPosts/Update.cshtml | 18 +++++++++------ .../Pages/CmsKit/BlogPosts/update.js | 18 ++++++++++++++- .../client-proxies/cms-kit-admin-proxy.js | 8 +++++++ .../CmsKit/Localization/Resources/en.json | 3 ++- .../CmsKit/Localization/Resources/tr.json | 3 ++- 9 files changed, 79 insertions(+), 12 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs index 314b7a1def..23562020d4 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs @@ -1,4 +1,5 @@ using System; +using System.Threading.Tasks; using Volo.Abp.Application.Services; namespace Volo.CmsKit.Admin.Blogs; @@ -12,4 +13,5 @@ public interface IBlogPostAdminAppService CreateBlogPostDto, UpdateBlogPostDto> { + Task RemoveCoverImageAsync(Guid id); } diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs index 83899199f0..d463f8dcb1 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs @@ -6,6 +6,7 @@ using Volo.Abp.Application.Dtos; using Volo.Abp.Data; using Volo.Abp.GlobalFeatures; using Volo.Abp.Users; +using Volo.CmsKit.Admin.MediaDescriptors; using Volo.CmsKit.Blogs; using Volo.CmsKit.GlobalFeatures; using Volo.CmsKit.Permissions; @@ -22,16 +23,20 @@ public class BlogPostAdminAppService : CmsKitAppServiceBase, IBlogPostAdminAppSe protected IBlogRepository BlogRepository { get; } protected ICmsUserLookupService UserLookupService { get; } + protected IMediaDescriptorAdminAppService MediaDescriptorAdminAppService { get; } + public BlogPostAdminAppService( BlogPostManager blogPostManager, IBlogPostRepository blogPostRepository, IBlogRepository blogRepository, - ICmsUserLookupService userLookupService) + ICmsUserLookupService userLookupService, + IMediaDescriptorAdminAppService mediaDescriptorAdminAppService) { BlogPostManager = blogPostManager; BlogPostRepository = blogPostRepository; BlogRepository = blogRepository; UserLookupService = userLookupService; + MediaDescriptorAdminAppService = mediaDescriptorAdminAppService; } [Authorize(CmsKitAdminPermissions.BlogPosts.Create)] @@ -109,4 +114,18 @@ public class BlogPostAdminAppService : CmsKitAppServiceBase, IBlogPostAdminAppSe { await BlogPostRepository.DeleteAsync(id); } -} + + [Authorize(CmsKitAdminPermissions.BlogPosts.Update)] + public virtual async Task RemoveCoverImageAsync(Guid id) + { + var blogPost = await BlogPostRepository.GetAsync(id); + if (blogPost?.CoverImageMediaId == null) + { + return; + } + + await MediaDescriptorAdminAppService.DeleteAsync(blogPost.CoverImageMediaId.Value); + + blogPost.CoverImageMediaId = null; + } +} \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs index 560ba4e2de..0f201fb469 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs @@ -55,4 +55,12 @@ public partial class BlogPostAdminClientProxy : ClientProxyBase
- @if (Model.ViewModel.CoverImageMediaId != null) - { - -
- } - - +
+ @if (Model.ViewModel.CoverImageMediaId != null) + { + +
+ +
+ } +
+ +
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/BlogPosts/update.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/BlogPosts/update.js index 5902dc111b..65e9c89146 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/BlogPosts/update.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/BlogPosts/update.js @@ -10,6 +10,7 @@ $(function () { var $blogPostIdInput = $('#Id'); var $tagsInput = $('.tag-editor-form input[name=tags]'); var $fileInput = $('#BlogPostCoverImage'); + var $buttonRemoveCoverImage = $('#button-remove-cover-image'); var UPPY_FILE_ID = "uppy-upload-file"; @@ -152,7 +153,6 @@ $(function () { } } - // ----------------------------------- var fileUploadUri = "/api/cms-kit-admin/media/blogpost"; var fileUriPrefix = "/api/cms-kit/media/"; @@ -225,4 +225,20 @@ $(function () { } }); } + + $buttonRemoveCoverImage.on('click', function () { + abp.message.confirm( + l('RemoveCoverImageConfirmationMessage'), + function (isConfirmed) { + if (isConfirmed) { + volo.cmsKit.admin.blogs.blogPostAdmin + .removeCoverImage($blogPostIdInput.val()) + .then(function () { + $coverImage.val(null); + $('#CurrentCoverImageArea').remove(); + }); + } + } + ); + }); }); diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js index 0a1424d92a..9bce6416a3 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js @@ -391,6 +391,14 @@ }, ajaxParams)); }; + volo.cmsKit.admin.blogs.blogPostAdmin.removeCoverImage = function(id, ajaxParams) { + return abp.ajax($.extend(true, { + url: abp.appPath + 'api/cms-kit-admin/blogs/blog-posts/removeCoverImage/' + id + '', + type: 'DELETE', + dataType: null + }, ajaxParams)); + }; + })(); })(); diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json index 0dd826480d..8cbd7ef946 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json @@ -164,6 +164,7 @@ "GlobalResources": "Global Resources", "Script": "Script", "Style": "Style", - "SavedSuccessfully": "Saved successfully" + "SavedSuccessfully": "Saved successfully", + "RemoveCoverImageConfirmationMessage": "Are you sure to remove the cover image?" } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json index 95ef414c17..90b10f153c 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json @@ -163,6 +163,7 @@ "GlobalResources": "Global Kaynaklar", "Script": "Script", "Style": "Style", - "SavedSuccessfully": "Başarıyla kaydedildi" + "SavedSuccessfully": "Başarıyla kaydedildi", + "RemoveCoverImageConfirmationMessage": "Kapak resmini kaldırmak istediğinize emin misiniz?" } } From f08f00ad279d0fe299f5d377e914f48759213ca5 Mon Sep 17 00:00:00 2001 From: Musa Demir Date: Fri, 25 Mar 2022 17:44:16 +0300 Subject: [PATCH 2/5] change route requested in https://github.com/abpframework/abp/pull/12064#discussion_r835134372 --- .../Volo/CmsKit/Admin/Blogs/BlogPostAdminController.cs | 2 +- .../wwwroot/client-proxies/cms-kit-admin-proxy.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Blogs/BlogPostAdminController.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Blogs/BlogPostAdminController.cs index 5492633078..0dbf8ec10d 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Blogs/BlogPostAdminController.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Blogs/BlogPostAdminController.cs @@ -63,7 +63,7 @@ public class BlogPostAdminController : CmsKitAdminController, IBlogPostAdminAppS } [HttpDelete] - [Route("removeCoverImage/{id}")] + [Route("{id}/cover-image")] [Authorize(CmsKitAdminPermissions.BlogPosts.Update)] public Task RemoveCoverImageAsync(Guid id) { diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js index 9bce6416a3..2cb7d2ab98 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js @@ -393,7 +393,7 @@ volo.cmsKit.admin.blogs.blogPostAdmin.removeCoverImage = function(id, ajaxParams) { return abp.ajax($.extend(true, { - url: abp.appPath + 'api/cms-kit-admin/blogs/blog-posts/removeCoverImage/' + id + '', + url: abp.appPath + 'api/cms-kit-admin/blogs/blog-posts/' + id + '/cover-image', type: 'DELETE', dataType: null }, ajaxParams)); From 484e4952dba54aeba09d62c83fc1c160c749a42d Mon Sep 17 00:00:00 2001 From: Musa Demir Date: Fri, 25 Mar 2022 17:46:47 +0300 Subject: [PATCH 3/5] add localization --- .../Volo/CmsKit/Localization/Resources/en.json | 3 ++- .../Volo/CmsKit/Localization/Resources/tr.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json index 8cbd7ef946..43f620bfd9 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json @@ -165,6 +165,7 @@ "Script": "Script", "Style": "Style", "SavedSuccessfully": "Saved successfully", - "RemoveCoverImageConfirmationMessage": "Are you sure to remove the cover image?" + "RemoveCoverImageConfirmationMessage": "Are you sure to remove the cover image?", + "RemoveCoverImage": "Remove the cover image" } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json index 90b10f153c..527e119a2e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/tr.json @@ -164,6 +164,7 @@ "Script": "Script", "Style": "Style", "SavedSuccessfully": "Başarıyla kaydedildi", - "RemoveCoverImageConfirmationMessage": "Kapak resmini kaldırmak istediğinize emin misiniz?" + "RemoveCoverImageConfirmationMessage": "Kapak resmini kaldırmak istediğinize emin misiniz?", + "RemoveCoverImage": "Kapak resmini kaldır" } } From 7e0b99201881ba6ddf85ac27199b035e0391fdb6 Mon Sep 17 00:00:00 2001 From: Musa Demir Date: Wed, 30 Mar 2022 00:12:57 +0300 Subject: [PATCH 4/5] use setting CoverImageMediaId to null and remove cover image in the update request --- .../Admin/Blogs/IBlogPostAdminAppService.cs | 1 - .../Admin/Blogs/BlogPostAdminAppService.cs | 21 ++++++------------- .../BlogPostAdminClientProxy.Generated.cs | 8 ------- .../Admin/Blogs/BlogPostAdminController.cs | 8 ------- .../Pages/CmsKit/BlogPosts/update.js | 8 ++----- 5 files changed, 8 insertions(+), 38 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs index 23562020d4..14704a26ad 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs @@ -13,5 +13,4 @@ public interface IBlogPostAdminAppService CreateBlogPostDto, UpdateBlogPostDto> { - Task RemoveCoverImageAsync(Guid id); } diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs index ba346b752e..3c79e6220b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs @@ -69,8 +69,13 @@ public class BlogPostAdminAppService : CmsKitAppServiceBase, IBlogPostAdminAppSe blogPost.SetShortDescription(input.ShortDescription); blogPost.SetContent(input.Content); blogPost.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + + if (blogPost.CoverImageMediaId != null && input.CoverImageMediaId == null) + { + await MediaDescriptorAdminAppService.DeleteAsync(blogPost.CoverImageMediaId.Value); + } blogPost.CoverImageMediaId = input.CoverImageMediaId; - + if (blogPost.Slug != input.Slug) { await BlogPostManager.SetSlugUrlAsync(blogPost, input.Slug); @@ -115,18 +120,4 @@ public class BlogPostAdminAppService : CmsKitAppServiceBase, IBlogPostAdminAppSe { await BlogPostRepository.DeleteAsync(id); } - - [Authorize(CmsKitAdminPermissions.BlogPosts.Update)] - public virtual async Task RemoveCoverImageAsync(Guid id) - { - var blogPost = await BlogPostRepository.GetAsync(id); - if (blogPost?.CoverImageMediaId == null) - { - return; - } - - await MediaDescriptorAdminAppService.DeleteAsync(blogPost.CoverImageMediaId.Value); - - blogPost.CoverImageMediaId = null; - } } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs index 0f201fb469..560ba4e2de 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs @@ -55,12 +55,4 @@ public partial class BlogPostAdminClientProxy : ClientProxyBase Date: Wed, 30 Mar 2022 00:18:34 +0300 Subject: [PATCH 5/5] code clean --- .../Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs | 1 - .../Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs | 2 +- .../wwwroot/client-proxies/cms-kit-admin-proxy.js | 8 -------- 3 files changed, 1 insertion(+), 10 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs index 14704a26ad..314b7a1def 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Blogs/IBlogPostAdminAppService.cs @@ -1,5 +1,4 @@ using System; -using System.Threading.Tasks; using Volo.Abp.Application.Services; namespace Volo.CmsKit.Admin.Blogs; diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs index 3c79e6220b..d78571ba21 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Blogs/BlogPostAdminAppService.cs @@ -64,7 +64,7 @@ public class BlogPostAdminAppService : CmsKitAppServiceBase, IBlogPostAdminAppSe public virtual async Task UpdateAsync(Guid id, UpdateBlogPostDto input) { var blogPost = await BlogPostRepository.GetAsync(id); - + blogPost.SetTitle(input.Title); blogPost.SetShortDescription(input.ShortDescription); blogPost.SetContent(input.Content); diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js index 2cb7d2ab98..0a1424d92a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/wwwroot/client-proxies/cms-kit-admin-proxy.js @@ -391,14 +391,6 @@ }, ajaxParams)); }; - volo.cmsKit.admin.blogs.blogPostAdmin.removeCoverImage = function(id, ajaxParams) { - return abp.ajax($.extend(true, { - url: abp.appPath + 'api/cms-kit-admin/blogs/blog-posts/' + id + '/cover-image', - type: 'DELETE', - dataType: null - }, ajaxParams)); - }; - })(); })();