/// <summary> /// To the azure model. /// </summary> /// <param name="kindAction">The kind action.</param> /// <returns>KindActionAzure.</returns> public static KindActionAzure ToAzureModel(this KindAction kindAction) { var azureModel = new KindActionAzure(); kindAction.CopyTo(azureModel); azureModel.Likes = kindAction.Likes.JoinToString(); azureModel.Dislikes = kindAction.Dislikes.JoinToString(); return(azureModel); }
public static Models.Api.KindAction ConvertToApi(this KindAction kindAction, string currentUserId) { var kindActionApi = new Models.Api.KindAction(); kindAction.CopyTo(kindActionApi); kindActionApi.LikesCount = kindAction.Likes?.Count ?? 0; kindActionApi.DislikesCount = kindAction.Dislikes?.Count ?? 0; kindActionApi.AlreadyLiked = (kindAction.Likes?.Contains(currentUserId) ?? false) || (kindAction.Dislikes?.Contains(currentUserId) ?? false); return(kindActionApi); }
/// <summary> /// Updates the specified kind action. /// </summary> /// <param name="kindAction">The kind action.</param> /// <returns></returns> public async Task <OperationResult> UpdateLikes(KindAction kindAction) { var existingKindAction = await GetKindAction(kindAction.Id, kindAction.UserId); if (existingKindAction == null) { return(OperationResult.NotFound); } kindAction.CopyTo(existingKindAction); return(new OperationResult(OperationResultStatus.Success)); }