protected void PrepareProductReviewModel(ProductReviewModel model, ProductReview productReview, bool excludeProperties, bool formatReviewText) { if (model == null) throw new ArgumentNullException("model"); if (productReview == null) throw new ArgumentNullException("productReview"); model.Id = productReview.Id; model.ProductId = productReview.ProductId; model.ProductName = productReview.Product.Name; model.CustomerId = productReview.CustomerId; var customer = productReview.Customer; model.CustomerInfo = customer.IsRegistered() ? customer.Email : _localizationService.GetResource("Admin.Customers.Guest"); model.Rating = productReview.Rating; model.CreatedOn = _dateTimeHelper.ConvertToUserTime(productReview.CreatedOnUtc, DateTimeKind.Utc); if (!excludeProperties) { model.Title = productReview.Title; if (formatReviewText) model.ReviewText = Core.Html.HtmlHelper.FormatText(productReview.ReviewText, false, true, false, false, false, false); else model.ReviewText = productReview.ReviewText; model.IsApproved = productReview.IsApproved; } }
public ActionResult Edit(ProductReviewModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProductReviews)) return AccessDeniedView(); var productReview = _productService.GetProductReviewById(model.Id); if (productReview == null) //No product review found with the specified id return RedirectToAction("List"); if (ModelState.IsValid) { productReview.Title = model.Title; productReview.ReviewText = model.ReviewText; productReview.IsApproved = model.IsApproved; _productService.UpdateProduct(productReview.Product); //update product totals _productService.UpdateProductReviewTotals(productReview.Product); SuccessNotification(_localizationService.GetResource("Admin.Catalog.ProductReviews.Updated")); return continueEditing ? RedirectToAction("Edit", productReview.Id) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form PrepareProductReviewModel(model, productReview, true, false); return View(model); }
public ActionResult List(GridCommand command, ProductReviewListModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProductReviews)) return AccessDeniedView(); DateTime? createdOnFromValue = (model.CreatedOnFrom == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.CreatedOnFrom.Value, _dateTimeHelper.CurrentTimeZone); DateTime? createdToFromValue = (model.CreatedOnTo == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.CreatedOnTo.Value, _dateTimeHelper.CurrentTimeZone).AddDays(1); var productReviews = _productService.GetAllProductReviews(0, null, createdOnFromValue, createdToFromValue); var gridModel = new GridModel<ProductReviewModel> { Data = productReviews.PagedForCommand(command).Select(x => { var m = new ProductReviewModel(); PrepareProductReviewModel(m, x, false, true); return m; }), Total = productReviews.Count, }; return new JsonResult { Data = gridModel }; }
//edit public ActionResult Edit(int id) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProductReviews)) return AccessDeniedView(); var productReview = _productService.GetProductReviewById(id); if (productReview == null) //No product review found with the specified id return RedirectToAction("List"); var model = new ProductReviewModel(); PrepareProductReviewModel(model, productReview, false, false); return View(model); }