Ejemplo n.º 1
0
        public async Task<DomainPendingClient> AddAsync(DomainPendingClient client)
        {
            PendingClientEntity entity = _mapper.Map<DomainPendingClient, PendingClientEntity>(client);

            entity.Created = DateTime.UtcNow;
            entity.PasswordSalt = _cryptoService.GenerateSalt();
            entity.Password = _cryptoService.EncodePassword(entity.Password, entity.PasswordSalt);

            entity = await _pendingClientRepository.AddAsync(entity);
            entity.Id = _stringEncryptor.EncryptString(entity.Id);

            return _mapper.Map<PendingClientEntity, DomainPendingClient>(entity);
        }
        public Task SendClientActivationEmailAsync(DomainPendingClient client)
        {
            if (string.IsNullOrEmpty(client.Email))
            {
                return Task.FromResult(0);
            }

            var email = new SendEmailDomain
            {
                Address = _settings.EmailAddressAlerts,
                DisplayName = Emails.SenderDisplayName,
                Emails = new List<string> { client.Email },
                Subject = Emails.SubjectRegistration,
                Body = string.Format(
                    PortalResources.ClientActivation,
                    client.ContactPerson,
                    client.Email,
                    _settings.PortalUri,
                    client.Id)
            };

            // Send email on user registration
            return _emailSenderService.SendEmailAsync(email);
        }