Example #1
0
        private void LoadTrailForCategory(BreadCrumbViewModel model, CategorySnapshot cat, bool linkAll)
        {
            if (cat == null)
            {
                return;
            }
            if (cat.Hidden)
            {
                return;
            }

            var allCats = HccApp.CatalogServices.Categories.FindAllSnapshotsPaged(1, int.MaxValue);

            var trail = Category.BuildTrailToRoot(cat.Bvin, HccApp.CatalogServices.Categories);

            if (trail == null)
            {
                return;
            }

            // Walk list backwards
            for (var j = trail.Count - 1; j >= 0; j += -1)
            {
                if (j != 0 || linkAll)
                {
                    model.Items.Enqueue(AddCategoryLink(trail[j]));
                }
                else
                {
                    model.Items.Enqueue(new BreadCrumbItem {
                        Name = trail[j].Name
                    });
                }
            }
        }
        // Get: /Policies/Faq
        public ActionResult Faq()
        {
            // Breadcrumbs
            BreadCrumbViewModel crumbs = new BreadCrumbViewModel();

            crumbs.HomeName = SiteTerms.GetTerm(SiteTermIds.Home);
            crumbs.Items.Enqueue(new BreadCrumbItem()
            {
                Name = SiteTerms.GetTerm(SiteTermIds.CustomerService),
                Link = Url.Content("~/ContactUs")
            });
            crumbs.Items.Enqueue(new BreadCrumbItem()
            {
                Name = SiteTerms.GetTerm(SiteTermIds.FAQ)
            });
            var breadRender = new code.TemplateEngine.TagHandlers.BreadCrumbs();

            ViewBag.BreadCrumbsFinal = breadRender.Render(MTApp, crumbs);

            // Titles
            ViewBag.Title = SiteTerms.GetTerm(SiteTermIds.FAQ);

            Policy p = MTApp.ContentServices.Policies.FindOrCreateByType(PolicyType.Faq);

            if (p == null)
            {
                p = new Policy();
            }
            return(View(p));
        }
Example #3
0
        public IViewComponentResult Invoke()
        {
            var model = new BreadCrumbViewModel();

            if (int.TryParse(Request.Query["sectionId"], out var sectionId))
            {
                model.Section = _productData.GetSectionById(sectionId).FromDTO();
            }

            if (int.TryParse(Request.Query["brandId"], out var brandId))
            {
                model.Brand = _productData.GetBrandById(brandId).FromDTO();
            }

            if (int.TryParse(ViewContext.RouteData.Values["id"]?.ToString(), out var productId))
            {
                var product = _productData.GetProductById(productId);

                if (product != null)
                {
                    model.Product = product.Name;
                }
            }
            return(View(model));
        }
        //
        // GET: /Order/
        public virtual ActionResult Form(string id)
        {
            var model = new FormViewModel(ViewData.Model as BaseViewModel);
            var product1 = new ProductViewModel
                               {
                                   Title = "Karrbros Official Shirt",
                                   Price = 19.99,
                                   MaxOrderQuantity = 10,
                                   DescriptionLine1 = "50/50  Cotton Jerzee",
                                   DescriptionLine2 = "White Shirt - Blue/Orange Ink",
                                   AvailableSizes = new List<string> {"Small", "Medium", "Large", "X-Large"}
                               };
            var images = new List<ImageViewModel>();
            var image = new ImageViewModel
                            {
                                AltText = "Karrbros Official Shirt",
                                Path =string.Format("{0}/{1}/officialshirt.png", model.URLs.CDNOrders, id),
                                Title = "Karrbros Official Shirt"
                            };
            images.Add(image);
            product1.Images = images;
            model.Order.Products.Add(product1);
            model.Order.Title = "Karrbros Official";
            var crumb = new BreadCrumbViewModel { Display = "Order Search", Title = "order search", Url = "/Order/Search" };
            var crumb2 = new BreadCrumbViewModel { Display = model.Order.Title, Title = model.Order.Title, Url = "/Order/Form/" + model.Order.Id };
            model.BreadCrumbs.Add(crumb);
            model.BreadCrumbs.Add(crumb2);

               return View("Form", model);
        }
