public async Task <IActionResult> AddUser(UsersPageViewModel viewModel)
        {
            var user = await _userManager.FindByEmailAsync(viewModel.Contact.Email);

            if (user != null)
            {
                var contact      = _customerService.GetContactByEmail(user.Email);
                var organization = _organizationService.GetCurrentFoundationOrganization();
                if (_customerService.HasOrganization(contact.ContactId.ToString()))
                {
                    viewModel.Contact.ShowOrganizationError = true;
                    viewModel.Organizations = organization.SubOrganizations ?? new List <FoundationOrganization>();
                    return(View(viewModel));
                }

                var organizationId             = organization.OrganizationId.ToString();
                var currentOrganizationContext = _cookieService.Get(Constant.Fields.SelectedOrganization);
                if (currentOrganizationContext != null)
                {
                    organizationId = currentOrganizationContext;
                }

                _customerService.AddContactToOrganization(contact, organizationId);
                _customerService.UpdateContact(contact.ContactId.ToString(), viewModel.Contact.UserRole, viewModel.Contact.UserLocationId);
            }
            else
            {
                await SaveUser(viewModel);
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult AddUser(UsersPageViewModel viewModel)
        {
            var user = _userManager.FindByEmail(viewModel.Contact.Email);

            if (user != null)
            {
                if (_customerService.HasOrganization(user.Id))
                {
                    viewModel.Contact.ShowOrganizationError = true;
                    var organization = _organizationService.GetCurrentUserOrganization();
                    viewModel.Organizations = organization.SubOrganizations ?? new List <OrganizationModel>();
                    return(View(viewModel));
                }

                _customerService.AddContactToOrganization(user.Id);
                _customerService.UpdateContact(user.Id, viewModel.Contact.UserRole, viewModel.Contact.Location);
            }
            else
            {
                SaveUser(viewModel);
            }

            return(RedirectToAction("Index"));
        }