diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Icons/CmsIconTagHelper.cs b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Icons/CmsIconTagHelper.cs index 515fe32181..d3704b7bd2 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Icons/CmsIconTagHelper.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Icons/CmsIconTagHelper.cs @@ -11,6 +11,7 @@ namespace Volo.CmsKit.Web.Icons public CmsIconTagHelper(CmsIconTagHelperService service) : base(service) { + } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/GetAvailableReactionsDto.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/GetAvailableReactionsDto.cs index 357ce06e14..0b6ee20836 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/GetAvailableReactionsDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/GetAvailableReactionsDto.cs @@ -3,7 +3,5 @@ public class GetAvailableReactionsDto { public string EntityType { get; set; } - - public string EntityId { get; set; } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/IReactionPublicAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/IReactionPublicAppService.cs index 532b2f883e..fe969890d5 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/IReactionPublicAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Reactions/IReactionPublicAppService.cs @@ -7,7 +7,7 @@ namespace Volo.CmsKit.Reactions public interface IReactionPublicAppService : IApplicationService { Task> GetAvailableReactions( - GetAvailableReactionsDto getAvailableReactionsDto + GetAvailableReactionsDto input ); } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Reactions/ReactionPublicAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Reactions/ReactionPublicAppService.cs index 73ca39b816..7e8a90b969 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Reactions/ReactionPublicAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Reactions/ReactionPublicAppService.cs @@ -1,22 +1,31 @@ -using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using Volo.Abp.Application.Dtos; -using Volo.Abp.Application.Services; namespace Volo.CmsKit.Reactions { public class ReactionPublicAppService : CmsKitPublicAppService, IReactionPublicAppService { - public Task> GetAvailableReactions( - GetAvailableReactionsDto getAvailableReactionsDto) + protected IReactionDefinitionStore ReactionDefinitionStore { get; } + + public ReactionPublicAppService(IReactionDefinitionStore reactionDefinitionStore) + { + ReactionDefinitionStore = reactionDefinitionStore; + } + + public virtual async Task> GetAvailableReactions( + GetAvailableReactionsDto input) { - return Task.FromResult( - new ListResultDto(new List() + var reactionDefinitions = await ReactionDefinitionStore.GetAvailableReactionsAsync(input.EntityType, CurrentUser.Id); + + var reactionDtos = reactionDefinitions + .Select(reactionDefinition => new ReactionDto { - new ReactionDto {Name = StandardReactions.ThumbsUp}, - new ReactionDto {Name = StandardReactions.Smile, DisplayName = "Smile :)"} - }) - ); + Name = reactionDefinition.Name, + DisplayName = reactionDefinition.DisplayName?.Localize(StringLocalizerFactory) + }).ToList(); + + return new ListResultDto(reactionDtos); } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/Default.cshtml b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/Default.cshtml index 5937331882..77be9107e4 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/Default.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/Default.cshtml @@ -1,7 +1,5 @@ @model Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.ReactionSelection.ReactionSelectionViewModel -

TEST!

EntityType: @Model.EntityType

-

EntityId: @Model.EntityId

@foreach (var reaction in Model.Reactions) { diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewComponent.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewComponent.cs index 98ccfee129..103fbb46ef 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewComponent.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewComponent.cs @@ -10,6 +10,7 @@ namespace Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.ReactionSelection public class ReactionSelectionViewComponent : AbpViewComponent { protected IReactionPublicAppService ReactionPublicAppService { get; } + protected CmsKitUiOptions Options { get; } public ReactionSelectionViewComponent( @@ -21,21 +22,18 @@ namespace Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.ReactionSelection } public virtual async Task InvokeAsync( - string entityType = null, - string entityId = null) + string entityType = null) { var result = await ReactionPublicAppService.GetAvailableReactions( new GetAvailableReactionsDto { - EntityType = entityType, - EntityId = entityId + EntityType = entityType } ); var viewModel = new ReactionSelectionViewModel { EntityType = entityType, - EntityId = entityId, Reactions = new List() }; diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewModel.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewModel.cs index bd22fd4229..e2c8d5409c 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewModel.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/ReactionSelection/ReactionSelectionViewModel.cs @@ -6,8 +6,6 @@ namespace Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.ReactionSelection { public string EntityType { get; set; } - public string EntityId { get; set; } - public List Reactions { get; set; } } }