Ejemplo n.º 1
0
        public async Task <ActionResult> DeclineByPlayer(AddCommentViewModel viewModel)
        {
            var claim = await _claimsRepository.GetClaim(viewModel.ProjectId, viewModel.ClaimId);

            var error = WithMyClaim(claim);

            if (error != null)
            {
                return(error);
            }
            try
            {
                if (viewModel.HideFromUser)
                {
                    throw new DbEntityValidationException();
                }
                await
                _claimService.DeclineByPlayer(claim.ProjectId, claim.ClaimId, CurrentUserId, viewModel.CommentText);

                return(RedirectToAction("Edit", "Claim", new { viewModel.ClaimId, viewModel.ProjectId }));
            }
            catch
            {
                //TODO: Message that comment is not added
                return(RedirectToAction("Edit", "Claim", new { viewModel.ClaimId, viewModel.ProjectId }));
            }
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> DeclineByPlayer(ClaimOperationViewModel viewModel)
        {
            var claim = await _claimsRepository.GetClaim(viewModel.ProjectId, viewModel.ClaimId);

            if (claim == null)
            {
                return(HttpNotFound());
            }
            if (claim.PlayerUserId != CurrentUserId)
            {
                return(NoAccesToProjectView(claim.Project));
            }
            try
            {
                if (!ModelState.IsValid)
                {
                    return(await ShowClaim(claim));
                }
                await
                _claimService.DeclineByPlayer(claim.ProjectId, claim.ClaimId, viewModel.CommentText);

                return(ReturnToClaim(viewModel));
            }
            catch (Exception exception)
            {
                ModelState.AddException(exception);
                return(await ShowClaim(claim));
            }
        }