Ejemplo n.º 1
0
        public Response DeleteCoach(DeleteCoachRequest request)
        {
            var coach = memberQuery.GetCoach(request.CoachId);

            if (coach == null)
            {
                return(Response.CreateResponse(new EntityNotFoundException("The specified coach does not exist")));
            }

            if (coach.ClubId != request.ClubId)
            {
                return(Response.CreateResponse(new IllegalOperationException("The specified coach does not belong to this club")));
            }

            try {
                coachRepository.DeleteCoach(coach);
                var members = memberQuery.GetMembersByEmail(request.ClubId, coach.Email);
                if (members.Count() == 0)
                {
                    var result = identityManager.RemoveUser(coach.Email).Result;
                }
                else if (!members.Any(m => m.Membership == Membership.Coach))
                {
                    var result = identityManager.RemoveUserRole(coach.Email, Membership.Coach).Result;
                }

                return(Response.CreateSuccessResponse());
            } catch (Exception ex) {
                return(Response.CreateResponse(ex));
            }
        }
Ejemplo n.º 2
0
        public ServiceResponse DeleteCoach(int id)
        {
            var response = TryExecute(() =>
            {
                var coach = _coachRepository.GetCoachById(id);
                if (coach == null)
                {
                    return(ServiceResponse.Error(new ErrorDetails(404, string.Format(Error404_CouldNotFindCoach, id))));
                }

                _coachRepository.DeleteCoach(coach);
                return(ServiceResponse.Success());
            });

            if (!response.IsSuccess)
            {
                return(response);
            }

            var sendEventResponse = SendEvent(TrackingLogEventType.CoachDeleted, id);

            if (!sendEventResponse.IsSuccess)
            {
                return(sendEventResponse);
            }

            return(response);
        }
Ejemplo n.º 3
0
 public ActionResult Delete(String id, FormCollection collection)
 {
     try
     {
         _repository.DeleteCoach(id);
         return(RedirectToAction("Index"));
     }
     catch (Exception ex)
     {
         //error msg for failed delete in XML file
         ViewBag.ErrorMsg = "Error deleting record. " + ex.Message;
         return(View(_repository.GetCoachByID(id)));
     }
 }
Ejemplo n.º 4
0
 public ActionResult DeleteConfirmed(string id)
 {
     _repository.DeleteCoach(id);
     return(RedirectToAction("Index"));
 }
 public void DeleteCoach(int coachId)
 {
     _coachRepository.DeleteCoach(coachId);
 }