56 lines
1.9 KiB
C#
56 lines
1.9 KiB
C#
using Nop.Web.Framework.Models;
|
|
|
|
namespace Nop.Web.Models.Catalog;
|
|
|
|
public partial record TopMenuModel : BaseNopModel
|
|
{
|
|
public TopMenuModel()
|
|
{
|
|
Categories = new List<CategorySimpleModel>();
|
|
Topics = new List<TopicModel>();
|
|
}
|
|
|
|
public IList<CategorySimpleModel> Categories { get; set; }
|
|
public IList<TopicModel> 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
|
|
} |