Ejemplo n.º 1
0
        public ActionResult UpdateLineItem(WishListLineInputModel model)
        {
            try
            {
                Assert.ArgumentNotNull(model, "model");

                var validationResult = new BaseApiModel();
                this.ValidateModel(validationResult);
                if (validationResult.HasErrors)
                {
                    return(this.Json(validationResult, JsonRequestBehavior.AllowGet));
                }

                var response = this.WishListManager.UpdateWishListLine(this.StorefrontContext.Current, Context.User.Name, model);
                var result   = new WishListBaseApiModel(response.ServiceProviderResult);
                if (response.ServiceProviderResult.Success && response.Result != null)
                {
                    this.WishList(model.WishListId, result);
                }

                return(this.Json(result, JsonRequestBehavior.AllowGet));
            }
            catch (Sitecore.Commerce.OpenIDConnectionClosedUnexpectedlyException e)
            {
                this.CleanNotAuthorizedSession();
                return(this.Json(new ErrorApiModel("Login", e), JsonRequestBehavior.AllowGet));
            }
            catch (Exception e)
            {
                return(this.Json(new ErrorApiModel("UpdateLineItem", e), JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 2
0
        public JsonResult GetWishList(WishListInputModel model)
        {
            try
            {
                Assert.ArgumentNotNull(model, "model");

                var validationResult = new BaseApiModel();
                this.ValidateModel(validationResult);
                if (validationResult.HasErrors)
                {
                    return(this.Json(validationResult, JsonRequestBehavior.AllowGet));
                }

                var userResponse = this.AccountManager.GetUser(Context.User.Name);
                var result       = new WishListBaseApiModel(userResponse.ServiceProviderResult);
                if (userResponse.ServiceProviderResult.Success && userResponse.Result != null)
                {
                    this.WishList(model.ExternalId, result);
                }

                return(this.Json(result, JsonRequestBehavior.AllowGet));
            }
            catch (Sitecore.Commerce.OpenIDConnectionClosedUnexpectedlyException e)
            {
                this.CleanNotAuthorizedSession();
                return(this.Json(new ErrorApiModel("Login", e), JsonRequestBehavior.AllowGet));
            }
            catch (Exception e)
            {
                return(this.Json(new ErrorApiModel("GetWishList", e), JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// The wish list.
        /// </summary>
        /// <param name="wishListId">
        /// The wish list id.
        /// </param>
        /// <param name="result">
        /// The result.
        /// </param>
        private void WishList(string wishListId, WishListBaseApiModel result)
        {
            var response = this.WishListManager.GetWishList(this.StorefrontContext.Current, Context.User.Name, wishListId);
            var wishList = new WishList();

            if (response.ServiceProviderResult.Success && response.Result != null)
            {
                wishList = response.Result;
            }

            result.Initialize(wishList);
        }