Пример #1
0
        public ActionResult Add(Review model, HttpPostedFileBase image)
        {
            var validator = new ReviewValidator(_unitOfWork).Validate(model);

            if (validator.IsValid)
            {
                if (image != null)
                {
                    Image img = Image.FromStream(image.InputStream);

                    string name = Guid.NewGuid() + Path.GetExtension(image.FileName);

                    string smPath = "/content/site/style/images/reviewimg/sm/" + name;
                    string mdPath = "/content/site/style/images/reviewimg/md/" + name;
                    string lgPath = "/content/site/style/images/reviewimg/lg/" + name;

                    Bitmap smImage = new Bitmap(img, MySettings.SmallPicSize);
                    Bitmap mdImage = new Bitmap(img, MySettings.MediumPicSize);
                    Bitmap lgImage = new Bitmap(img, MySettings.LargePicSize);


                    smImage.Save(Server.MapPath(smPath));
                    mdImage.Save(Server.MapPath(mdPath));
                    lgImage.Save(Server.MapPath(lgPath));

                    Picture pic = new Picture();
                    pic.SmPic = smPath;
                    pic.MdPic = mdPath;
                    pic.LgPic = lgPath;



                    _unitOfWork.GetRepo <Picture>().Add(pic);
                    _unitOfWork.Commit();

                    model.PictureId = pic.Id;
                    _unitOfWork.GetRepo <Review>().Add(model);

                    bool IsSuccess = _unitOfWork.Commit();
                    if (IsSuccess)
                    {
                        return(RedirectToAction("list"));
                    }
                    else
                    {
                        ViewBag.IsSuccess = IsSuccess;
                        ViewBag.Message   = "tekrar deneyin";
                        return(View());
                    }
                }
            }


            validator.Errors.ToList().ForEach(a =>
            {
                ModelState.AddModelError(a.PropertyName, a.ErrorMessage);
            });

            return(View());
        }
Пример #2
0
        private void ValidateReview(Review review)
        {
            var issues = ReviewValidator.GetValidationIssues(review);

            if (!issues.Any())
            {
                return;
            }

            var message = new StringBuilder();

            message.AppendLine("There were validation issues with the review.");
            foreach (var issue in issues)
            {
                message.AppendLine(issue);
            }
            throw new ApplicationException(message.ToString());
        }
        public IActionResult SaveComment(int id, ReviewFormModel formModel)
        {
            try
            {
                var product = _productService.GetProduct(id);

                if (product == null)
                {
                    TempData["InfoMessage"] = AppStrings.ProductNotFoundMessage;
                    return(RedirectToAction(nameof(Index)));
                }

                var _validator = new ReviewValidator();
                var results    = _validator.Validate(formModel);

                if (results.Errors.Any())
                {
                    foreach (var error in results.Errors)
                    {
                        ModelState.AddModelError(error.PropertyName, error.ErrorMessage);
                    }
                }

                if (ModelState.IsValid)
                {
                    _productService.SaveReview(_mapper.Map <ProductReview>(formModel));

                    TempData["SuccessMessage"] = AppStrings.ReviewEditSuccessMsg;
                    return(RedirectToAction(nameof(Details), new { id }));
                }

                formModel.Product = _mapper.Map <ProductViewModel>(product);
                return(View("ReviewForm", formModel));
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex.Message);
                TempData["ErrorMessage"] = AppStrings.GenericErrorMsg;

                return(RedirectToAction(nameof(Details), new { id }));
            }
        }
        public async Task <IActionResult> Put([FromBody] RatingandReviewDetails ratingandReviewDetails)
        {
            int              UserId                = (Request.Headers.ContainsKey("CustomerId") ? int.Parse(HttpContext.Request.Headers["CustomerId"]) : 0);
            string           UserToken             = (Request.Headers.ContainsKey("AuthToken") ? Convert.ToString(HttpContext.Request.Headers["AuthToken"]) : "");
            ReviewValidator  reviewEntityValidator = new ReviewValidator(UserId, UserToken, business_Repo);
            ValidationResult validationResult      = reviewEntityValidator.Validate(ratingandReviewDetails);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.ToString(";")));
            }
            else
            {
                var result = await Task <bool> .Run(() => business_Repo.UpdateRatingandReviews(ratingandReviewDetails));

                if (result.Equals("false"))
                {
                    return(this.BadRequest("Failed to update , please try again later"));
                }
            }
            return(this.Ok("Updated"));
        }
Пример #5
0
        public ActionResult Edit(Review guncel, HttpPostedFileBase image)
        {
            var validator = new ReviewValidator(_unitOfWork).Validate(guncel);

            if (validator.IsValid)
            {
                var model = _unitOfWork.GetRepo <Review>().GetObject(x => x.Id == guncel.Id);

                model.Title   = guncel.Title;
                model.Content = guncel.Content;
                model.GenreId = guncel.GenreId;


                _unitOfWork.GetRepo <Review>().Update(model);

                bool IsSuccess = _unitOfWork.Commit();
                if (IsSuccess)
                {
                    return(RedirectToAction("list"));
                }
                else
                {
                    ViewBag.IsSuccess = IsSuccess;
                    ViewBag.Message   = "tekrar deneyin";
                    return(View());
                }
            }


            validator.Errors.ToList().ForEach(a =>
            {
                ModelState.AddModelError(a.PropertyName, a.ErrorMessage);
            });

            return(View());
        }
Пример #6
0
 public EfAddReview(MovieReviewContext context, IMapper mapper, ReviewValidator validator)
 {
     this.context   = context;
     this.mapper    = mapper;
     this.validator = validator;
 }
Пример #7
0
 public void Setup()
 {
     _sut = new ReviewValidator();
 }