Agribusiness.Web.Controllers.PersonController.UpdateRegistrationStatus C# (CSharp) Method

UpdateRegistrationStatus() private method

private UpdateRegistrationStatus ( int personId, int seminarId ) : ActionResult
personId int
seminarId int
return ActionResult
        public ActionResult UpdateRegistrationStatus(int personId, int seminarId)
        {
            var person = _personRepository.GetNullableById(personId);

            if (person == null)
            {
                Message = string.Format(Messages.NotFound, "Person", personId);
                return this.RedirectToAction(a => a.SiteList());
            }

            var reg = person.GetLatestRegistration(Site);
            var seminar = SiteService.GetLatestSeminar(Site);

            // check if user is registered for the current seminar
            if (reg.Seminar != seminar)
            {
                Message = "User is not a part of the current seminar.  Coupon cannot be created.";
                return this.RedirectToAction(a => a.AdminEdit(person.User.Id, seminarId, null));
            }

            // make the web service call
            string transactionId;
            bool paid;
            _registrationService.RefreshRegistration(seminar.RegistrationId.Value, reg.ReferenceId, out transactionId, out paid);

            reg.TransactionId = transactionId;
            reg.Paid = paid;

            _seminarPersonRepository.EnsurePersistent(reg);

            _eventService.Paid(person, Site);

            Message = "Registration information has been updated.";
            var url = Url.Action("AdminEdit", new { id = person.User.Id, seminarId = seminarId });
            return Redirect(string.Format("{0}#registration", url));
        }