Example #1
0
        public void CanAddReview(int categoryId,
                                 string reviewTitle,
                                 string reviewBody,
                                 decimal rating,
                                 int day, int month, int year,
                                 int upVotes,
                                 int downVotes,
                                 bool isApproved,
                                 bool success)
        {
            DateTime dateCreated   = new DateTime(year, month, day);
            DateTime datePublished = new DateTime(year, month, day);

            Reviews review = new Reviews();

            {
                review.CategoryId    = categoryId;
                review.ReviewTitle   = reviewTitle;
                review.ReviewBody    = reviewBody;
                review.Rating        = rating;
                review.DateCreated   = dateCreated;
                review.DatePublished = datePublished;
                review.UpVotes       = upVotes;
                review.DownVotes     = downVotes;
                review.IsApproved    = isApproved;
            };

            TResponse <Reviews> response = manager.AddReview(review);

            TResponse <List <Reviews> > allReviews = manager.GetAllReviews();

            Assert.AreEqual(true, response.Success); // returns a successful response
            //Assert.AreEqual(4, allReviews);
            //Assert.AreEqual("The Animal with Rob Schnieder is not about Animals", allReviews.Payload[3].ReviewTitle);
        }
        public ActionResult AddReview(ReviewVM newReview)
        {
            _tagsManager     = TagsManagerFactory.Create();
            _reviewManager   = ReviewManagerFactory.Create();
            _categoryManager = CategoryManagerFactory.Create();

            if (ModelState.IsValid)
            {
                try
                {
                    if (User.IsInRole("Admin"))
                    {
                        newReview.Review.IsApproved = true;
                        newReview.Review.UserId     = User.Identity.GetUserId();
                    }

                    //set dates
                    newReview.Review.DateCreated = DateTime.Now;

                    //send review to manager
                    _reviewManager.AddReview(newReview.Review);

                    if (newReview.NewTags != null)
                    {
                        //create array of tags from tags input
                        string[] tags = newReview.NewTags.Split(',');

                        //send tags to tag manager
                        TResponse <List <Tags> > tagList = _tagsManager.AddListOfTags(tags);

                        //add tags to review
                        _reviewManager.AddTagsToReview(newReview.Review.ReviewId, tagList.Payload);
                    }

                    return(RedirectToAction("Reviews"));
                }
                catch (Exception ex)
                {
                    throw new ApplicationException("Something wrong happened while adding a review:", ex);
                }
            }
            else
            {
                //reset view
                TResponse <List <Categories> > response = _categoryManager.GetCategoryList();
                newReview.SetCategoryListItems(response.Payload);
                return(View(newReview));
            }
        }
Example #3
0
        public TransactionObject CreateReview(int ID, string review, int userID, string vote = "upvote")
        {
            TransactionObject response          = new TransactionObject();
            Connection        currentConnection = connectionManager.GetConnection(ID);
            User user = userManager.GetUser(userID);

            Review newReview = new Review();

            newReview.Connection = currentConnection;
            newReview.Message    = review;
            newReview.Sender     = user;

            if (vote == "downvote")
            {
                newReview.Vote = Vote.DownVote;
            }
            else
            {
                newReview.Vote = Vote.Upvote;
            }

            currentConnection.Reviews.Add(newReview);

            reviewManager.AddReview(newReview);

            try
            {
                uow.Save();
                response.IsSuccess = true;
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.Explanation = base.GetExceptionMessage(ex);
            }
            return(response);
        }
        public ActionResult AddReview(Review review)
        {
            AccessToken accessToken = ((AccessToken)Session["AccessToken"]);

            Rental rental = rentalManager.GetRentalByCustomerID(accessToken.User.CustomerID, review.ISBN);

            review.RentalID = rental.RentalID;

            if (ModelState.IsValid)
            {
                if (reviewManager.CheckReview(accessToken.User.CustomerID, review.ISBN))
                {
                    reviewManager.EditReview(review);
                }
                else
                {
                    reviewManager.AddReview(review);
                }

                return(RedirectToAction("Reviews", "Reviews", new { review.ISBN }));
            }

            return(View());
        }
Example #5
0
        public void AddReview(Review review)
        {
            var reviewManager = new ReviewManager();

            reviewManager.AddReview(review);
        }