Book.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using MediaBrowser.Controller.Providers;
  2. using MediaBrowser.Model.Configuration;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using MediaBrowser.Model.Entities;
  6. using MediaBrowser.Model.Users;
  7. namespace MediaBrowser.Controller.Entities
  8. {
  9. public class Book : BaseItem, IHasTags, IHasLookupInfo<BookInfo>, IHasSeries
  10. {
  11. public override string MediaType
  12. {
  13. get
  14. {
  15. return Model.Entities.MediaType.Book;
  16. }
  17. }
  18. public string SeriesName { get; set; }
  19. public override bool CanDownload()
  20. {
  21. var locationType = LocationType;
  22. return locationType != LocationType.Remote &&
  23. locationType != LocationType.Virtual;
  24. }
  25. public override UnratedItem GetBlockUnratedType()
  26. {
  27. return UnratedItem.Book;
  28. }
  29. public BookInfo GetLookupInfo()
  30. {
  31. var info = GetItemLookupInfo<BookInfo>();
  32. if (string.IsNullOrEmpty(SeriesName))
  33. {
  34. info.SeriesName = GetParents().Select(i => i.Name).FirstOrDefault();
  35. }
  36. else
  37. {
  38. info.SeriesName = SeriesName;
  39. }
  40. return info;
  41. }
  42. }
  43. }