Webiant Logo Webiant Logo
  1. No results found.

    Try your search with a different keyword or use * as a wildcard.

MenuItemModel.cs

using Microsoft.AspNetCore.Mvc.Rendering;
using Nop.Web.Framework.Models;
using Nop.Web.Framework.Mvc.ModelBinding;

namespace Nop.Web.Areas.Admin.Models.Menus;

/// 
/// Represents menu item model
/// 
public partial record MenuItemModel : BaseNopEntityModel, IAclSupportedModel, IStoreMappingSupportedModel, ILocalizedModel
{
    #region Ctor

    public MenuItemModel()
    {
        AvailableMenuItemTypes = new List();
        AvailableMenuItems = new List();

        SelectedStoreIds = new List();
        AvailableStores = new List();

        SelectedCustomerRoleIds = new List();
        AvailableCustomerRoles = new List();

        AvailableMenuItemTemplates = new List();
        AvailableStandardRoutes = new List();
        AvailableCategories = new List();
        AvailableVendors = new List();
        AvailableManufacturers = new List();
        AvailableTopics = new List();

        Locales = new List();
    }

    #endregion

    #region Properties

    public int MenuId { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Title")]
    public string Title { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Breadcrumb")]
    public string Breadcrumb { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Url")]
    public string Url { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Category")]
    public int CategoryId { get; set; }
    public IList AvailableCategories { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Vendor")]
    public int VendorId { get; set; }
    public IList AvailableVendors { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Manufacturer")]
    public int ManufacturerId { get; set; }
    public IList AvailableManufacturers { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Topic")]
    public int TopicId { get; set; }
    public IList AvailableTopics { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Product")]
    public int? ProductId { get; set; }
    public string ProductName { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.MenuItemType")]
    public int MenuItemTypeId { get; set; }
    public string MenuItemTypeName { get; set; }
    public IList AvailableMenuItemTypes { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.RouteName")]
    public string RouteName { get; set; }
    public IList AvailableStandardRoutes { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Template")]
    public int TemplateId { get; set; }
    public IList AvailableMenuItemTemplates { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Published")]
    public bool Published { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.DisplayOrder")]
    public int DisplayOrder { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.CssClass")]
    public string CssClass { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Parent")]
    public int? ParentId { get; set; }
    public IList AvailableMenuItems { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.NumberOfSubItemsPerGridElement")]
    public int? NumberOfSubItemsPerGridElement { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.NumberOfItemsPerGridRow")]
    public int? NumberOfItemsPerGridRow { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.MaximumNumberEntities")]
    public int? MaximumNumberEntities { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.LimitedToStores")]
    public IList SelectedStoreIds { get; set; }
    public IList AvailableStores { get; set; }

    public IList SelectedCustomerRoleIds { get; set; }
    public IList AvailableCustomerRoles { get; set; }

    public IList Locales { get; set; }

    #endregion
}

public partial record MenuItemLocalizedModel : ILocalizedLocaleModel
{
    public int LanguageId { get; set; }

    [NopResourceDisplayName("Admin.ContentManagement.Menus.MenuItem.Fields.Title")]
    public string Title { get; set; }
}