// GET: Reviews/Delete/5 //[AuthorizeOrRedirectAttribute(Roles = "Admin,Moderator")] public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Review review = db.Reviews.Find(id); if (User.IsInRole("Admin") || User.IsInRole("Moderator")) { ; } else if (User.Identity.GetUserName() == review.ReviewerName) { ; } else { return(RedirectToAction("AccessDenied", "Error")); } ReviewListViewModel reviewListViewModel = BuildReviewListViewModel(review); if (review == null) { return(HttpNotFound()); } return(View(reviewListViewModel)); }
public ActionResult List(string controller, int id) { List <Review> reviews = null; if (controller == "Food") { reviews = _reviewRepository.GetAll().Where(f => f.FoodId == id).ToList(); } else if (controller == "Restaurant") { reviews = _reviewRepository.GetAll().Where(r => r.RestaurantId == id).ToList(); } var reviewListViewModels = new List <ReviewListViewModel>(); var config = new MapperConfiguration(cfg => cfg.CreateMap <Review, ReviewListViewModel>()); var mapper = config.CreateMapper(); if (reviews != null) { foreach (Review review in reviews) { ReviewListViewModel reviewListViewModel = mapper.Map <ReviewListViewModel>(review); reviewListViewModels.Add(reviewListViewModel); Foodie foodie = _foodieRepository.Get(reviewListViewModel.UserId); reviewListViewModel.UserName = foodie.FirstName + foodie.LastName; } } return(PartialView(reviewListViewModels)); }
// GET: Guest public ActionResult Index() { var reviews = unitOfWork.Reviews.FindAll(); ReviewListViewModel model = new ReviewListViewModel(); model.Reviews = reviews; return(View(model)); }
public IViewComponentResult Invoke() { var latestReviews = new ReviewListViewModel() { Reviews = this.reviewsService.GetLatestFiveReviews <ReviewInListViewModel>(), }; return(this.View(latestReviews)); }
public ReviewListViewModelTests() { _reviewRepositoryMock = new Mock <IReviewRepository>(); _mediatorMock = new Mock <Mediator> { CallBase = true }; _reviewRepositoryMock.Setup(repository => repository.GetAll()) .Returns(() => new List <ReviewListModel>()); _reviewListViewModelSUT = new ReviewListViewModel(_reviewRepositoryMock.Object, _mediatorMock.Object); }
public IActionResult AllReviews(int id = 1) { const int ItemsPerPage = 10; var model = new ReviewListViewModel() { PageNumber = id, ItemsPerPage = ItemsPerPage, Reviews = this.reviewsService.GetAllReviews<ReviewInListViewModel>(id, ItemsPerPage), ItemsCount = this.reviewsService.GetCount(), ActionName = nameof(this.AllReviews), }; return this.View(model); }
// GET: Reviews/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Review review = db.Reviews.Find(id); ReviewListViewModel reviewListViewModel = BuildReviewListViewModel(review); if (review == null) { return(HttpNotFound()); } return(View(reviewListViewModel)); }
private ReviewListViewModel BuildReviewListViewModel(Review review) { //var chosenGame = db.Games.Where(g => g.Id == review.GameId); var gameNames = db.Games.ToDictionary(g => g.Id, g => g.Name); ReviewListViewModel model = new ReviewListViewModel(); model.ID = review.Id; model.ReviewerName = review.ReviewerName; model.Content = review.Content; model.GameId = review.GameId; model.GameName = gameNames[review.GameId]; //model.GameName = chosenGame.First().Name; model.NumRating = review.NumRating; return(model); }
/* Function that adds a user review to the database */ public void AddReviewToDB(ReviewListViewModel NewReview) { // An instance of Review (entity model) is made from the ReviewListModel in the parameters var newReview = new Review() { BookId = NewReview.BookId, AccountId = NewReview.AccountId, Comment = NewReview.Comment, Rating = NewReview.Rating }; // The instance is added to the database _db.Add(newReview); _db.SaveChanges(); return; }
public async Task <IActionResult> Details(ReviewListViewModel review, int id) { // If the review is valid if (ModelState.IsValid) { var user = await _userManager.GetUserAsync(User); var userId = user.Id; // A new instance of ReviewListViewModel that holds the info from the parameter is made var newReview = new ReviewListViewModel() { BookId = id, AccountId = user.Id, Comment = review.Comment, Rating = review.Rating }; // The instance is added to the database through the sevice layer _reviewService.AddReviewToDB(newReview); return(RedirectToAction("Details", "Book", new { id = id })); } return(RedirectToAction("Details", "Book", new { id = id })); }
// Void function that adds a review to the database from the repository layer public void AddReviewToDB(ReviewListViewModel NewReview) { _reviewRepo.AddReviewToDB(NewReview); return; }