Webiant Logo Webiant Logo
  1. No results found.

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

IForumModelFactory.cs

using Nop.Core.Domain.Forums;
using Nop.Web.Models.Boards;

namespace Nop.Web.Factories;

/// 
/// Represents the interface of the forum model factory
/// 
public partial interface IForumModelFactory
{
    /// 
    /// Prepare the forum group model
    /// 
    /// Forum group
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum group model
    /// 
    Task PrepareForumGroupModelAsync(ForumGroup forumGroup);

    /// 
    /// Prepare the boards index model
    /// 
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the boards index model
    /// 
    Task PrepareBoardsIndexModelAsync();

    /// 
    /// Prepare the active discussions model
    /// 
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the active discussions model
    /// 
    Task PrepareActiveDiscussionsModelAsync();

    /// 
    /// Prepare the active discussions model
    /// 
    /// Forum identifier
    /// Number of forum topics page
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the active discussions model
    /// 
    Task PrepareActiveDiscussionsModelAsync(int forumId, int page);

    /// 
    /// Prepare the forum page model
    /// 
    /// Forum
    /// Number of forum topics page
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum page model
    /// 
    Task PrepareForumPageModelAsync(Forum forum, int page);

    /// 
    /// Prepare the forum topic page model
    /// 
    /// Forum topic
    /// Number of forum posts page
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum topic page model
    /// 
    Task PrepareForumTopicPageModelAsync(ForumTopic forumTopic, int page);

    /// 
    /// Prepare the topic move model
    /// 
    /// Forum topic
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the topic move model
    /// 
    Task PrepareTopicMoveAsync(ForumTopic forumTopic);

    /// 
    /// Prepare the forum topic create model
    /// 
    /// Forum
    /// Edit forum topic model
    /// A task that represents the asynchronous operation
    Task PrepareTopicCreateModelAsync(Forum forum, EditForumTopicModel model);

    /// 
    /// Prepare the forum topic edit model
    /// 
    /// Forum topic
    /// Edit forum topic model
    /// Whether to exclude populating of model properties from the entity
    /// A task that represents the asynchronous operation
    Task PrepareTopicEditModelAsync(ForumTopic forumTopic, EditForumTopicModel model,
        bool excludeProperties);

    /// 
    /// Prepare the forum post create model
    /// 
    /// Forum topic
    /// Identifier of the quoted post; pass null to load the empty text
    /// Whether to exclude populating of model properties from the entity
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the edit forum post model
    /// 
    Task PreparePostCreateModelAsync(ForumTopic forumTopic, int? quote,
        bool excludeProperties);

    /// 
    /// Prepare the forum post edit model
    /// 
    /// Forum post
    /// Whether to exclude populating of model properties from the entity
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the edit forum post model
    /// 
    Task PreparePostEditModelAsync(ForumPost forumPost, bool excludeProperties);

    /// 
    /// Prepare the search model
    /// 
    /// Search terms
    /// Whether to use the advanced search
    /// Forum identifier
    /// String representation of int value of ForumSearchType
    /// Limit by the last number days; 0 to load all topics
    /// Number of items page
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the search model
    /// 
    Task PrepareSearchModelAsync(string searchterms, bool? advs, string forumId,
        string within, string limitDays, int page);

    /// 
    /// Prepare the last post model
    /// 
    /// Forum post
    /// Whether to show topic
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the last post model
    /// 
    Task PrepareLastPostModelAsync(ForumPost forumPost, bool showTopic);

    /// 
    /// Prepare the forum breadcrumb model
    /// 
    /// Forum group identifier; pass null to load nothing
    /// Forum identifier; pass null to load breadcrumbs up to forum group
    /// Forum topic identifier; pass null to load breadcrumbs up to forum
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum breadcrumb model
    /// 
    Task PrepareForumBreadcrumbModelAsync(int? forumGroupId, int? forumId,
        int? forumTopicId);

    /// 
    /// Prepare the customer forum subscriptions model
    /// 
    /// Number of items page; pass null to load the first page
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the customer forum subscriptions model
    /// 
    Task PrepareCustomerForumSubscriptionsModelAsync(int? page);

    /// 
    /// Prepare the forum topic row model
    /// 
    /// Forum topic
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum topic row model
    /// 
    Task PrepareForumTopicRowModelAsync(ForumTopic topic);

    /// 
    /// Prepare the forum row model
    /// 
    /// Forum
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the forum row model
    /// 
    Task PrepareForumRowModelAsync(Forum forum);
}