2
0

GameSystem.cs 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using MediaBrowser.Model.Serialization;
  2. using MediaBrowser.Controller.Providers;
  3. using MediaBrowser.Model.Configuration;
  4. using System;
  5. using System.Collections.Generic;
  6. using MediaBrowser.Model.Users;
  7. namespace MediaBrowser.Controller.Entities
  8. {
  9. /// <summary>
  10. /// Class GameSystem
  11. /// </summary>
  12. public class GameSystem : Folder, IHasLookupInfo<GameSystemInfo>
  13. {
  14. /// <summary>
  15. /// Return the id that should be used to key display prefs for this item.
  16. /// Default is based on the type for everything except actual generic folders.
  17. /// </summary>
  18. /// <value>The display prefs id.</value>
  19. [IgnoreDataMember]
  20. public override Guid DisplayPreferencesId
  21. {
  22. get
  23. {
  24. return Id;
  25. }
  26. }
  27. [IgnoreDataMember]
  28. public override bool SupportsPlayedStatus
  29. {
  30. get
  31. {
  32. return false;
  33. }
  34. }
  35. /// <summary>
  36. /// Gets or sets the game system.
  37. /// </summary>
  38. /// <value>The game system.</value>
  39. public string GameSystemName { get; set; }
  40. public override List<string> GetUserDataKeys()
  41. {
  42. var list = base.GetUserDataKeys();
  43. if (!string.IsNullOrEmpty(GameSystemName))
  44. {
  45. list.Insert(0, "GameSystem-" + GameSystemName);
  46. }
  47. return list;
  48. }
  49. protected override bool GetBlockUnratedValue(UserPolicy config)
  50. {
  51. // Don't block. Determine by game
  52. return false;
  53. }
  54. public override UnratedItem GetBlockUnratedType()
  55. {
  56. return UnratedItem.Game;
  57. }
  58. public GameSystemInfo GetLookupInfo()
  59. {
  60. var id = GetItemLookupInfo<GameSystemInfo>();
  61. id.Path = Path;
  62. return id;
  63. }
  64. [IgnoreDataMember]
  65. public override bool SupportsPeople
  66. {
  67. get
  68. {
  69. return false;
  70. }
  71. }
  72. }
  73. }