public ActionResult Index(StartPage currentPage, string selectedMarket)
        {
            TempData["IsOnLine"] = CheckIfOnLine.IsInternetAvailable; // not the best way... improve this

            if (selectedMarket != null)
            {
                _currentMarketService.SetCurrentMarket(new MarketId(selectedMarket)); // outcommented in Adv.-starter
            }

            // just testing
            //Buy(currentPage);
            //CheckOnParentAndNode();
            //CheckInventory(); // native
            //CheckInventory2(); // AdjustOrRemove

            var model = new CommerceTraining.Models.ViewModels.PageViewModel <StartPage>(currentPage)
            {
                MainBodyStartPage = currentPage.MainBody,
                myPageChildren    = _contentLoader.GetChildren <IContent>(currentPage.ContentLink),
                Customer          = LoggedInOrNot(),

                // uncomment the below when the catalog is modelled
                topLevelCategories = FilterForVisitor.Filter(
                    _contentLoader.GetChildren <CatalogContentBase>(topCategory).OfType <NodeContent>()),
                markets        = _marketService.GetAllMarkets(),
                selectedMarket = _currentMarketService.GetCurrentMarket().MarketName,
                //selectedMarket = MarketId.Default.Value - starter in Adv.
                someInfo = GetStringInfo(currentPage)
            };

            return(View(model));
        }
Beispiel #2
0
        public ActionResult Set(ContentReference contentLink, [FromForm] string marketId)
        {
            var newMarketId = new MarketId(marketId);

            _currentMarket.SetCurrentMarket(newMarketId);
            var currentMarket = _marketService.GetMarket(newMarketId);

            //var cart = _cartService.LoadCart(_cartService.DefaultCartName, true)?.Cart;

            //if (cart != null && cart.Currency != null)
            //{
            //    _currencyService.SetCurrentCurrency(cart.Currency);
            //}
            //else
            //{
            //_currencyService.SetCurrentCurrency(currentMarket.DefaultCurrency);
            //}

            _languageService.SetRoutedContent(_contentRouteHelper.Content, currentMarket.DefaultLanguage.Name);

            var returnUrl = _urlResolver.GetUrl(Request, contentLink, currentMarket.DefaultLanguage.Name);

            return(new ContentResult
            {
                Content = JsonConvert.SerializeObject(new { returnUrl }),
                ContentType = "application/json",
            });
        }
Beispiel #3
0
        public ActionResult Set(string marketId, ContentReference contentLink)
        {
            _currentMarket.SetCurrentMarket(new MarketId(marketId));
            var currentMarket = _marketService.GetMarket(new MarketId(marketId));

            _languageService.SetCurrentLanguage(currentMarket.DefaultLanguage.Name);

            var returnUrl = _urlResolver.GetUrl(Request, contentLink, currentMarket.DefaultLanguage.Name);

            return(Json(new { returnUrl }));
        }
Beispiel #4
0
        public ActionResult SetMarket(string id, string rtnUrl)
        {
            var code = MarketCurrency.Create(id);

            _currentMarket.SetCurrentMarket(code.MarketId);
            _currentCurrency.SetCurrentCurrency(code.CurrentCode);

            var redirectUrl = !string.IsNullOrEmpty(rtnUrl) ? rtnUrl : "/";

            return(Redirect(redirectUrl));
        }
        public ViewResult Index(StartPage currentPage)
        {
            var model = new StartPageViewModel()
            {
                StartPage  = currentPage,
                Promotions = GetActivePromotions()
            };
            var  marketId = _organizationService.GetUserCurrentOrganizationLocation();
            bool isMarketOverwrited;

            bool.TryParse(Session[Constants.Fields.OverwritedMarket]?.ToString(), out isMarketOverwrited);
            if (!string.IsNullOrEmpty(marketId) && !isMarketOverwrited)
            {
                _currentMarket.SetCurrentMarket(marketId);
            }

            return(View(model));
        }
Beispiel #6
0
        public ActionResult ChangeDefaultMarket(string selectedMarket)
        {
            if (!string.IsNullOrEmpty(selectedMarket))
            {
                _currentMarket.SetCurrentMarket(new MarketId(selectedMarket));
            }
            var viewModel = new DemoMarketsViewModel();

            viewModel.MarketList     = _marketService.GetAllMarkets();
            viewModel.SelectedMarket = _currentMarket.GetCurrentMarket();

            var shirtRef = _referenceConverter.GetContentLink("Long Sleeve Shirt White Small_1");

            viewModel.Shirt = _contentLoader.Get <ShirtVariation>(shirtRef);

            GetTaxInfo(viewModel);
            GetPriceInfo(viewModel);

            return(View("Index", viewModel));
        }
Beispiel #7
0
        protected void MarketList_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            if (e.CommandName != SetMarket)
            {
                return;
            }

            _currentMarket.SetCurrentMarket(new MarketId(e.CommandArgument.ToString()));

            // Redirect to the page url in ContentLanguage.PreferredCulture.Name language
            var contentLink = _contentRouteHelper.ContentLink;

            if (contentLink != null)
            {
                string queryString = Request.Url.Query;
                Context.RedirectFast(new UrlResolver().GetUrl(contentLink, ContentLanguage.PreferredCulture.Name) + queryString);
            }
            else
            {
                Context.RedirectFast(Request.RawUrl);
            }
        }
Beispiel #8
0
        public ActionResult Set(string marketId, ContentReference contentLink)
        {
            var newMarketId = new MarketId(marketId);

            _currentMarket.SetCurrentMarket(newMarketId);
            var currentMarket = _marketService.GetMarket(newMarketId);
            var cart          = _cartService.LoadCart(_cartService.DefaultCartName, true)?.Cart;

            if (cart != null && cart.Currency != null)
            {
                _currencyService.SetCurrentCurrency(cart.Currency);
            }
            else
            {
                _currencyService.SetCurrentCurrency(currentMarket.DefaultCurrency);
            }

            _languageService.UpdateLanguage(currentMarket.DefaultLanguage.Name);

            var returnUrl = _urlResolver.GetUrl(Request, contentLink, currentMarket.DefaultLanguage.Name);

            return(Json(new { returnUrl }));
        }