Added a welcome notification

This commit is contained in:
Luke Pulverenti 2013-07-06 22:01:14 -04:00
parent 734f08f56d
commit e924efaa6f
3 changed files with 36 additions and 0 deletions

View File

@ -28,6 +28,8 @@ namespace MediaBrowser.Controller.Library
/// </summary>
event EventHandler<GenericEventArgs<User>> UserDeleted;
event EventHandler<GenericEventArgs<User>> UserCreated;
/// <summary>
/// Gets a User by Id
/// </summary>

View File

@ -2,6 +2,7 @@
using MediaBrowser.Common.Plugins;
using MediaBrowser.Common.ScheduledTasks;
using MediaBrowser.Common.Updates;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Notifications;
using MediaBrowser.Controller.Plugins;
@ -42,6 +43,28 @@ namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
_installationManager.PluginUninstalled += _installationManager_PluginUninstalled;
_taskManager.TaskCompleted += _taskManager_TaskCompleted;
_userManager.UserCreated += _userManager_UserCreated;
}
async void _userManager_UserCreated(object sender, GenericEventArgs<User> e)
{
var notification = new Notification
{
UserId = e.Argument.Id,
Category = "UserCreated",
Name = "Welcome to Media Browser!",
Description = "Check back here for more notifications."
};
try
{
await _notificationsRepo.AddNotification(notification, CancellationToken.None).ConfigureAwait(false);
}
catch (Exception ex)
{
_logger.ErrorException("Error adding notification", ex);
}
}
async void _taskManager_TaskCompleted(object sender, GenericEventArgs<TaskResult> e)
@ -168,6 +191,11 @@ namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
{
_installationManager.PackageInstallationCompleted -= _installationManager_PackageInstallationCompleted;
_installationManager.PackageInstallationFailed -= _installationManager_PackageInstallationFailed;
_installationManager.PluginUninstalled -= _installationManager_PluginUninstalled;
_taskManager.TaskCompleted -= _taskManager_TaskCompleted;
_userManager.UserCreated -= _userManager_UserCreated;
}
}
}

View File

@ -303,6 +303,8 @@ namespace MediaBrowser.Server.Implementations.Library
OnUserUpdated(user);
}
public event EventHandler<GenericEventArgs<User>> UserCreated;
/// <summary>
/// Creates the user.
/// </summary>
@ -330,6 +332,8 @@ namespace MediaBrowser.Server.Implementations.Library
await UserRepository.SaveUser(user, CancellationToken.None).ConfigureAwait(false);
EventHelper.QueueEventIfNotNull(UserCreated, this, new GenericEventArgs<User> { Argument = user }, _logger);
return user;
}
@ -439,5 +443,7 @@ namespace MediaBrowser.Server.Implementations.Library
DateModified = DateTime.UtcNow
};
}
}
}