User events
Sitefinity CMS users are users who can conduct content management and/or administrative tasks within a given website project. When the website administrator creates, deletes, or modifies a user, a variety of user events are fired. You can subscribe to any of the user events listed below.
For more information about managing and administering users, see Overview: Users.
UserEventBase
This is the base class for events that notifies for changes in the Sitefinity CMS users. Subscribe using the following code:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserEventBase>(evt => UserEventHandler(evt));
}
public void UserEventHandler(UserEventBase eventInfo)
{
var userId = eventInfo.UserId;
var userName = eventInfo.UserName;
var membershipProviderName = eventInfo.MembershipProviderName;
var isApproved = eventInfo.IsApproved;
var email = eventInfo.Email;
var password = eventInfo.Password;
var passwordFormat = eventInfo.PasswordFormat;
}
}
}
In the event handler, you can access the following information:
- ID of the user
- Username
- Name of the membership provider
- Approval status of the user
- Email of the user
- Password of the user
- Password format
UserCreating
This event fires when a Sitefinity CMS user is being created and is pending approval. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserCreating>(evt => UserCreatingEventHandler(evt));
}
public void UserCreatingEventHandler(UserCreating eventInfo)
{
var user = eventInfo.User;
}
}
}
In the event handler, you can access the user which is pending for creation.
UserCreated
This event fires when a Sitefinity CMS user is already created. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserCreated>(evt => UserCreatedEventHandler(evt));
}
public void UserCreatedEventHandler(UserCreated eventInfo)
{
// your logic
}
}
}
UserUpdating
This event fires when a Sitefinity CMS user is being modified. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserUpdating>(evt => UserUpdatingEventHandler(evt));
}
public void UserUpdatingEventHandler(UserUpdating eventInfo)
{
var approvalStatusChanged = eventInfo.ApprovalStatusChanged;
var passwordChanged = eventInfo.PasswordChanged;
var user = eventInfo.User;
}
}
}
In the event handler, you can access the following information:
- A flag which indicates whether the approval status of a user is changed.
- A flag which indicates whether the password of a user is being changed.
- The user which is pending for an update.
UserUpdated
This event fires when a Sitefinity CMS user is already modified. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserUpdated>(evt => UserUpdatedEventHandler(evt));
}
public void UserUpdatedEventHandler(UserUpdated eventInfo)
{
var approvalStatusChanged = eventInfo.ApprovalStatusChanged;
var passwordChanged = eventInfo.PasswordChanged;
}
}
}
In the event handler, you can access the following information:
- A flag which indicates whether the approval status of a user is changed.
- A flag which indicates whether the password of a user is changed.
UserDeleting
This event fires when a Sitefinity CMS user is being deleted. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserDeleting>(evt => UserDeletingEventHandler(evt));
}
public void UserDeletingEventHandler(UserDeleting eventInfo)
{
var user = eventInfo.User;
}
}
}
In the event handler, you can access the user which is pending for delete.
UserDeleted
This event fires when a Sitefinity CMS user is already deleted. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<UserDeleted>(evt => UserDeletedEventHandler(evt));
}
public void UserDeletedEventHandler(UserDeleted eventInfo)
{
// your logic
}
}
}
Your event handler should look like this.
PasswordRecoveryRequested
This event fires when a password recovery link was sent to a Sitefinity CMS user email. Use the following code to subscribe:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<PasswordRecoveryRequested>(evt => PasswordRecoveryRequestedEventHandler(evt));
}
public void PasswordRecoveryRequestedEventHandler(PasswordRecoveryRequested eventInfo)
{
// your logic
}
}
}