Example #5
0
        // Get: /Policies/Faq
        public ActionResult Faq()
        {
            // Breadcrumbs
            BreadCrumbViewModel crumbs = new BreadCrumbViewModel();

            crumbs.HomeName = SiteTerms.GetTerm(SiteTermIds.Home);
            crumbs.Items.Enqueue(new BreadCrumbItem()
            {
                Name = SiteTerms.GetTerm(SiteTermIds.CustomerService),
                Link = Url.Content("~/ContactUs")
            });
            crumbs.Items.Enqueue(new BreadCrumbItem()
            {
                Name = SiteTerms.GetTerm(SiteTermIds.FAQ)
            });
            ViewBag.BreadCrumbTrail = crumbs;

            // Titles
            ViewBag.Title = SiteTerms.GetTerm(SiteTermIds.FAQ);

            Policy p = MTApp.ContentServices.Policies.FindOrCreateByType(PolicyType.Faq);

            if (p == null)
            {
                p = new Policy();
            }
            return(View(p));
        }
Example #6
0
        public string Render(MerchantTribeApplication app, BreadCrumbViewModel model)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<div class=\"breadcrumbs\">");
            sb.Append("<div class=\"links\">");
            if (model.HideHomeLink == false)
            {
                sb.Append("<a href=\"" + app.StoreUrl(false, false) + "\">Home</a>" + model.Spacer);
            }
            while (model.Items.Count > 0)
            {
                var item = model.Items.Dequeue();
                if (item.Link == string.Empty)
                {
                    sb.Append("<span class=\"current\">" + HttpUtility.HtmlEncode(item.Name) + "</span>");
                }
                else
                {
                    sb.Append("<a href=\"" + item.Link + "\" title=\"" + HttpUtility.HtmlEncode(item.Title) + "\">" + HttpUtility.HtmlEncode(item.Name) + "</a>");
                }

                if (model.Items.Count > 0 && model.Items.Peek() != null)
                {
                    sb.Append(model.Spacer);
                }
            }
            sb.Append("</div>");
            sb.Append("</div>");

            return(sb.ToString());
        }
Example #7
0
 public FileManagerViewModel(string path)
 {
     Path           = path.TrimStart('\\');
     Directories    = new List <string>();
     Files          = new List <string>();
     BreadCrumbs    = new BreadCrumbViewModel();
     BasePreviewUrl = string.Empty;
 }
