View Source
  Class NotificationService
  
  
  
  
    Inheritance
      System.Object
      
   
  
  Assembly: Umbraco.Core.dll
  Syntax
  
    public class NotificationService : INotificationService, IService
   
  Constructors
  
  
    View Source
  
  NotificationService(ICoreScopeProvider, IUserService, IContentService, ILocalizationService, ILogger<NotificationService>, IIOHelper, INotificationsRepository, IOptions<GlobalSettings>, IOptions<ContentSettings>, IEmailSender)
  
  
  Declaration
  
    public NotificationService(ICoreScopeProvider provider, IUserService userService, IContentService contentService, ILocalizationService localizationService, ILogger<NotificationService> logger, IIOHelper ioHelper, INotificationsRepository notificationsRepository, IOptions<GlobalSettings> globalSettings, IOptions<ContentSettings> contentSettings, IEmailSender emailSender)
   
  Parameters
  
  Methods
  
  
    View Source
  
  CreateNotification(IUser, IEntity, String)
  Creates a new notification
Declaration
  
    public Notification CreateNotification(IUser user, IEntity entity, string action)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IUser | user |  | 
      
        | IEntity | entity |  | 
      
        | System.String | action | The action letter - note: this is a string for future compatibility | 
    
  
  Returns
  
  
    View Source
  
  DeleteNotifications(IEntity)
  Deletes notifications by entity
Declaration
  
    public void DeleteNotifications(IEntity entity)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IEntity | entity |  | 
    
  
  
    View Source
  
  DeleteNotifications(IUser)
  Deletes notifications by user
Declaration
  
    public void DeleteNotifications(IUser user)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IUser | user |  | 
    
  
  
    View Source
  
  DeleteNotifications(IUser, IEntity)
  Delete notifications by user and entity
Declaration
  
    public void DeleteNotifications(IUser user, IEntity entity)
   
  Parameters
  
  
    View Source
  
  FilterUserNotificationsByPath(Nullable<IEnumerable<Notification>>, String)
  Filters a userNotifications collection by a path
Declaration
  
    public IEnumerable<Notification>? FilterUserNotificationsByPath(IEnumerable<Notification>? userNotifications, string path)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | System.Nullable<IEnumerable<Notification>> | userNotifications |  | 
      
        | System.String | path |  | 
    
  
  Returns
  
  
    View Source
  
  GetEntityNotifications(IEntity)
  Deletes notifications by entity
Declaration
  
    public IEnumerable<Notification>? GetEntityNotifications(IEntity entity)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IEntity | entity |  | 
    
  
  Returns
  
  
    View Source
  
  GetUserNotifications(IUser)
  Gets the notifications for the user
Declaration
  
    public IEnumerable<Notification>? GetUserNotifications(IUser user)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IUser | user |  | 
    
  
  Returns
  
  
    View Source
  
  GetUserNotifications(IUser, String)
  Gets the notifications for the user based on the specified node path
Declaration
  
    public IEnumerable<Notification>? GetUserNotifications(IUser user, string path)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IUser | user |  | 
      
        | System.String | path |  | 
    
  
  Returns
  
  
  
  
    View Source
  
  SendNotifications(IUser, IEnumerable<IContent>, String, String, Uri, Func<(IUser user, NotificationEmailSubjectParams subject), String>, Func<(IUser user, NotificationEmailBodyParams body, Boolean isHtml), String>)
  Sends the notifications for the specified user regarding the specified node and action.
Declaration
  
    public void SendNotifications(IUser operatingUser, IEnumerable<IContent> entities, string action, string actionName, Uri siteUri, Func<(IUser user, NotificationEmailSubjectParams subject), string> createSubject, Func<(IUser user, NotificationEmailBodyParams body, bool isHtml), string> createBody)
   
  Parameters
  
  
    View Source
  
  SetNotifications(IUser, IEntity, String[])
  Sets the specific notifications for the user and entity
Declaration
  
    public IEnumerable<Notification>? SetNotifications(IUser user, IEntity entity, string[] actions)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IUser | user |  | 
      
        | IEntity | entity |  | 
      
        | System.String[] | actions |  | 
    
  
  Returns