コード例 #1
0
        public bool DeleteGenericAttribute(GenericAttributeViewModel model)
        {
            var genericAttribute = _dbContext.GenericAttribute.FirstOrDefault(x => x.KeyGroup == model.KeyGroup && x.EntityId == model.EntityId && x.Key == model.Key);

            _dbContext.GenericAttribute.Remove(genericAttribute);
            _dbContext.SaveChanges();

            return(true);
        }
コード例 #2
0
        public bool AddGenericAttribute(GenericAttributeViewModel model)
        {
            GenericAttribute genericAttribute = new GenericAttribute()
            {
                EntityId = model.EntityId,
                KeyGroup = model.KeyGroup,
                Key      = model.Key,
                Value    = model.Value
            };

            _dbContext.GenericAttribute.Add(genericAttribute);
            _dbContext.SaveChanges();
            return(true);
        }
コード例 #3
0
        public GenericAttributeViewModel GetGenericAttribute(GenericAttributeViewModel model)
        {
            GenericAttributeViewModel result = new GenericAttributeViewModel();
            var genericAttribute             = _dbContext.GenericAttribute.FirstOrDefault(x => x.KeyGroup == model.KeyGroup && x.EntityId == model.EntityId && x.Key == model.Key && x.Value == model.Value);

            if (genericAttribute != null)
            {
                return(new GenericAttributeViewModel()
                {
                    EntityId = model.EntityId,
                    KeyGroup = model.KeyGroup,
                    Key = model.Key,
                    Value = model.Value
                });
            }
            return(new GenericAttributeViewModel());
        }
コード例 #4
0
        public async Task <object> SendPasswordResetMail([FromBody] ForgotPasswordModel model)
        {
            var user = await _userManager.FindByEmailAsync(model.Email);

            if (user.Email != model.Email)
            {
                return(new ObjectResult(new
                {
                    resetToken = "",
                    Succeeded = false,
                    Error = "User does not exist"
                }));
            }
            var resetToken = await _userManager.GeneratePasswordResetTokenAsync(user);

            GenericAttributeViewModel genericAttributeViewModel = new GenericAttributeViewModel()
            {
                EntityId = user.Id,
                KeyGroup = "User",
                Key      = "PasswordToken",
                Value    = resetToken
            };
            bool          isSuccess       = _DbService.AddGenericAttribute(genericAttributeViewModel);
            var           urlEncodedToken = System.Net.WebUtility.UrlEncode(resetToken);
            StringBuilder body            = new StringBuilder("<p>Merhaba,</p>");

            body.Append("<p>");
            body.Append("<br>MedByte hesabının şifresini aşağıdaki linki kullanarak yenileyebilirsin.");
            body.Append("</p>");
            body.Append("<p>");
            body.Append($"<p><a href=\"http://localhost:5000/Account/ResetPassword?t={urlEncodedToken}\">Şifre yenileme sayfasına yönlendirilmek için tıklayın.</a> </p>");
            body.Append("</p>");
            body.Append("<p>Sevgiler, MadByte işe giriş projesi.</p>");
            body.Append("<p>");
            body.Append("<br>");
            body.Append("</p>");
            await _mailSender.SendEmailAsync("MedByte | Şifre Yenileme", model.Email, body.ToString());

            return(new ObjectResult(new
            {
                resetToken,
                Succeeded = true,
            }));
        }
コード例 #5
0
        public async Task <object> RefreshPassword([FromBody] RefreshPasswordModel model)
        {
            var user = await _userManager.FindByEmailAsync(model.Email);

            if (user == null)
            {
                return(new ObjectResult(new
                {
                    Succeeded = false,
                    Error = "User doesn't exist."
                }));
            }


            GenericAttributeViewModel genericAttributeViewModel = new GenericAttributeViewModel()
            {
                EntityId = user.Id,
                KeyGroup = "User",
                Key      = "PasswordToken",
                Value    = model.Code
            };
            GenericAttributeViewModel attributeViewModel = _DbService.GetGenericAttribute(genericAttributeViewModel);

            if (attributeViewModel != null)
            {
                var asd = await _userManager.RemovePasswordAsync(user);

                var dsa = await _userManager.AddPasswordAsync(user, model.Password);

                _DbService.DeleteGenericAttribute(attributeViewModel);

                return(new ObjectResult(new
                {
                    Succeeded = true
                }));
            }
            return(new ObjectResult(new
            {
                Succeeded = false,
                Error = ""
            }));
        }