public PartialViewResult BreadCrumbs(string pageUrl) { using (GoodContext db = new GoodContext()) { string[] pageUrlList = pageUrl.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); List <BreadCrumb> breadCrumbsList = new List <BreadCrumb>(); if (pageUrlList.Length == 1 && pageUrlList[0].ToLower() == "cart") { BreadCrumb breadCrumbCart = new BreadCrumb { Name = "Cart", Link = "/cart" }; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; breadCrumbsList.AddRange(new BreadCrumb[] { breadCrumbCart, breadCrumbMain }); } else if (pageUrlList.Length == 2 && pageUrlList[0].ToLower() == "cart" && pageUrlList[1].ToLower() == "order-acceptance") { string categoryName = "Order acceptance"; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCart = new BreadCrumb { Name = "Cart", Link = "/cart" }; BreadCrumb breadCrumbOrderAcceptance = new BreadCrumb { Name = categoryName, Link = "/cart/order-acceptance" }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbOrderAcceptance, breadCrumbCart, breadCrumbMain }); } else { BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbUnknown = new BreadCrumb { Name = "Unknown Link", Link = "/" }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbUnknown, breadCrumbMain }); } var viewModel = new BreadCrumbsListViewModel { BreadCrumbsList = breadCrumbsList }; return(PartialView("_BreadCrumbs", viewModel)); } }
public PartialViewResult BreadCrumbs(string pageUrl) { using (GoodContext db = new GoodContext()) { string[] pageUrlList = pageUrl.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); List <BreadCrumb> breadCrumbsList = new List <BreadCrumb>(); if (pageUrlList.Length == 2 && pageUrlList[0].ToLower() == "good-search-result") { BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Good search results", Link = "/good-search-result" }; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; breadCrumbsList.AddRange(new BreadCrumb[] { breadCrumbCatalog, breadCrumbMain }); } else if (pageUrlList.Length == 2 && pageUrlList[0].ToLower() == "cart" && pageUrlList[1].ToLower() == "confirm-order") { string categoryName = "Confirm order"; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCart = new BreadCrumb { Name = "Cart", Link = "/cart" }; BreadCrumb breadCrumbConfirmOrder = new BreadCrumb { Name = categoryName, Link = "/cart/confirm-order" }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbConfirmOrder, breadCrumbCart, breadCrumbMain }); } else { BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbUnknown = new BreadCrumb { Name = "Unknown Link", Link = "/" }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbUnknown, breadCrumbMain }); } var viewModel = new BreadCrumbsListViewModel { BreadCrumbsList = breadCrumbsList }; return(PartialView("_BreadCrumbs", viewModel)); } }
public PartialViewResult BreadCrumbs(string pageUrl) { using (GoodContext db = new GoodContext()) { string[] pageUrlList = pageUrl.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); List <BreadCrumb> breadCrumbsList = new List <BreadCrumb>(); if (pageUrlList.Length == 1 && pageUrlList[0].ToLower() == "catalog") { BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Catalog", Link = "/catalog" }; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; breadCrumbsList.AddRange(new BreadCrumb[] { breadCrumbCatalog, breadCrumbMain }); } else if (pageUrlList.Length == 2 && pageUrlList[0].ToLower() == "catalog") { string categoryUrl = pageUrlList[1]; string categoryName = db.GoodCategories.Where(x => x.CategoryUrl == categoryUrl).First().CategoryName; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Catalog", Link = "/catalog" }; BreadCrumb breadCrumbCategory = new BreadCrumb { Name = categoryName, Link = "/catalog/" + categoryUrl }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbCategory, breadCrumbCatalog, breadCrumbMain }); } else if (pageUrlList.Length == 3 && pageUrlList[0].ToLower() == "catalog") { string categoryUrl = pageUrlList[1]; string subcategoryUrl = pageUrlList[2]; string categoryName = db.GoodCategories.Where(x => x.CategoryUrl == categoryUrl).First().CategoryName; string subcategoryName = db.GoodSubcategories.Where(x => x.SubcategoryUrl == subcategoryUrl).First().SubcategoryName; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Catalog", Link = "/catalog" }; BreadCrumb breadCrumbCategory = new BreadCrumb { Name = categoryName, Link = "/catalog/" + categoryUrl }; BreadCrumb breadCrumbSubcategory = new BreadCrumb { Name = subcategoryName, Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbSubcategory, breadCrumbCategory, breadCrumbCatalog, breadCrumbMain }); } else if (pageUrlList.Length == 4 && pageUrlList[0].ToLower() == "catalog") { string categoryUrl = pageUrlList[1]; string subcategoryUrl = pageUrlList[2]; string goodUrl = pageUrlList[3]; string categoryName = db.GoodCategories.Where(x => x.CategoryUrl == categoryUrl).First().CategoryName; string subcategoryName = db.GoodSubcategories.Where(x => x.SubcategoryUrl == subcategoryUrl).First().SubcategoryName; string goodName = db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodBrand + " " + db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodName + ", " + db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodColor; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Catalog", Link = "/catalog" }; BreadCrumb breadCrumbCategory = new BreadCrumb { Name = categoryName, Link = "/catalog/" + categoryUrl }; BreadCrumb breadCrumbSubcategory = new BreadCrumb { Name = subcategoryName, Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl }; BreadCrumb breadCrumbGood = new BreadCrumb { Name = goodName, Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl + "/" + goodUrl }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbGood, breadCrumbSubcategory, breadCrumbCategory, breadCrumbCatalog, breadCrumbMain }); } else if (pageUrlList.Length == 5 && pageUrlList[0].ToLower() == "catalog" && (pageUrlList[4].ToLower() == "reviews" || pageUrlList[4].ToLower() == "discussions" || pageUrlList[4].ToLower() == "overview")) { string categoryUrl = pageUrlList[1]; string subcategoryUrl = pageUrlList[2]; string goodUrl = pageUrlList[3]; string categoryName = db.GoodCategories.Where(x => x.CategoryUrl == categoryUrl).First().CategoryName; string subcategoryName = db.GoodSubcategories.Where(x => x.SubcategoryUrl == subcategoryUrl).First().SubcategoryName; string goodName = db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodBrand + " " + db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodName + ", " + db.Goods.Where(x => x.GoodUrl == goodUrl).First().GoodColor; BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbCatalog = new BreadCrumb { Name = "Catalog", Link = "/catalog" }; BreadCrumb breadCrumbCategory = new BreadCrumb { Name = categoryName, Link = "/catalog/" + categoryUrl }; BreadCrumb breadCrumbSubcategory = new BreadCrumb { Name = subcategoryName, Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl }; BreadCrumb breadCrumbGood = new BreadCrumb { Name = goodName, Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl + "/" + goodUrl }; BreadCrumb breadCrumbGoodOption = new BreadCrumb { Name = pageUrlList[4], Link = "/catalog/" + categoryUrl + "/" + subcategoryUrl + "/" + goodUrl + "/" + pageUrlList[4] }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbGoodOption, breadCrumbGood, breadCrumbSubcategory, breadCrumbCategory, breadCrumbCatalog, breadCrumbMain }); } else { BreadCrumb breadCrumbMain = new BreadCrumb { Name = "Main", Link = "/" }; BreadCrumb breadCrumbUnknown = new BreadCrumb { Name = "Unknown Link", Link = "/" }; breadCrumbsList.AddRange(new List <BreadCrumb>() { breadCrumbUnknown, breadCrumbMain }); } var viewModel = new BreadCrumbsListViewModel { BreadCrumbsList = breadCrumbsList }; return(PartialView("_BreadCrumbs", viewModel)); } }