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
C#
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
C#
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
C#
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;
       }
   }
}
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.