public static void EnsureTabsExist(StoreSettingsUrls sett) { int? parentId = null; Func <int> getParentTabId = () => { return(parentId.HasValue ? parentId.Value : (parentId = FindOrCreateFirstLevelTab("HotcakesStore")).Value); }; if (sett.CategoryTabId <= 0) { sett.CategoryTabId = CreateTabFromTemplate("Category", getParentTabId()); } if (sett.ProductTabId <= 0) { sett.ProductTabId = CreateTabFromTemplate("Product", getParentTabId()); } if (sett.ProductReviewTabId <= 0) { sett.ProductReviewTabId = CreateTabFromTemplate("ProductReview", getParentTabId()); } if (sett.SearchTabId <= 0) { sett.SearchTabId = CreateTabFromTemplate("Search", getParentTabId()); } if (sett.CartTabId <= 0) { sett.CartTabId = CreateTabFromTemplate("Cart", getParentTabId()); } if (sett.CheckoutTabId <= 0) { sett.CheckoutTabId = CreateTabFromTemplate("Checkout", getParentTabId()); } if (sett.WishListTabId <= 0) { sett.WishListTabId = CreateTabFromTemplate("WishList", getParentTabId()); } if (sett.OrderHistoryTabId <= 0) { sett.OrderHistoryTabId = CreateTabFromTemplate("OrderHistory", getParentTabId()); } if (sett.AddressBookTabId <= 0) { sett.AddressBookTabId = CreateTabFromTemplate("AddressBook", getParentTabId()); } }
private DnnUrlInfo GetTabId(HccRoute route) { StoreSettingsUrls urlStoreSettings = null; if (HccRequestContext.Current.CurrentStore != null) { urlStoreSettings = HccRequestContext.Current.CurrentStore.Settings.Urls; } var urlInfo = new DnnUrlInfo(); switch (route) { case HccRoute.Cart: urlInfo.TabId = urlStoreSettings.CartTabId; break; case HccRoute.Product: urlInfo.TabId = urlStoreSettings.ProductTabId; break; case HccRoute.ProductReview: urlInfo.TabId = urlStoreSettings.ProductReviewTabId; break; case HccRoute.Category: urlInfo.TabId = urlStoreSettings.CategoryTabId; break; case HccRoute.Checkout: urlInfo.TabId = urlStoreSettings.CheckoutTabId; break; case HccRoute.CheckoutPayPal: urlInfo.TabId = urlStoreSettings.CheckoutTabId; urlInfo.ControlKey = "PayPalCheckout"; urlInfo.ModuleName = "Hotcakes.Checkout"; break; case HccRoute.ThirdPartyPayment: urlInfo.TabId = urlStoreSettings.CheckoutTabId; urlInfo.ControlKey = "ThirdPartyPayment"; urlInfo.ModuleName = "Hotcakes.Checkout"; break; case HccRoute.WishList: urlInfo.TabId = urlStoreSettings.WishListTabId; break; case HccRoute.Search: urlInfo.TabId = urlStoreSettings.SearchTabId; break; case HccRoute.OrderHistory: urlInfo.TabId = urlStoreSettings.OrderHistoryTabId; break; case HccRoute.AddressBook: urlInfo.TabId = urlStoreSettings.AddressBookTabId; break; case HccRoute.EditUserProfile: urlInfo.TabId = CurrentPortalSettings.UserTabId; urlInfo.ControlKey = "Profile"; break; case HccRoute.AffiliateRegistration: urlInfo.TabId = GetTabIdByModuleName("Hotcakes.AffiliateRegistration"); break; case HccRoute.AffiliateDashboard: urlInfo.TabId = GetTabIdByModuleName("Hotcakes.AffiliateDashboard"); break; case HccRoute.Home: urlInfo.TabId = CurrentPortalSettings.HomeTabId; break; default: throw new NotImplementedException(); } return(urlInfo); }