public virtual async Task <IActionResult> ProductReviews(string productId) { var product = await _productService.GetProductById(productId); if (product == null || !product.Published || !product.AllowCustomerReviews) { return(RedirectToRoute("HomePage")); } var model = new ProductReviewsModel(); await _productViewModelService.PrepareProductReviewsModel(model, product); //only registered users can leave reviews if (_workContext.CurrentCustomer.IsGuest() && !_catalogSettings.AllowAnonymousUsersToReviewProduct) { ModelState.AddModelError("", _localizationService.GetResource("Reviews.OnlyRegisteredUsersCanWriteReviews")); } //default value model.AddProductReview.Rating = _catalogSettings.DefaultProductRatingValue; return(View(model)); }
public async Task <IViewComponentResult> InvokeAsync(string productId) { var product = await _productService.GetProductById(productId); if (product == null || !product.Published || !product.AllowCustomerReviews) { return(Content("")); } var model = new ProductReviewsModel(); await _productViewModelService.PrepareProductReviewsModel(model, product, _catalogSettings.NumberOfReview); return(View(model)); }