Esempio n. 1
0
        public ActionResult List()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(RedirectToAction("AccessDenied", "Security", new { pageUrl = Microsoft.AspNetCore.Http.Extensions.UriHelper.GetDisplayUrl(Request) }));
            }

            var model = new ProductCommentListModel();

            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.All"), Value = "0"
            });
            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.ApprovedOnly"), Value = "1"
            });
            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.NotApprovedOnly"), Value = "2"
            });

            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.All"), Value = "0"
            });
            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.VisitedOnly"), Value = "1"
            });
            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.NotVisitedOnly"), Value = "2"
            });

            return(View("~/Plugins/Resanehlab.ProductComments/Views/Admin/List.cshtml", model));
        }
Esempio n. 2
0
        public ActionResult List()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(new HttpUnauthorizedResult());
            }

            var model = new ProductCommentListModel();

            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.All"), Value = "0"
            });
            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.ApprovedOnly"), Value = "1"
            });
            model.AvailableApprovedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchIsApproved.NotApprovedOnly"), Value = "2"
            });

            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.All"), Value = "0"
            });
            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.VisitedOnly"), Value = "1"
            });
            model.AvailableVisitedOptions.Add(new SelectListItem {
                Text = _localizationService.GetResource("Admin.Plugin.ResanehlabProductComments.List.SearchVisited.NotVisitedOnly"), Value = "2"
            });

            return(View("~/Plugins/Resanehlab.ProductComments/Views/Admin/List.cshtml", model));
        }
Esempio n. 3
0
        public ActionResult ProductCommentList(DataSourceRequest command, ProductCommentListModel model)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(RedirectToAction("AccessDenied", "Security", new { pageUrl = Microsoft.AspNetCore.Http.Extensions.UriHelper.GetDisplayUrl(Request) }));
            }

            bool?overrideIsApproved = null;

            if (model.SearchIsApprovedId == 1)
            {
                overrideIsApproved = true;
            }
            else if (model.SearchIsApprovedId == 2)
            {
                overrideIsApproved = false;
            }

            bool?overrideVisited = null;

            if (model.SearchVisitedId == 1)
            {
                overrideVisited = true;
            }
            else if (model.SearchVisitedId == 2)
            {
                overrideVisited = false;
            }

            var comments = _productCommentService.GetAllProductComments(isApproved: overrideIsApproved,
                                                                        visited: overrideVisited,
                                                                        storeId: _storeContext.CurrentStore.Id,
                                                                        commentText: model.SearchCommentText,
                                                                        productName: model.SearchProductName,
                                                                        pageIndex: command.Page - 1,
                                                                        pageSize: command.PageSize);

            var gridModel = new DataSourceResult();

            gridModel.Data = comments.Select(x =>
            {
                var p = _productService.GetProductById(x.ProductId);
                var productCommentModel = new ProductCommentModel()
                {
                    Id            = x.Id,
                    CommentText   = x.CommentText,
                    CreatedOnStr  = _dateTimeHelper.ConvertToUserTime(x.CreatedOnUtc, DateTimeKind.Utc).ToString("g"),
                    IsApproved    = x.IsApproved,
                    ReplyText     = x.ReplyText,
                    Visited       = x.Visited,
                    ProductName   = p.GetLocalized(t => t.Name),
                    ProductSeName = p.GetSeName()
                };
                return(productCommentModel);
            });
            gridModel.Total = comments.TotalCount;

            return(Json(gridModel));
        }