using Nop.Web.Framework.Models; namespace Nop.Web.Models.Catalog; public partial record TopMenuModel : BaseNopModel { public TopMenuModel() { Categories = new List(); Topics = new List(); } public IList Categories { get; set; } public IList Topics { get; set; } public bool BlogEnabled { get; set; } public bool NewProductsEnabled { get; set; } public bool ForumEnabled { get; set; } public bool DisplayHomepageMenuItem { get; set; } public bool DisplayNewProductsMenuItem { get; set; } public bool DisplayProductSearchMenuItem { get; set; } public bool DisplayCustomerInfoMenuItem { get; set; } public bool DisplayBlogMenuItem { get; set; } public bool DisplayForumsMenuItem { get; set; } public bool DisplayContactUsMenuItem { get; set; } public bool UseAjaxMenu { get; set; } public bool HasOnlyCategories => Categories.Any() && !Topics.Any() && !DisplayHomepageMenuItem && !(DisplayNewProductsMenuItem && NewProductsEnabled) && !DisplayProductSearchMenuItem && !DisplayCustomerInfoMenuItem && !(DisplayBlogMenuItem && BlogEnabled) && !(DisplayForumsMenuItem && ForumEnabled) && !DisplayContactUsMenuItem; #region Nested classes public partial record TopicModel : BaseNopEntityModel { public string Name { get; set; } public string SeName { get; set; } } public partial record CategoryLineModel : BaseNopModel { public int Level { get; set; } public bool ResponsiveMobileMenu { get; set; } public CategorySimpleModel Category { get; set; } } #endregion }