using Nop.Core.Domain.Topics; namespace Nop.Services.Topics; /// /// Topic service interface /// public partial interface ITopicService { /// /// Deletes a topic /// /// Topic /// A task that represents the asynchronous operation Task DeleteTopicAsync(Topic topic); /// /// Gets a topic /// /// The topic identifier /// /// A task that represents the asynchronous operation /// The task result contains the topic /// Task GetTopicByIdAsync(int topicId); /// /// Gets a topic /// /// The topic system name /// Store identifier; pass 0 to ignore filtering by store and load the first one /// /// A task that represents the asynchronous operation /// The task result contains the topic /// Task GetTopicBySystemNameAsync(string systemName, int storeId = 0); /// /// Gets all topics /// /// Store identifier; pass 0 to load all records /// A value indicating whether to ignore ACL rules /// A value indicating whether to show hidden topics /// A value indicating whether to show only topics which include on the top menu /// /// A task that represents the asynchronous operation /// The task result contains the topics /// Task> GetAllTopicsAsync(int storeId, bool ignoreAcl = false, bool showHidden = false, bool onlyIncludedInTopMenu = false); /// /// Gets all topics /// /// Store identifier; pass 0 to load all records /// Keywords to search into body or title /// A value indicating whether to ignore ACL rules /// A value indicating whether to show hidden topics /// A value indicating whether to show only topics which include on the top menu /// /// A task that represents the asynchronous operation /// The task result contains the topics /// Task> GetAllTopicsAsync(int storeId, string keywords, bool ignoreAcl = false, bool showHidden = false, bool onlyIncludedInTopMenu = false); /// /// Inserts a topic /// /// Topic /// A task that represents the asynchronous operation Task InsertTopicAsync(Topic topic); /// /// Updates the topic /// /// Topic /// A task that represents the asynchronous operation Task UpdateTopicAsync(Topic topic); }