public ActionResult DiamondSearch(CustomJewelPersistenceForDiamondSearch customJewelPersistenceBaseClass)
        {
            var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceBaseClass, diamondRepository,
                                                                                    jewelRepository, webHelpers);

            tabsForJewelDesignBuilder.WhichTabToHighLight(NagivationTabType.YourDiamond);

            var builder = new DiamondSearchViewModelBuilder(customJewelPersistenceBaseClass, tabsForJewelDesignBuilder);

            var viewModel = builder.Build();

            return(View(viewModel));
        }
        public ActionResult Diamond(CustomJewelPersistenceInDiamond customJewelPersistenceInDiamond)
        {
            var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceInDiamond, diamondRepository,
                                                                                 jewelRepository, webHelpers);

            tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.YourDiamond);

            var builder   = new DiamondViewModelBuilder(customJewelPersistenceInDiamond, tabsForJewelNavigation, diamondRepository, diamondHelpBuilder, mapper);
            var viewModel = builder.Build();

            viewModel.PathBarItems = pathBarGenerator.GenerateUsing <UsingDynamicTitlePathBarResolver, dynamic>(viewModel);

            return(View(viewModel));
        }
        public ActionResult End(CustomJewelPersistenceInEndPage customJewelPersistenceInEndPage)
        {
            if (customJewelPersistenceInEndPage.MediaType == 0)
            {
                customJewelPersistenceInEndPage.MediaType = JewelMediaType.WhiteGold;
            }

            var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceInEndPage, diamondRepository,
                                                                                 jewelRepository, webHelpers);

            tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.YourOrder);

            var builder = new EndViewModelBuilder(customJewelPersistenceInEndPage, tabsForJewelNavigation, diamondRepository,
                                                  jewelRepository, mapper);

            var viewModel = builder.Build();

            return(View(viewModel));
        }
        public ActionResult ChooseSetting(ChooseSettingViewModel chooseSettingViewModel)
        {
            var tabsource = xmlSourceFactory.TabSource();

            var tabsViewModelBuilder = new TabsViewModelBuilder(chooseSettingViewModel, tabsource, tabsRepository, jewelRepository, fileSystem);

            var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(chooseSettingViewModel, diamondRepository,
                                                                                 jewelRepository, webHelpers);

            tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.ChooseSetting);


            var builder = new ChooseSettingViewModelBuilder(chooseSettingViewModel, tabsViewModelBuilder, tabsForJewelNavigation);

            var viewModel = builder.Build();

            viewModel.PathBarItems = pathBarGenerator.GenerateUsing <TabsPathBarResolver, ITabsViewModel>(viewModel);

            return(View(viewModel));
        }
        public ActionResult Setting(CustomJewelPersistenceForSetting customJewelPersistenceForSetting)
        {
            var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceForSetting, diamondRepository,
                                                                                 jewelRepository, webHelpers);

            tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.ChooseSetting);

            jewelRepository.FilterMediaByMetal(customJewelPersistenceForSetting.MediaType == 0 ? JewelMediaType.WhiteGold : customJewelPersistenceForSetting.MediaType);

            var jewelryItemViewModelBuilder = new JewelryItemViewModelBuilder(customJewelPersistenceForSetting.SettingID, jewelRepository, testimonialRepository, fileSystem, mapper);

            var builder = new SettingViewModelBuilder(customJewelPersistenceForSetting, tabsForJewelNavigation, jewelryItemViewModelBuilder);

            var viewModel = builder.Build();

            viewModel.PathBarItems = pathBarGenerator.GenerateUsing <UsingDynamicTitlePathBarResolver, dynamic>(viewModel);


            return(View(viewModel));
        }