2
0

GameSystem.cs 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using System;
  2. using System.Collections.Generic;
  3. using MediaBrowser.Controller.Providers;
  4. using MediaBrowser.Model.Configuration;
  5. using MediaBrowser.Model.Serialization;
  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 => Id;
  21. [IgnoreDataMember]
  22. public override bool SupportsPlayedStatus => false;
  23. [IgnoreDataMember]
  24. public override bool SupportsInheritedParentImages => false;
  25. public override double GetDefaultPrimaryImageAspectRatio()
  26. {
  27. double value = 16;
  28. value /= 9;
  29. return value;
  30. }
  31. /// <summary>
  32. /// Gets or sets the game system.
  33. /// </summary>
  34. /// <value>The game system.</value>
  35. public string GameSystemName { get; set; }
  36. public override List<string> GetUserDataKeys()
  37. {
  38. var list = base.GetUserDataKeys();
  39. if (!string.IsNullOrEmpty(GameSystemName))
  40. {
  41. list.Insert(0, "GameSystem-" + GameSystemName);
  42. }
  43. return list;
  44. }
  45. protected override bool GetBlockUnratedValue(UserPolicy config)
  46. {
  47. // Don't block. Determine by game
  48. return false;
  49. }
  50. public override UnratedItem GetBlockUnratedType()
  51. {
  52. return UnratedItem.Game;
  53. }
  54. public GameSystemInfo GetLookupInfo()
  55. {
  56. var id = GetItemLookupInfo<GameSystemInfo>();
  57. id.Path = Path;
  58. return id;
  59. }
  60. [IgnoreDataMember]
  61. public override bool SupportsPeople => false;
  62. }
  63. }