public IHttpActionResult AddReview(MReview review)
        {
            if (!ModelState.IsValid)
            {
                return(new InvalidModelStateResult(ModelState, this));
            }
            try
            {
                var isVerified = false;

                try
                {
                    var orders = _orderClient.GetAllCustomerOrders(UserHelper.CustomerSession.CustomerId,
                                                                   UserHelper.StoreClient.GetCurrentStore().StoreId);

                    if (orders != null)
                    {
                        isVerified = orders.ExpandAll().Where(o => o.Status.Contains("Completed"))
                                     .SelectMany(o => o.OrderForms)
                                     .SelectMany(of => of.LineItems)
                                     .Any(li => li.CatalogItemId == review.ItemId
                                          ||
                                          !string.IsNullOrEmpty(li.ParentCatalogItemId) &&
                                          li.ParentCatalogItemId == review.ItemId);
                    }
                }
                catch
                {
                    //not verified
                }

                var dbReviewreview = new Review
                {
                    AuthorId        = UserHelper.CustomerSession.CustomerId,
                    AuthorLocation  = review.Reviewer.Address,
                    AuthorName      = review.Reviewer.NickName,
                    ItemId          = review.ItemId,
                    ItemUrl         = review.ItemId,
                    OverallRating   = review.Rating,
                    Title           = review.RatingComment,
                    IsVerifiedBuyer = isVerified,
                    Status          = (int)ReviewStatus.Pending
                };

                dbReviewreview.ReviewFieldValues.Add(new ReviewFieldValue
                {
                    Name  = "Review",
                    Value = review.ReviewText.Text,
                    ReviewFieldValueId = Guid.NewGuid().ToString()
                });

                _repository.Add(dbReviewreview);
                _repository.UnitOfWork.Commit();
                return(Ok("ok"));
            }
            catch (Exception ex)
            {
                return(BadRequest("Error while saving data to database.".Localize() + " " + ex.Message));
            }
        }