public ActionResult Posts(int customerProfileId, int page) { var customer = _customerService.GetCustomerById(customerProfileId); if (customer == null) { return RedirectToRoute("HomePage"); } if (page > 0) { page -= 1; } var pageSize = _forumSettings.LatestCustomerPostsPageSize; var list = _forumService.GetAllPosts(0, customer.Id, string.Empty, false, page, pageSize); var latestPosts = new List<PostsModel>(); foreach (var forumPost in list) { var posted = string.Empty; if (_forumSettings.RelativeDateTimeFormattingEnabled) { posted = forumPost.CreatedOnUtc.RelativeFormat(true, "f"); } else { posted = _dateTimeHelper.ConvertToUserTime(forumPost.CreatedOnUtc, DateTimeKind.Utc).ToString("f"); } latestPosts.Add(new PostsModel { ForumTopicId = forumPost.TopicId, ForumTopicTitle = forumPost.ForumTopic.Subject, ForumTopicSlug = forumPost.ForumTopic.GetSeName(), ForumPostText = forumPost.FormatPostText(), Posted = posted }); } var pagerModel = new PagerModel { PageSize = list.PageSize, TotalRecords = list.TotalCount, PageIndex = list.PageIndex, ShowTotalSummary = false, RouteActionName = "CustomerProfilePaged", UseRouteLinks = true, RouteValues = new RouteValues { page = page, id = customerProfileId } }; var model = new ProfilePostsModel { PagerModel = pagerModel, Posts = latestPosts, }; return PartialView(model); }
public ActionResult CustomerProductReviews(int? page) { if (_workContext.CurrentCustomer.IsGuest()) return new HttpUnauthorizedResult(); if (!_catalogSettings.ShowProductReviewsTabOnAccountPage) { return RedirectToRoute("CustomerInfo"); } var pageSize = _catalogSettings.ProductReviewsPageSizeOnAccountPage; int pageIndex = 0; if (page > 0) { pageIndex = page.Value - 1; } var list = _productService.GetAllProductReviews(_workContext.CurrentCustomer.Id, null, pageIndex: pageIndex, pageSize: pageSize); var productReviews = new List<CustomerProductReviewModel>(); foreach (var review in list) { var product = review.Product; var productReviewModel = new CustomerProductReviewModel { Title = review.Title, ProductId = product.Id, ProductName = product.GetLocalized(p => p.Name), ProductSeName = product.GetSeName(), Rating = review.Rating, ReviewText = review.ReviewText, WrittenOnStr = _dateTimeHelper.ConvertToUserTime(product.CreatedOnUtc, DateTimeKind.Utc).ToString("g") }; if (_catalogSettings.ProductReviewsMustBeApproved) { productReviewModel.ApprovalStatus = review.IsApproved ? _localizationService.GetResource("Account.CustomerProductReviews.ApprovalStatus.Approved") : _localizationService.GetResource("Account.CustomerProductReviews.ApprovalStatus.Pending"); } productReviews.Add(productReviewModel); } var pagerModel = new PagerModel { PageSize = list.PageSize, TotalRecords = list.TotalCount, PageIndex = list.PageIndex, ShowTotalSummary = false, RouteActionName = "CustomerProductReviewsPaged", UseRouteLinks = true, RouteValues = new CustomerProductReviewsModel.CustomerProductReviewsRouteValues { page = pageIndex } }; var model = new CustomerProductReviewsModel { ProductReviews = productReviews, PagerModel = pagerModel }; return View(model); }
public ActionResult SentItems(int page, string tab) { if (page > 0) { page -= 1; } var pageSize = _forumSettings.PrivateMessagesPageSize; var list = _forumService.GetAllPrivateMessages(_workContext.CurrentCustomer.Id, 0, null, false, null, string.Empty, page, pageSize); var sentItems = new List<PrivateMessageModel>(); foreach (var pm in list) { sentItems.Add(new PrivateMessageModel() { Id = pm.Id, FromCustomerId = pm.FromCustomer.Id, CustomerFromName = pm.FromCustomer.FormatUserName(), AllowViewingFromProfile = _customerSettings.AllowViewingProfiles && pm.FromCustomer != null && !pm.FromCustomer.IsGuest(), ToCustomerId = pm.ToCustomer.Id, CustomerToName = pm.ToCustomer.FormatUserName(), AllowViewingToProfile = _customerSettings.AllowViewingProfiles && pm.ToCustomer != null && !pm.ToCustomer.IsGuest(), Subject = pm.Subject, Message = pm.Text, CreatedOn = _dateTimeHelper.ConvertToUserTime(pm.CreatedOnUtc, DateTimeKind.Utc), IsRead = pm.IsRead, }); } var pagerModel = new PagerModel() { PageSize = list.PageSize, TotalRecords = list.TotalCount, PageIndex = list.PageIndex, ShowTotalSummary = false, RouteActionName = "PrivateMessagesPaged", UseRouteLinks = true, RouteValues = new PrivateMessageRouteValues { page = page, tab = tab } }; var model = new PrivateMessageListModel() { Messages = sentItems, PagerModel = pagerModel }; return PartialView(model); }
public ActionResult Inbox(int page, string tab) { if (page > 0) { page -= 1; } var pageSize = _forumSettings.PrivateMessagesPageSize; var list = _forumService.GetAllPrivateMessages(0, _workContext.CurrentCustomer.Id, null, null, false, string.Empty, page, pageSize); var inbox = new List<PrivateMessageModel>(); foreach (var pm in list) { inbox.Add(new PrivateMessageModel() { customerFromName = pm.FromCustomer.FormatUserName(), customerToName = pm.ToCustomer.FormatUserName(), Subject = pm.Subject, Message = pm.Text, CreatedOnUtc = pm.CreatedOnUtc, Id = pm.Id, IsRead = pm.IsRead, }); } var pagerModel = new PagerModel() { PageSize = list.PageSize, TotalRecords = list.TotalCount, PageIndex = list.PageIndex, ShowTotalSummary = false, RouteActionName = "PrivateMessagesPaged", UseRouteLinks = true, RouteValues = new PrivateMessageRouteValues { page = page, tab = tab } }; var model = new PrivateMessageListModel() { Messages = inbox, PagerModel = pagerModel }; return PartialView(model); }