private async Task <Guid> SaveAsync(Building model, List <Service> services)
        {
            foreach (var service in services)
            {
                model.Services.Add(service.Id);
            }

            await _repository.AddOneAsync <Building>(model);

            return(model.Id);
        }
        private async Task <bool> SaveToArchive(DocumentToSend documentToSend, byte[] bytesToSend, bool archivingSuccess, ParsedDocument result)
        {
            if (typesToArchive.Contains(result.DocumentType))
            {
                await repository.AddOneAsync(new DocumentToArchive()
                {
                    Data = bytesToSend
                });

                logger.Information($"File {documentToSend.FileName} was successfully archived");
                archivingSuccess = true;
            }

            return(archivingSuccess);
        }
        public async Task <IActionResult> Register(UserRegistration viewModel)
        {
            SetCaptchaErrors("Captcha");
            if (!viewModel.Terms)
            {
                ModelState.AddModelError("Terms", _localizer["The terms and conditions must be accepted"]);
            }

            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }
            if (_repository.GetById <UserModel, string>(viewModel.Email) != null)
            {
                ModelState.AddModelError("Email", _localizer["The email address already exists in our database"]);
            }
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            var encodingResult = _argonHash.Encoder(viewModel.Password, _hashingConfig.Value);


            // save user into db
            await _repository.AddOneAsync <UserModel, string>(new UserModel()
            {
                Id        = viewModel.Email,
                Password  = encodingResult.Hash,
                Salt      = encodingResult.Salt,
                CreatedAt = DateTime.Now,
                FirstName = viewModel.FirstName,
                LastName  = viewModel.LastName,
                State     = UserStatesEnum.NotConfirmed,
                Roles     = new List <string>()
                {
                    "admin"
                }
            });

            return(RedirectToAction("NewAccount", "Email", new { id = _protector.Protect(viewModel.Email) }));
        }
Esempio n. 4
0
        public async Task <Guid> SaveAsync(T model)
        {
            await _repository.AddOneAsync <T>(model);

            return(model.Id);
        }