Plugin.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using System.ComponentModel.Composition;
  3. using MediaBrowser.Common.Plugins;
  4. using MediaBrowser.Controller;
  5. using MediaBrowser.Controller.Library;
  6. using MediaBrowser.Model.Plugins;
  7. using MediaBrowser.TV.Entities;
  8. namespace MediaBrowser.TV
  9. {
  10. [Export(typeof(BasePlugin))]
  11. public class Plugin : BaseGenericPlugin<BasePluginConfiguration>
  12. {
  13. public override string Name
  14. {
  15. get { return "TV"; }
  16. }
  17. protected override void InitializeOnServer()
  18. {
  19. Kernel.Instance.ItemController.PreBeginResolvePath += ItemController_PreBeginResolvePath;
  20. }
  21. protected override void DisposeOnServer()
  22. {
  23. Kernel.Instance.ItemController.PreBeginResolvePath -= ItemController_PreBeginResolvePath;
  24. }
  25. void ItemController_PreBeginResolvePath(object sender, PreBeginResolveEventArgs e)
  26. {
  27. // Don't try and resolve files with the metadata folder
  28. if (System.IO.Path.GetFileName(e.Path).Equals("metadata", StringComparison.OrdinalIgnoreCase) && e.IsDirectory)
  29. {
  30. if (e.Parent is Season || e.Parent is Series)
  31. {
  32. e.Cancel = true;
  33. }
  34. }
  35. }
  36. }
  37. }