Пример #1
0
        private IEnumerator FetchProducts(GameObject obj)
        {
            List <Product> pt = new List <Product>();

            yield return(new WaitForEndOfFrame());

            ShopifyHelper.FetchProducts(
                delegate(List <Product> products, string cursor)
            {
                foreach (var product in products)
                {
                    //;
                    //
                }

                pt = products;

                for (int i = 0; i < pt.Count; i++)
                {
                    GameObject GG = obj;
                    AddProduct(pt[i], GG);
                }

                Debug.Log("Termino");

                _after        = cursor;
                _hitEndCursor = _after == null;
            },
                delegate
            {
                OnNetworkError.Invoke();
            },
                _after
                );
        }
Пример #2
0
    public List<ParcelItem> GetShopifyTransactions(int UserCode)
    {
        ShopifyHelper shopify = new ShopifyHelper(UserCode);

        List<ParcelItem> allShopifyItems = new List<ParcelItem>();

        foreach (int userAccountCode in shopify.UserAccountCodes)
        {
            List<ParcelItem> shopifyOders = new ShopifyHelper(UserCode).GetPendingOrders(UserCode, userAccountCode);
            if (shopifyOders != null)
                allShopifyItems.AddRange(shopifyOders);
        }
        return allShopifyItems;
    }
Пример #3
0
    private void Start()
    {
        Tags.useTag = false;
        // Begin by initializing ShopifyHelper, to make connection to shop
        ShopifyHelper.Init(AccessToken, ShopDomain);
        // With initialization complete, initial products panel
        ProductsPanel.Init();

        // Setup event listeners for panels

        // Handle transition to specific product
        ProductsPanel.OnShowProduct.AddListener(product => {
            ShowPanel(ProductPanel.gameObject);
            ProductPanel.SetCurrentProduct(product);
        });

        // Handle event from click of the close pop up button
        ProductsPanel.OnClosePanel.AddListener(HidePopup);

        ProductsPanel.OnNetworkError.AddListener(() => RenderError("Could not find products."));

        // Handle transition back to products list from product view
        ProductPanel.OnReturnToProducts.AddListener(() => ShowPanel(ProductsPanel.gameObject));
        // Handle transition to the cart view
        ProductPanel.OnViewCart.AddListener(() => ShowPanel(CartPanel.gameObject));
        // Handles click of the add to cart button, which transitions to the cart view
        ProductPanel.OnAddProductToCart.AddListener(CartPanel.AddToCart);

        // Handle transition back to products list from cart view
        CartPanel.OnReturnToProducts.AddListener(() => ShowPanel(ProductsPanel.gameObject));
        // Handles a change in cart quanity, in order to update the cart quantity indicators
        CartPanel.OnCartQuantityChanged.AddListener(UpdateCartQuantity);
        // Handles a successful checkout, by hiding the shop pop up
        CartPanel.OnCheckoutSuccess.AddListener(HidePopup);
        // Handles a failed checkout by displaying the error
        CartPanel.OnCheckoutFailure.AddListener(RenderError);

        // Handle transition back to products list from empty cart view
        EmptyCartPanel.OnReturnToProducts.AddListener(() => ShowPanel(ProductsPanel.gameObject));

        // Handle transition to cart view, when view cart button is clicked
        ViewCartButton.OnClick.AddListener(() => ShowPanel(CartPanel.gameObject));
        // Handle click on empty view cart button, by transitioning to empty cart view
        EmptyViewCartButton.onClick.AddListener(() => ShowPanel(EmptyCartPanel.gameObject));

        AnimationCanvas.OnAnimationStarted.AddListener(() => ProductsPanel.PauseFetching());
        AnimationCanvas.OnAnimationStopped.AddListener(() => ProductsPanel.ResumeFetching());
    }
Пример #4
0
        public void AddToCart(Product product, ProductVariant variant)
        {
            if (_cart == null)
            {
                _cart = ShopifyHelper.CreateCart();
            }

            // Handle adding a particular variant to the cart
            // For more information on adding variants to the cart visit
            // https://help.shopify.com/api/sdks/custom-storefront/unity-buy-sdk/getting-started#create-cart-line-items-based-on-selected-options

            var existingLineItem = _cart.LineItems.Get(variant);

            if (existingLineItem == null)
            {
                _cart.LineItems.AddOrUpdate(variant);

                var instance = Instantiate(CartPanelLineItemTemplate);
                instance.transform.SetParent(Content, false);
                instance.SetCurrentProduct(product, variant, 1);

                instance.OnVariantLineItemQuantityAdjustment.AddListener(HandleVariantLineItemQuantityAdjustment);

                _idCartPanelLineItemMapping.Add(variant.id(), instance);
                _lineItems.Add(instance);
            }
            else
            {
                _cart.LineItems.AddOrUpdate(variant, existingLineItem.Quantity + 1);

                var cartPanelLineItem = _idCartPanelLineItemMapping[variant.id()];
                cartPanelLineItem.Quantity.text = existingLineItem.Quantity.ToString();
            }

            if (!_idVariantMapping.ContainsKey(variant.id()))
            {
                _idVariantMapping.Add(variant.id(), variant);
            }

            if (!_idProductMapping.ContainsKey(variant.id()))
            {
                _idProductMapping.Add(variant.id(), product);
            }

            DispatchCartQuantityChanged();
            UpdateSeparatorVisibility();
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        string shopName = Request.QueryString["inputShopName"];
        // check if 'code' is already in the url , i.e. returning after auth phase 1
        if (Request["code"] != null)
        {
            string token = new ShopifyHelper(UserKey).ExchangeToken(Request["code"], shopName);
            hfToken.Value = token;

            SaveToken(token, shopName);
        }
        else
        {
            string authURL = new ShopifyHelper(UserKey).GetAuthURL(shopName, Request.Url.AbsoluteUri);
            Response.Redirect(authURL);
        }
    }
