Libraries events
The Libraries module (including Images, Documents and Videos) exposes some events that you can use. As with the rest of the events, there are interfaces which describe the event contract and concrete classes implementing those interfaces. We recommend that you always use the interface to subscribe for the event.
This is the full list of events exposed by the Libraries module.
IMediaContentDownloadEvent
This interface is implemented by all events that fire when a media content item (image, document, video) is downloaded, namely IMediaContentDownloadingEvent and IMediaContentDownloadedEvent. Use it if you want to subscribe to both its child events.
In the event handler, you can access the following information:
- The UserId of the currently logged in user
- The url of the downloaded item
- The type of the downloaded item
- The Title of the downloaded item
- The libraries provider name in which the item is stored
- The MIME type of the downloaded item
- The ID of the library in which the item is stored
- The headers of the request to download the item
- The ID of the item
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Modules.Libraries.Web.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<IMediaContentDownloadEvent>(evt => LibrariesEventHandler(evt));
}
public void LibrariesEventHandler(IMediaContentDownloadEvent eventInfo)
{
var userId = eventInfo.UserId;
var itemUrl = eventInfo.Url;
var itemType = eventInfo.Type;
var itemTitle = eventInfo.Title;
var librariesProviderName = eventInfo.ProviderName;
var itemMIMEType = eventInfo.MimeType;
var libraryId = eventInfo.LibraryId;
var downloadRequestHeaders = eventInfo.Headers;
var itemId = eventInfo.FileId;
}
}
}
IMediaContentDownloadingEvent
This interface is implemented by all events that fire beforea media content item (image, document, video) is downloaded.
In the event handler, you can access the following information:
- The UserId of the currently logged in user
- The url of the downloaded item
- The type of the downloaded item
- The Title of the downloaded item
- The libraries provider name in which the item is stored
- The MIME type of the downloaded item
- The ID of the library in which the item is stored
- The headers of the request to download the item
- The ID of the item
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Modules.Libraries.Web.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<IMediaContentDownloadingEvent>(evt => MediaContentDownloadingEventHandler(evt));
}
public void MediaContentDownloadingEventHandler(IMediaContentDownloadingEvent eventInfo)
{
var userId = eventInfo.UserId;
var itemUrl = eventInfo.Url;
var itemType = eventInfo.Type;
var itemTitle = eventInfo.Title;
var librariesProviderName = eventInfo.ProviderName;
var itemMIMEType = eventInfo.MimeType;
var libraryId = eventInfo.LibraryId;
var downloadRequestHeaders = eventInfo.Headers;
var itemId = eventInfo.FileId;
}
}
}
IMediaContentDownloadedEvent
This interface is implemented by all events that fire aftera media content item (image, document, video) has been downloaded.
In the event handler, you can access the following information:
- The UserId of the currently logged in user
- The url of the downloaded item
- The type of the downloaded item
- The Title of the downloaded item
- The libraries provider name in which the item is stored
- The MIME type of the downloaded item
- The ID of the library in which the item is stored
- The headers of the request to download the item
- The ID of the item
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Modules.Libraries.Web.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<IMediaContentDownloadedEvent>(evt => MediaContentDownloadedEventHandler(evt));
}
public void MediaContentDownloadedEventHandler(IMediaContentDownloadedEvent eventInfo)
{
var userId = eventInfo.UserId;
var itemUrl = eventInfo.Url;
var itemType = eventInfo.Type;
var itemTitle = eventInfo.Title;
var librariesProviderName = eventInfo.ProviderName;
var itemMIMEType = eventInfo.MimeType;
var libraryId = eventInfo.LibraryId;
var downloadRequestHeaders = eventInfo.Headers;
var itemId = eventInfo.FileId;
}
}
}