Example #8
0
 public async void OnGet()
 {
     Pricing      = (await _orchard.GetRecentContentItemsByContentTypeAsync("Pricing")).SingleOrDefault();
     BreadCrumbVM = new BreadCrumbViewModel()
     {
         DisplayText = T[Pricing.DisplayText],
         SubTitle    = T[(string)Pricing.Content.SubtitlePart?.Subtitle.Text ?? ""]
     };
     PriceList = (await _orchard.GetRecentContentItemsByContentTypeAsync("PricePlan")).OrderBy(p => p.Content.PricePlan.Price.Value);
 }
        public ActionResult ListByVideoTag(string id, int page = 1, int page_size = 15)
        {
            if (id.Contains("_"))
            {
                return(RedirectToActionPermanent("ListByVideoTag", new { id = id.Replace("_", "-") }));
            }

            //If first page redirect to correct url without page parameter
            if (page <= 1 && Request.RawUrl.Contains(id + "/" + page.ToString()))
            {
                return(RedirectToActionPermanent("ListByVideoTag", new { id = id, page = "" }));
            }


            VideoCategoryViewModel view_model = servicesManager.VideoFrontService.GetVideosTag(id, page < 1 ? 1 : page, page_size, VideoService.VideoThumbWidth7, VideoService.VideoThumbHeight7, 100);

            view_model.LinkTemplate = "/تصنيف-فيديو/" + id + "/{page}";
            if (view_model == null)
            {
                throw new HttpException(404, "Page Not Found");
            }

            //Get Current User Info
            if (WebSecurity.IsAuthenticated)
            {
                ViewBag.CurrentUser = servicesManager.AccountFrontService.GetSimpleUserById(WebSecurity.CurrentUserId);
            }

            view_model.URL = id;

            //Get latest articles list
            ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(5, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3);

            //Fill Bread Crumb
            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "فيديو", URL = "/فيديو"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = view_model.Name, URL = Url.Action("ListByVideoTag", "Category", new { id = id, page = "" })
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }
        public ActionResult video(string id)
        {
            //Get Current User Info
            if (WebSecurity.IsAuthenticated)
            {
                ViewBag.CurrentUser = servicesManager.AccountFrontService.GetSimpleUserById(WebSecurity.CurrentUserId);
            }

            //get the video info
            VideoViewModel view_model = servicesManager.VideoFrontService.GetVideoByURL(id, WebSecurity.CurrentUserId);

            if (view_model == null)
            {
                throw new HttpException(404, "Page Not Found");
            }

            //Get latest articles list
            List <int> except = new List <int>();

            ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(4, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3, except);

            //List<int> except_list = ((List<ListArticleViewModel>)ViewBag.LatestArticlesLeft).Select(a => a.ArticleId).ToList();
            //except_list.Add(view_model.ArticleId);
            ////Get related articles list top
            ////  ViewBag.RelatedArticlesTop = servicesManager.ArticleFrontService.GetRelatedArticles(view_model.ArticleId,view_model.Title, 6, ArticleService.ArticleThumbWidth6, ArticleService.ArticleThumbHeight6);

            //Get related recommended articles bottom
            ViewBag.RelatedArticlesBottom = servicesManager.ArticleFrontService.GetRelatedArticles(view_model.Title, 3, ArticleService.ArticleThumbWidth4, ArticleService.ArticleThumbHeight4, null);

            except.Add(view_model.VideoId);
            ViewBag.RelatedVideos = servicesManager.VideoFrontService.GetAuthorVideos(3, view_model.Author.AuthorId, VideoService.VideoThumbWidth7, VideoService.VideoThumbHeight7, except);

            ////Fill Bread Crumb
            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "فيديو", URL = Url.Action("index", "Video")
            });
            // bread_crumb.Items.Add(new BreadCrumbItemViewModel() { Text = view_model.CategoryName, URL = Url.Action("ListByTag", "Category", new { id = view_model.CategoryURL.Replace("_", "-") }) });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = view_model.Title, URL = Url.Action("video", "Video", new { id = view_model.URL })
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }
        public ActionResult Search(string q, int page = 1, int page_size = 15)
        {
            if (Request.RawUrl.Contains("Article/Search"))
            {
                return(RedirectToActionPermanent("Search", "Article", new { q = q, page = page }));
            }

            //If first page redirect to correct url without page parameter
            if (page <= 1 && Request.RawUrl.Contains(q + "/" + page.ToString()))
            {
                return(RedirectToActionPermanent("Search", new { q = q, page = "" }));
            }

            //Get Current User Info
            if (WebSecurity.IsAuthenticated)
            {
                ViewBag.CurrentUser = servicesManager.AccountFrontService.GetSimpleUserById(WebSecurity.CurrentUserId);
            }

            //Get latest articles list
            ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(5, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3);

            SearchViewModel view_model = new SearchViewModel()
            {
                Page = page, SearchKey = q
            };

            view_model.Articles        = servicesManager.ArticleFrontService.GetSearchResult(q, page < 1 ? 1 : page, page_size, ArticleService.ArticleThumbWidth7, ArticleService.ArticleThumbHeight7, 100);
            view_model.MetaTitle       = "نتائج البحث عن: " + q;
            view_model.MetaDescription = "نتائج البحث عن: " + q + " من موقع سعادتي";

            //Set pagination properties
            view_model.PageNumber   = page;
            view_model.PageSize     = page_size;
            view_model.TotalItems   = servicesManager.ArticleFrontService.GetSearchTotalCount(q, page, page_size);
            view_model.LinkTemplate = "/بحث/" + q + "/{page}";

            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "نتائج البحث عن: " + q, URL = Url.Action("Search", "Article", new { q = q })
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }
Example #12
0
        public ActionResult ManualTrail(List <BreadCrumbItem> extras)
        {
            var model = new BreadCrumbViewModel();

            if (extras != null)
            {
                foreach (var item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(View("BreadCrumb", model));
        }
 public virtual ActionResult Search()
 {
     var model = new SearchViewModel(ViewData.Model as BaseViewModel);
     var order = new OrderViewModel
                     {Id = 100, Deadline = DateTime.Now, Title = "Karrbros Official", Group = "Best Group Evar"};
     var order2 = new OrderViewModel {Id = 101, Deadline = DateTime.Now.AddDays(15), Title = "Clinton Wrestling", Group = "Time To Get Live" };
     model.Orders.Add(order);
     model.Orders.Add(order2);
     var crumb = new BreadCrumbViewModel
                     {Display = "Order Search", Title = "order search", Url = "/Order/Search"};
     model.BreadCrumbs.Add(crumb);
     return View("Search", model);
 }
Example #14
0
        public ActionResult author(string id)
        {
            //Get Current User Info
            if (WebSecurity.IsAuthenticated)
            {
                ViewBag.CurrentUser = servicesManager.AccountFrontService.GetSimpleUserById(WebSecurity.CurrentUserId);
            }

            //get the article info
            AuthorViewModel view_model = servicesManager.AuthorFrontService.GetAuthorByURL(id);

            if (view_model == null || !view_model.IsProfileEnabled)
            {
                throw new HttpException(404, "Page Not Found");
            }

            ////Get latest articles list
            //List<int> except = new List<int>();
            //except.Add(view_model.ArticleId);
            //ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(6, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3, except);

            //List<int> except_list = ((List<ListArticleViewModel>)ViewBag.LatestArticlesLeft).Select(a => a.ArticleId).ToList();
            //except_list.Add(view_model.ArticleId);
            ////Get related articles list top
            ////  ViewBag.RelatedArticlesTop = servicesManager.ArticleFrontService.GetRelatedArticles(view_model.ArticleId,view_model.Title, 6, ArticleService.ArticleThumbWidth6, ArticleService.ArticleThumbHeight6);

            ////Get related recommended articles bottom
            //ViewBag.RelatedArticlesBottom = servicesManager.ArticleFrontService.GetRelatedArticles(view_model.ArticleId, view_model.Title, 6, ArticleService.ArticleThumbWidth4, ArticleService.ArticleThumbHeight4, except_list);



            ////Fill Bread Crumb
            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الكتاب"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = view_model.Title, URL = Url.Action("author", "Author", new { id = view_model.URL })
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }
Example #15
0
        public ActionResult ManualTrail(List <BreadCrumbItem> extras)
        {
            BreadCrumbViewModel model = new BreadCrumbViewModel();

            model.HomeName = MerchantTribe.Commerce.Content.SiteTerms.GetTerm(MerchantTribe.Commerce.Content.SiteTermIds.Home);
            if (extras != null)
            {
                foreach (BreadCrumbItem item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(View("BreadCrumb", model));
        }
Example #16
0
        public string RenderManual(MerchantTribeApplication app, List <BreadCrumbItem> extras)
        {
            BreadCrumbViewModel model = new BreadCrumbViewModel();

            model.HomeName = MerchantTribe.Commerce.Content.SiteTerms.GetTerm(MerchantTribe.Commerce.Content.SiteTermIds.Home);
            if (extras != null)
            {
                foreach (BreadCrumbItem item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(Render(app, model));
        }
        public PartialViewResult Breadcrumb()
        {
            var vm = new BreadCrumbViewModel
            {
                CurrentPage = MapItem(CurrentPage),
                MenuItems   = CurrentPage
                              .Ancestors()
                              .Where(x => x.Level > 1)
                              .OrderBy(x => x.Level)
                              .Select(x => MapItem(x)),
            };

            return(PartialView("_Breadcrumb", vm));
        }
Example #18
0
        public ActionResult ProductTrail(Product product, List <BreadCrumbItem> extras)
        {
            var model = new BreadCrumbViewModel();

            LoadTrailForProduct(model, product);

            if (extras != null)
            {
                foreach (var item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(View("BreadCrumb", model));
        }
        public PartialViewResult GetTopicBreadcrumb(Topic topic)
        {
            var category  = ServiceFactory.CategoryService.Get(topic.CategoryId, true);
            var viewModel = new BreadCrumbViewModel
            {
                Categories = category.ParentCategories,
                Topic      = topic
            };

            if (!viewModel.Categories.Any())
            {
                viewModel.Categories.Add(topic.Category);
            }
            return(PartialView(PathHelper.GetThemePartialViewPath("GetTopicBreadcrumb"), viewModel));
        }
Example #20
0
        public ActionResult CategoryTrail(Category cat, List <BreadCrumbItem> extras)
        {
            var snap = new CategorySnapshot(cat);

            var model = new BreadCrumbViewModel();

            LoadTrailForCategory(model, snap, false);

            if (extras != null && extras.Count > 0)
            {
                foreach (var item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(View("BreadCrumb", model));
        }
Example #21
0
        private void LoadTrailForProduct(BreadCrumbViewModel model, Product p)
        {
            if (p == null)
            {
                return;
            }
            CategorySnapshot currentCategory = null;
            var cats = HccApp.CatalogServices.FindCategoriesForProduct(p.Bvin);

            if (cats.Count > 0)
            {
                currentCategory = cats[0];
            }
            LoadTrailForCategory(model, currentCategory, true);
            model.Items.Enqueue(new BreadCrumbItem {
                Name = p.ProductName
            });
        }
Example #22
0
        private void LoadTrailForProduct(BreadCrumbViewModel model, Product p, MerchantTribeApplication app)
        {
            if (p == null)
            {
                return;
            }
            CategorySnapshot        currentCategory = null;
            List <CategorySnapshot> cats            = app.CatalogServices.FindCategoriesForProduct(p.Bvin);

            if ((cats.Count > 0))
            {
                currentCategory = cats[0];
            }
            LoadTrailForCategory(model, currentCategory, true, app);
            model.Items.Enqueue(new BreadCrumbItem()
            {
                Name = p.ProductName
            });
        }
Example #23
0
        private BreadCrumbViewModel BuildBreadCrumbs(string path)
        {
            BreadCrumbViewModel result = new BreadCrumbViewModel();

            result.HideHomeLink = true;

            List <BreadCrumbItem> items = new List <BreadCrumbItem>();

            string workingPath = path.TrimEnd('\\');

            bool finished = false;

            while (finished == false)
            {
                workingPath = workingPath.TrimEnd('\\');
                if (workingPath.Length < 1)
                {
                    finished = true;
                    break;
                }
                string dir = System.IO.Path.GetFileName(workingPath);

                items.Add(new BreadCrumbItem()
                {
                    Link  = Url.Content("~/bvadmin/content/filemanager?path=" + workingPath),
                    Name  = dir,
                    Title = dir
                });
                workingPath = System.IO.Path.GetDirectoryName(workingPath);
            }
            items.Add(new BreadCrumbItem()
            {
                Link  = Url.Content("~/bvadmin/content/filemanager"),
                Name  = "Root",
                Title = "Root"
            });

            for (int i = items.Count - 1; i >= 0; i--)
            {
                result.Items.Enqueue(items[i]);
            }
            return(result);
        }
Example #24
0
        public ActionResult CategoryTrail(Category cat, List <BreadCrumbItem> extras)
        {
            CategorySnapshot snap = new CategorySnapshot(cat);

            BreadCrumbViewModel model = new BreadCrumbViewModel();

            model.HomeName = MerchantTribe.Commerce.Content.SiteTerms.GetTerm(MerchantTribe.Commerce.Content.SiteTermIds.Home);

            LoadTrailForCategory(model, snap, false);

            if (extras != null)
            {
                foreach (BreadCrumbItem item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }
            return(View("BreadCrumb", model));
        }
Example #25
0
        private BreadCrumbViewModel BuildBreadCrumbs(string path)
        {
            var result = new BreadCrumbViewModel();

            result.HideHomeLink = true;

            var items = new List <BreadCrumbItem>();

            var workingPath = path.TrimEnd('\\');

            var finished = false;

            while (finished == false)
            {
                workingPath = workingPath.TrimEnd('\\');
                if (workingPath.Length < 1)
                {
                    finished = true;
                    break;
                }
                var dir = Path.GetFileName(workingPath);

                items.Add(new BreadCrumbItem
                {
                    Link  = Url.Content("~/DesktopModules/Hotcakes/API/mvc/filemanager?path=" + workingPath),
                    Name  = dir,
                    Title = dir
                });
                workingPath = Path.GetDirectoryName(workingPath);
            }
            items.Add(new BreadCrumbItem
            {
                Link  = Url.Content("~/DesktopModules/Hotcakes/API/mvc/filemanager"),
                Name  = "Root",
                Title = "Root"
            });

            for (var i = items.Count - 1; i >= 0; i--)
            {
                result.Items.Enqueue(items[i]);
            }
            return(result);
        }
Example #26
0
        public string RenderCategory(MerchantTribeApplication app, List <BreadCrumbItem> extras, Category cat)
        {
            CategorySnapshot snap = new CategorySnapshot(cat);

            BreadCrumbViewModel model = new BreadCrumbViewModel();

            model.HomeName = MerchantTribe.Commerce.Content.SiteTerms.GetTerm(MerchantTribe.Commerce.Content.SiteTermIds.Home);

            LoadTrailForCategory(model, snap, false, app);

            if (extras != null && extras.Count > 0)
            {
                foreach (BreadCrumbItem item in extras)
                {
                    model.Items.Enqueue(item);
                }
            }

            return(Render(app, model));
        }
Example #27
0
        private void LoadTrailForCategory(BreadCrumbViewModel model, CategorySnapshot cat, bool linkAll)
        {
            if (cat == null)
            {
                return;
            }
            if (cat.Hidden)
            {
                return;
            }

            List <CategorySnapshot> allCats = MTApp.CatalogServices.Categories.FindAllPaged(1, int.MaxValue);


            List <CategorySnapshot> trail = new List <CategorySnapshot>();

            trail = Category.BuildTrailToRoot(cat.Bvin, MTApp.CurrentRequestContext);

            if (trail == null)
            {
                return;
            }

            // Walk list backwards
            for (int j = trail.Count - 1; j >= 0; j += -1)
            {
                if (j != 0 || linkAll == true)
                {
                    model.Items.Enqueue(AddCategoryLink(trail[j]));
                }
                else
                {
                    model.Items.Enqueue(new BreadCrumbItem()
                    {
                        Name = trail[j].Name
                    });
                }
            }
        }
        public ActionResult List(string id, int page = 1, int page_size = 15)
        {
            //Redirect to tag from now on, no category list will ever exist.
            return(RedirectToActionPermanent("ListByTag", new { id = id.Replace("_", "-") }));

            //Get Current User Info
            if (WebSecurity.IsAuthenticated)
            {
                ViewBag.CurrentUser = servicesManager.AccountFrontService.GetSimpleUserById(WebSecurity.CurrentUserId);
            }

            CategoryViewModel view_model = servicesManager.ArticleFrontService.GetCategoryByURL(id, page, page_size, ArticleService.ArticleThumbWidth7, ArticleService.ArticleThumbHeight7, 100);

            if (view_model == null)
            {
                throw new HttpException(404, "Page Not Found");
            }
            //Get latest articles list
            ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(5, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3);

            //Fill Bread Crumb
            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = view_model.Name, URL = Url.Action("List", "Category", new { id = id })
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }
        public Task <IViewComponentResult> InvokeAsync(string objectName, int objectId)
        {
            RouteValueDictionary RouteDataValues = ViewContext.RouteData.Values;
            ResourceManager      translation     = translations.ResourceManager;

            BreadCrumbViewModel breadCrumbViewModel = new BreadCrumbViewModel();

            string controllerName = RouteDataValues["controller"].ToString().ToLower();
            string actionName     = RouteDataValues["action"].ToString().ToLower();

            if (controllerName.Equals("home"))
            {
                return(Task.FromResult <IViewComponentResult>(View(breadCrumbViewModel)));
            }

            breadCrumbViewModel.Crumbs.Add(new BreadCrumb());
            breadCrumbViewModel.Crumbs.Add(new BreadCrumb {
                Name = translation.GetString(controllerName), Controller = controllerName
            });

            if (!EXCLUDEDACTIONS.Contains(actionName))
            {
                breadCrumbViewModel.Crumbs.Add(new BreadCrumb {
                    Name = translation.GetString(actionName), Action = actionName, Controller = controllerName
                });
            }

            if (actionName == "details" && objectName != null)
            {
                breadCrumbViewModel.Crumbs.Add(new BreadCrumb {
                    Name = objectName, Action = actionName, Id = objectId, Controller = controllerName
                });
            }

            return(Task.FromResult <IViewComponentResult>(View(breadCrumbViewModel)));
        }
        public ActionResult index()
        {
            List <int> except = new List <int>();

            ViewBag.LatestArticlesLeft = servicesManager.ArticleFrontService.GetLatestArticles(3, ArticleService.ArticleThumbWidth3, ArticleService.ArticleThumbHeight3, except);

            List <ListVideoViewModel> view_model = servicesManager.VideoFrontService.GetLatestVideos(15, VideoService.VideoThumbWidth7, VideoService.VideoThumbHeight7, null);

            ////Fill Bread Crumb
            BreadCrumbViewModel bread_crumb = new BreadCrumbViewModel();

            bread_crumb.Items = new List <BreadCrumbItemViewModel>();
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "الرئيسية", URL = "/"
            });
            bread_crumb.Items.Add(new BreadCrumbItemViewModel()
            {
                Text = "فيديو", URL = Url.Action("index", "Video")
            });
            ViewBag.BreadCrumb = bread_crumb;

            return(View(view_model));
        }