Пример #6
0
        public void AddToCart(Product product, ProductVariant variant)
        {
            if (_cart == null)
            {
                _cart = ShopifyHelper.CreateCart();
            }

            var existingLineItem = _cart.LineItems.Get(variant);

            if (existingLineItem == null)
            {
                _cart.LineItems.AddOrUpdate(variant);
                var instance = Instantiate(HatCartPanelItem);
                instance.transform.SetParent(Content, false);
                instance.SetCurrentProduct(product, variant, 1);
                instance.OnVariantLineItemQuantityAdjustment.AddListener(HandleVariantLineItemQuantityAdjustment);
                _idCartPanelLineItemMapping.Add(variant.id(), instance);
                _lineItems.Add(instance);
            }
            else
            {
                _cart.LineItems.AddOrUpdate(variant, existingLineItem.Quantity + 1);

                var cartPanelLineItem = _idCartPanelLineItemMapping[variant.id()];
                cartPanelLineItem.Quantity.text = existingLineItem.Quantity.ToString();
            }
            if (!_idVariantMapping.ContainsKey(variant.id()))
            {
                _idVariantMapping.Add(variant.id(), variant);
            }

            if (!_idProductMapping.ContainsKey(variant.id()))
            {
                _idProductMapping.Add(variant.id(), product);
            }

            DispatchCartQuantityChanged();
            // UpdateSeparatorVisibility();
        }
Пример #7
0
        private void FetchProducts()
        {
            if (!_fetchEnabled)
            {
                return;
            }

            ShopifyHelper.FetchProducts(
                delegate(List <Product> products, string cursor) {
                foreach (var product in products)
                {
                    // For each of the products received, add them to the products panel
                    AddProduct(product);
                }
                _after        = cursor;
                _hitEndCursor = _after == null;
            },
                delegate {
                OnNetworkError.Invoke();
            },
                _after
                );
        }
        public void Start()
        {
            Tags.SetTag(true, "Fedora");

            if (!Permission.HasUserAuthorizedPermission(Permission.Camera))
            {
                Permission.RequestUserPermission(Permission.Camera);
            }


            OnShoopingCartPanelAR += ShoopingCartPanelAR;
            OnBackAR += BackAR;

            ShopifyHelper.Init(AccessToken, ShopDomain);

            GalleryPanel.Init();

            Application.targetFrameRate = 60;

            GalleryPanel.OnShowProduct.AddListener(product =>
            {
                InformationPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(0, speedMovementPanel);
                // ShowPanel(ProductPanel.gameObject);
                InformationPanel.SetCurrentProduct(product);
            });

            HatSlidingContentAR.OnShowProduct.AddListener(p =>
            {
                InformationPanel.SetCurrentProduct(p);
            });

            InformationPanel.OnReturnToProducts.AddListener(() =>
            {
                InformationPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(719, speedMovementPanel);
            });

            InformationPanel.OnViewCart.AddListener(() =>
            {
                HatCartPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(0, speedMovementPanel);
            });

            InformationPanel.OnTryProduct.AddListener(() =>
            {
                InformationPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(719, speedMovementPanel);
                GalleryPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(719, speedMovementPanel).OnComplete(() =>
                {
                    if (loadSceneAR == false)
                    {
                        UnityEngine.SceneManagement.SceneManager.LoadScene(2);
                        loadSceneAR = true;
                    }
                });
            });

            HatCartPanel.OnReturnToProducts.AddListener(() =>
            {
                HatCartPanel.gameObject.GetComponent <RectTransform>().DOLocalMoveX(-719, speedMovementPanel);
            });

            InformationPanel.OnAddProductToCart.AddListener(HatCartPanel.AddToCart);
            //  GalleryPanel.OnNetworkError.AddListener(() => RenderError("Could not find products."));
        }