public virtual async Task <ActionResult> ConfirmTransformToOrganization(string accountNameToTransform, string token) { var adminUser = GetCurrentUser(); string errorReason; var accountToTransform = UserService.FindByUsername(accountNameToTransform); if (accountToTransform == null) { errorReason = String.Format(CultureInfo.CurrentCulture, Strings.TransformAccount_OrganizationAccountDoesNotExist, accountNameToTransform); return(TransformToOrganizationFailed(errorReason)); } if (!UserService.CanTransformUserToOrganization(accountToTransform, out errorReason)) { return(TransformToOrganizationFailed(errorReason)); } if (!await UserService.TransformUserToOrganization(accountToTransform, adminUser, token)) { errorReason = Strings.TransformAccount_Failed; return(TransformToOrganizationFailed(errorReason)); } MessageService.SendOrganizationTransformRequestAcceptedNotice(accountToTransform, adminUser); TelemetryService.TrackOrganizationTransformCompleted(accountToTransform); TempData["Message"] = String.Format(CultureInfo.CurrentCulture, Strings.TransformAccount_Success, accountNameToTransform); return(Redirect(Url.ManageMyOrganization(accountNameToTransform))); }