SHARE
TWEET

Untitled

a guest Jan 2nd, 2017 100 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  .../TV/Server/Plugins/WebEPG/WebEPG/MPCode/TVProgram.cs   | 11 +++++++++++
  2.  .../Mediaportal/TV/Server/Plugins/XmlTvImport/Importer.cs | 12 ++++++++++++
  3.  .../Mediaportal/TV/Server/SetupTv/Sections/TvSchedules.cs |  1 +
  4.  .../TVDatabase/Entities/Factories/ProgramFactory.cs       |  1 +
  5.  .../TVDatabase/Entities/Factories/RecordingFactory.cs     |  3 +++
  6.  .../Mediaportal/TV/Server/TVDatabase/Entities/Program.cs  | 15 +++++++++++++++
  7.  .../TV/Server/TVDatabase/Entities/Recording.cs            | 15 +++++++++++++++
  8.  .../TV/Server/TVDatabase/EntityModel/Model.MSSQL.ssdl     |  2 ++
  9.  .../TV/Server/TVDatabase/EntityModel/Model.MSSQLCE.ssdl   |  2 ++
  10.  .../TV/Server/TVDatabase/EntityModel/Model.SQLite.ssdl    |  2 ++
  11.  .../TV/Server/TVDatabase/EntityModel/Model.edmx           |  6 ++++++
  12.  .../TV/Server/TVDatabase/EntityModel/Model.edmx.sql       |  2 ++
  13.  .../Server/TVDatabase/EntityModel/Model_SQLite.edmx.sql   |  2 ++
  14.  .../TvLibrary.Interfaces/Implementations/EpgProgram.cs    |  2 ++
  15.  .../TvLibrary.Services/DiskManagement/MatroskaMetaInfo.cs |  8 ++++++++
  16.  .../DiskManagement/RecordingImporter.cs                   |  7 +++++++
  17.  TvEngine3/Mediaportal/TV/TvPlugin/EPG/GuideBase.cs        |  2 ++
  18.  mediaportal/Core/guilib/DownloadedImage.cs                | 10 ++++++++--
  19.  mediaportal/Core/guilib/GUITextureManager.cs              |  2 +-
  20.  19 files changed, 102 insertions(+), 3 deletions(-)
  21.  
  22. diff --git a/TvEngine3/Mediaportal/TV/Server/Plugins/WebEPG/WebEPG/MPCode/TVProgram.cs b/TvEngine3/Mediaportal/TV/Server/Plugins/WebEPG/WebEPG/MPCode/TVProgram.cs
  23. index 0f973bc..0f1a440 100644
  24. --- a/TvEngine3/Mediaportal/TV/Server/Plugins/WebEPG/WebEPG/MPCode/TVProgram.cs
  25. +++ b/TvEngine3/Mediaportal/TV/Server/Plugins/WebEPG/WebEPG/MPCode/TVProgram.cs
  26. @@ -46,6 +46,7 @@ namespace MediaPortal.Webepg.TV.Database
  27.      private string _strEpisodeFullDetails = string.Empty;
  28.      private string _strStarRating = string.Empty;
  29.      private string _strClassification = string.Empty;
  30. +    private string _strIcon = string.Empty;
  31.      private long _iStartTime = 0;
  32.      private long _iEndTime = 0;
  33.      private int _iID = 0;
  34. @@ -81,6 +82,7 @@ namespace MediaPortal.Webepg.TV.Database
  35.        prog._strEpisodePart = _strEpisodePart;
  36.        prog._strStarRating = _strStarRating;
  37.        prog._strClassification = _strClassification;
  38. +      prog._strIcon = _strIcon;
  39.        prog._strDuration = _strDuration;
  40.        prog._strTimeFromNow = _strTimeFromNow;
  41.        prog._strEpisodeFullDetails = _strEpisodeFullDetails;
  42. @@ -262,6 +264,15 @@ namespace MediaPortal.Webepg.TV.Database
  43.        get { return _strClassification; }
  44.        set { _strClassification = value; }
  45.      }
  46. +  
  47. +    /// <summary>
  48. +    /// Property to get/set the icon of this tv program (eg: http://www.example.com/program.jpg)
  49. +    /// </summary>
  50. +    public string Icon
  51. +    {
  52. +      get { return _strIcon; }
  53. +      set { _strIcon = value; }
  54. +    }
  55.  
  56.      /// <summary>
  57.      /// Property to get the duration of this tv program
  58. diff --git a/TvEngine3/Mediaportal/TV/Server/Plugins/XmlTvImport/Importer.cs b/TvEngine3/Mediaportal/TV/Server/Plugins/XmlTvImport/Importer.cs
  59. index be641ba..076da3c 100644
  60. --- a/TvEngine3/Mediaportal/TV/Server/Plugins/XmlTvImport/Importer.cs
  61. +++ b/TvEngine3/Mediaportal/TV/Server/Plugins/XmlTvImport/Importer.cs
  62. @@ -377,6 +377,7 @@ namespace Mediaportal.TV.Server.Plugins.XmlTvImport
  63.        bool? isPreviouslyShown = null;
  64.        List<string> subtitlesLanguages = new List<string>(10);
  65.        string classification = null;
  66. +      string icon = null;
  67.        int priorityClassification = -1;
  68.        decimal starRating = -1;
  69.        decimal starRatingMaximum = -1;
  70. @@ -566,6 +567,13 @@ namespace Mediaportal.TV.Server.Plugins.XmlTvImport
  71.                xmlProg.Skip();
  72.              }
  73.              break;
  74. +          case "icon":
  75. +            string iconSrc = TidyString(ConvertHtmlToAnsi(xmlProg.GetAttribute("src")));
  76. +            if (!string.IsNullOrEmpty(iconSrc))
  77. +            {
  78. +              icon = iconSrc;
  79. +            }
  80. +            break;
  81.            default:
  82.              // unknown/unsupported, skip entire node
  83.              xmlProg.Skip();
  84. @@ -633,6 +641,10 @@ namespace Mediaportal.TV.Server.Plugins.XmlTvImport
  85.          {
  86.            program.Classification = classification;
  87.          }
  88. +        if (!string.IsNullOrEmpty(icon))
  89. +        {
  90. +          program.Icon = icon;
  91. +        }
  92.          if (isHighDefinition.HasValue)
  93.          {
  94.            program.IsHighDefinition = isHighDefinition.Value;
  95. diff --git a/TvEngine3/Mediaportal/TV/Server/SetupTv/Sections/TvSchedules.cs b/TvEngine3/Mediaportal/TV/Server/SetupTv/Sections/TvSchedules.cs
  96. index ea26ff6..51be212 100644
  97. --- a/TvEngine3/Mediaportal/TV/Server/SetupTv/Sections/TvSchedules.cs
  98. +++ b/TvEngine3/Mediaportal/TV/Server/SetupTv/Sections/TvSchedules.cs
  99. @@ -347,6 +347,7 @@ namespace Mediaportal.TV.Server.SetupTV.Sections
  100.              }            
  101.              item.SubItems.Add(prg.OriginalAirDate.HasValue ? prg.OriginalAirDate.Value.ToString("HH:mm:ss", mmddFormat) : string.Empty);
  102.              item.SubItems.Add(prg.Classification ?? string.Empty);
  103. +            item.SubItems.Add(prg.Icon ?? string.Empty);
  104.              item.SubItems.Add(prg.StarRating.HasValue ? string.Format("{0}/{1}", prg.StarRating, prg.StarRatingMaximum) : string.Empty);
  105.              item.SubItems.Add(prg.EpisodeName ?? string.Empty);
  106.              item.SubItems.Add(prg.EpisodePartNumber.ToString());
  107. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/ProgramFactory.cs b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/ProgramFactory.cs
  108. index dfe90dc..b8b5a87 100644
  109. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/ProgramFactory.cs
  110. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/ProgramFactory.cs
  111. @@ -31,6 +31,7 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities.Factories
  112.          IdProgramCategory = null,
  113.          Classification = null,
  114.          Advisories = (int)ContentAdvisory.None,
  115. +        Icon = null,
  116.          IsHighDefinition = null,
  117.          IsThreeDimensional = null,
  118.          AudioLanguages = null,
  119. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/RecordingFactory.cs b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/RecordingFactory.cs
  120. index 3d765c6..f7c91ae 100644
  121. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/RecordingFactory.cs
  122. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Factories/RecordingFactory.cs
  123. @@ -47,6 +47,7 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities.Factories
  124.          recording.IdProgramCategory = program.IdProgramCategory;
  125.          recording.Classification = program.Classification;
  126.          recording.Advisories = program.Advisories;
  127. +        recording.Icon = program.Icon;
  128.          recording.IsHighDefinition = program.IsHighDefinition;
  129.          recording.IsThreeDimensional = program.IsThreeDimensional;
  130.          recording.IsLive = program.IsLive;
  131. @@ -75,6 +76,7 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities.Factories
  132.          recording.IdProgramCategory = null;
  133.          recording.Classification = null;
  134.          recording.Advisories = (int)ContentAdvisory.None;
  135. +        recording.Icon = null;
  136.          recording.IsHighDefinition = null;
  137.          recording.IsThreeDimensional = null;
  138.          recording.IsLive = null;
  139. @@ -108,6 +110,7 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities.Factories
  140.          IdProgramCategory = null,
  141.          Classification = null,
  142.          Advisories = (int)ContentAdvisory.None,
  143. +        Icon = null,
  144.          IsHighDefinition = null,
  145.          IsThreeDimensional = null,
  146.          IsLive = null,
  147. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Program.cs b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Program.cs
  148. index 0a1b5eb..d73abd9 100644
  149. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Program.cs
  150. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Program.cs
  151. @@ -301,6 +301,21 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities
  152.          private int _advisories;
  153.      
  154.          [DataMember]
  155. +        public string Icon
  156. +        {
  157. +            get { return _icon; }
  158. +            set
  159. +            {
  160. +                if (_icon != value)
  161. +                {
  162. +                    _icon = value;
  163. +                    OnPropertyChanged("Icon");
  164. +                }
  165. +            }
  166. +        }
  167. +        private string _icon;
  168. +    
  169. +        [DataMember]
  170.          public Nullable<bool> IsHighDefinition
  171.          {
  172.              get { return _isHighDefinition; }
  173. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Recording.cs b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Recording.cs
  174. index e41a0af..021bbef 100644
  175. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Recording.cs
  176. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/Entities/Recording.cs
  177. @@ -315,6 +315,21 @@ namespace Mediaportal.TV.Server.TVDatabase.Entities
  178.              }
  179.          }
  180.          private int _advisories;
  181. +
  182. +        [DataMember]
  183. +        public string Icon
  184. +        {
  185. +            get { return _icon; }
  186. +            set
  187. +            {
  188. +                if (_icon != value)
  189. +                {
  190. +                    _icon = value;
  191. +                    OnPropertyChanged("Icon");
  192. +                }
  193. +            }
  194. +        }
  195. +        private string _icon;
  196.      
  197.          [DataMember]
  198.          public Nullable<bool> IsHighDefinition
  199. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQL.ssdl b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQL.ssdl
  200. index ee41241..e91434a 100644
  201. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQL.ssdl
  202. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQL.ssdl
  203. @@ -309,6 +309,7 @@
  204.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  205.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  206.      <Property Name="Advisories" Type="int" Nullable="false" />
  207. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  208.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  209.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  210.      <Property Name="AudioLanguages" Type="varchar" Nullable="true" MaxLength="50" />
  211. @@ -363,6 +364,7 @@
  212.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  213.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  214.      <Property Name="Advisories" Type="int" Nullable="false" />
  215. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  216.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  217.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  218.      <Property Name="IsLive" Type="bit" Nullable="true" />
  219. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQLCE.ssdl b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQLCE.ssdl
  220. index ddbbd69..47ba43e 100644
  221. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQLCE.ssdl
  222. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.MSSQLCE.ssdl
  223. @@ -309,6 +309,7 @@
  224.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  225.      <Property Name="Classification" Type="nvarchar" Nullable="true" MaxLength="200" />
  226.      <Property Name="Advisories" Type="int" Nullable="false" />
  227. +    <Property Name="Icon" Type="nvarchar" Nullable="true" MaxLength="200" />
  228.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  229.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  230.      <Property Name="AudioLanguages" Type="nvarchar" Nullable="true" MaxLength="50" />
  231. @@ -363,6 +364,7 @@
  232.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  233.      <Property Name="Classification" Type="nvarchar" Nullable="true" MaxLength="200" />
  234.      <Property Name="Advisories" Type="int" Nullable="false" />
  235. +    <Property Name="Icon" Type="nvarchar" Nullable="true" MaxLength="200" />
  236.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  237.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  238.      <Property Name="IsLive" Type="bit" Nullable="true" />
  239. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.SQLite.ssdl b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.SQLite.ssdl
  240. index 966d815..3b4a4ef 100644
  241. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.SQLite.ssdl
  242. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.SQLite.ssdl
  243. @@ -309,6 +309,7 @@
  244.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  245.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  246.      <Property Name="Advisories" Type="int" Nullable="false" />
  247. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  248.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  249.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  250.      <Property Name="AudioLanguages" Type="varchar" Nullable="true" MaxLength="50" />
  251. @@ -363,6 +364,7 @@
  252.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  253.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  254.      <Property Name="Advisories" Type="int" Nullable="false" />
  255. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  256.      <Property Name="IsHighDefinition" Type="bit" Nullable="true" />
  257.      <Property Name="IsThreeDimensional" Type="bit" Nullable="true" />
  258.      <Property Name="IsLive" Type="bit" Nullable="true" />
  259. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx
  260. index c1c7019..5daba20 100644
  261. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx
  262. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx
  263. @@ -314,6 +314,7 @@
  264.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  265.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  266.      <Property Name="Advisories" Type="int" Nullable="false" />
  267. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  268.      <Property Name="IsHighDefinition" Type="bool" Nullable="true" />
  269.      <Property Name="IsThreeDimensional" Type="bool" Nullable="true" />
  270.      <Property Name="AudioLanguages" Type="varchar" Nullable="true" MaxLength="50" />
  271. @@ -368,6 +369,7 @@
  272.      <Property Name="IdProgramCategory" Type="int" Nullable="true" />
  273.      <Property Name="Classification" Type="varchar" Nullable="true" MaxLength="200" />
  274.      <Property Name="Advisories" Type="int" Nullable="false" />
  275. +    <Property Name="Icon" Type="varchar" Nullable="true" MaxLength="200" />
  276.      <Property Name="IsHighDefinition" Type="bool" Nullable="true" />
  277.      <Property Name="IsThreeDimensional" Type="bool" Nullable="true" />
  278.      <Property Name="IsLive" Type="bool" Nullable="true" />
  279. @@ -1382,6 +1384,7 @@
  280.            <Property Type="Int32" Name="IdProgramCategory" Nullable="true" />
  281.            <Property Type="String" Name="Classification" Nullable="true" MaxLength="200" Unicode="false" FixedLength="false" />
  282.            <Property Type="Int32" Name="Advisories" Nullable="false" />
  283. +          <Property Type="String" Name="Icon" Nullable="true" MaxLength="200" Unicode="false" FixedLength="false" />
  284.            <Property Type="Boolean" Name="IsHighDefinition" Nullable="true" />
  285.            <Property Type="Boolean" Name="IsThreeDimensional" Nullable="true" />
  286.            <Property Type="String" Name="AudioLanguages" Nullable="true" MaxLength="50" Unicode="false" FixedLength="false" />
  287. @@ -1444,6 +1447,7 @@
  288.            <Property Type="Int32" Name="IdProgramCategory" Nullable="true" />
  289.            <Property Type="String" Name="Classification" Nullable="true" MaxLength="200" Unicode="false" FixedLength="false" />
  290.            <Property Type="Int32" Name="Advisories" Nullable="false" />
  291. +          <Property Type="String" Name="Icon" Nullable="true" MaxLength="200" Unicode="false" FixedLength="false" />
  292.            <Property Type="Boolean" Name="IsHighDefinition" Nullable="true" />
  293.            <Property Type="Boolean" Name="IsThreeDimensional" Nullable="true" />
  294.            <Property Type="Boolean" Name="IsLive" Nullable="true" />
  295. @@ -2303,6 +2307,7 @@
  296.            <ScalarProperty Name="IdProgramCategory" ColumnName="IdProgramCategory" />
  297.            <ScalarProperty Name="Classification" ColumnName="Classification" />
  298.            <ScalarProperty Name="Advisories" ColumnName="Advisories" />
  299. +          <ScalarProperty Name="Icon" ColumnName="Icon" />
  300.            <ScalarProperty Name="IsHighDefinition" ColumnName="IsHighDefinition" />
  301.            <ScalarProperty Name="IsThreeDimensional" ColumnName="IsThreeDimensional" />
  302.            <ScalarProperty Name="AudioLanguages" ColumnName="AudioLanguages" />
  303. @@ -2360,6 +2365,7 @@
  304.            <ScalarProperty Name="IdProgramCategory" ColumnName="IdProgramCategory" />
  305.            <ScalarProperty Name="Classification" ColumnName="Classification" />
  306.            <ScalarProperty Name="Advisories" ColumnName="Advisories" />
  307. +          <ScalarProperty Name="Icon" ColumnName="Icon" />
  308.            <ScalarProperty Name="IsHighDefinition" ColumnName="IsHighDefinition" />
  309.            <ScalarProperty Name="IsThreeDimensional" ColumnName="IsThreeDimensional" />
  310.            <ScalarProperty Name="IsLive" ColumnName="IsLive" />
  311. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx.sql b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx.sql
  312. index b579186..9dd517a 100644
  313. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx.sql
  314. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model.edmx.sql
  315. @@ -254,6 +254,7 @@ CREATE TABLE `Programs`(
  316.     `IdProgramCategory` int,
  317.     `Classification` varchar (200),
  318.     `Advisories` int NOT NULL,
  319. +   `Icon` varchar (200),
  320.     `IsHighDefinition` bool,
  321.     `IsThreeDimensional` bool,
  322.     `AudioLanguages` varchar (50),
  323. @@ -314,6 +315,7 @@ CREATE TABLE `Recordings`(
  324.     `IdProgramCategory` int,
  325.     `Classification` varchar (200),
  326.     `Advisories` int NOT NULL,
  327. +   `Icon` varchar (200),
  328.     `IsHighDefinition` bool,
  329.     `IsThreeDimensional` bool,
  330.     `IsLive` bool,
  331. diff --git a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model_SQLite.edmx.sql b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model_SQLite.edmx.sql
  332. index 0db8dee..b6d41dc 100644
  333. --- a/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model_SQLite.edmx.sql
  334. +++ b/TvEngine3/Mediaportal/TV/Server/TVDatabase/EntityModel/Model_SQLite.edmx.sql
  335. @@ -296,6 +296,7 @@ CREATE TABLE "Programs"  (
  336.      "IdProgramCategory" int NULL,
  337.      "Classification" varchar(200) NULL COLLATE NOCASE,
  338.      "Advisories" int NOT NULL,
  339. +    "Icon" varchar(200) NULL COLLATE NOCASE,
  340.      "IsHighDefinition" bit NULL,
  341.      "IsThreeDimensional" bit NULL,
  342.      "AudioLanguages" varchar(50) NULL COLLATE NOCASE,
  343. @@ -380,6 +381,7 @@ CREATE TABLE "Recordings"  (
  344.      "IdProgramCategory" int NULL,
  345.      "Classification" varchar(200) NULL COLLATE NOCASE,
  346.      "Advisories" int NOT NULL,
  347. +    "Icon" varchar(200) NULL COLLATE NOCASE,
  348.      "IsHighDefinition" bit NULL,
  349.      "IsThreeDimensional" bit NULL,
  350.      "IsLive" bit NULL,
  351. diff --git a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Interfaces/Implementations/EpgProgram.cs b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Interfaces/Implementations/EpgProgram.cs
  352. index cf91d0a..6d3efd5 100644
  353. --- a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Interfaces/Implementations/EpgProgram.cs
  354. +++ b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Interfaces/Implementations/EpgProgram.cs
  355. @@ -42,6 +42,7 @@ namespace Mediaportal.TV.Server.TVLibrary.Interfaces.Implementations
  356.      public IList<string> Categories { get; set; }
  357.      public IDictionary<string, string> Classifications { get; set; }
  358.      public ContentAdvisory Advisories { get; set; }
  359. +    public string Icon { get; set; }
  360.      public bool? IsHighDefinition { get; set; }
  361.      public bool? IsThreeDimensional { get; set; }
  362.      public IList<string> AudioLanguages { get; set; }
  363. @@ -75,6 +76,7 @@ namespace Mediaportal.TV.Server.TVLibrary.Interfaces.Implementations
  364.        Categories = new List<string>();
  365.        Classifications = new Dictionary<string, string>();
  366.        Advisories = ContentAdvisory.None;
  367. +      Icon = null;
  368.        IsHighDefinition = null;
  369.        IsThreeDimensional = null;
  370.        AudioLanguages = new List<string>();
  371. diff --git a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/MatroskaMetaInfo.cs b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/MatroskaMetaInfo.cs
  372. index e3e2edb..21d9189 100644
  373. --- a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/MatroskaMetaInfo.cs
  374. +++ b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/MatroskaMetaInfo.cs
  375. @@ -52,6 +52,7 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  376.      public DateTime? OriginalAirDate = null;
  377.      public string Classification = null;
  378.      public ContentAdvisory Advisories = ContentAdvisory.None;
  379. +    public string Icon = null;
  380.      public bool? IsHighDefinition = null;
  381.      public bool? IsThreeDimensional = null;
  382.      public bool? IsLive = null;
  383. @@ -232,6 +233,12 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  384.                  info.Advisories = advisories;
  385.                }
  386.                break;
  387. +            case "ICON":
  388. +              if (!string.IsNullOrEmpty(tagValue))
  389. +              {
  390. +                info.Icon = tagValue;
  391. +              }
  392. +              break;
  393.              case "IS_HIGH_DEFINITION":
  394.                bool isHighDefinition;
  395.                if (bool.TryParse(tagValue, out isHighDefinition))
  396. @@ -341,6 +348,7 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  397.        tagNode.AppendChild(AddSimpleTag("GENRE", ProgramCategory ?? string.Empty, doc));
  398.        tagNode.AppendChild(AddSimpleTag("CLASSIFICATION", Classification ?? string.Empty, doc));
  399.        tagNode.AppendChild(AddSimpleTag("ADVISORIES", Advisories.ToString(), doc));
  400. +      tagNode.AppendChild(AddSimpleTag("ICON", Icon ?? string.Empty, doc));
  401.        tagNode.AppendChild(AddSimpleTag("IS_HIGH_DEFINITION", IsHighDefinition.ToString(), doc));
  402.        tagNode.AppendChild(AddSimpleTag("IS_THREE_DIMENSIONAL", IsThreeDimensional.ToString(), doc));
  403.        tagNode.AppendChild(AddSimpleTag("IS_LIVE", IsLive.ToString(), doc));
  404. diff --git a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/RecordingImporter.cs b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/RecordingImporter.cs
  405. index c0fe42d..2ae7ece 100644
  406. --- a/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/RecordingImporter.cs
  407. +++ b/TvEngine3/Mediaportal/TV/Server/TvLibrary.Services/DiskManagement/RecordingImporter.cs
  408. @@ -153,6 +153,7 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  409.        r.OriginalAirDate = info.OriginalAirDate;
  410.        r.Classification = info.Classification;
  411.        r.Advisories = (int)info.Advisories;
  412. +      r.Icon = info.Icon;
  413.        r.IsHighDefinition = info.IsHighDefinition;
  414.        r.IsThreeDimensional = info.IsThreeDimensional;
  415.        r.IsLive = info.IsLive;
  416. @@ -224,6 +225,11 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  417.        {
  418.          r.Classification = info.Rating;
  419.        }
  420. +      
  421. +      if (!string.IsNullOrEmpty(info.Icon))
  422. +      {
  423. +        r.Icon = info.Icon;
  424. +      }
  425.  
  426.        Channel channel = GetChannelByMediaTypeAndName(channelsByName, mediaType, new List<string> { info.ChannelDisplayName });
  427.        if (channel != null)
  428. @@ -271,6 +277,7 @@ namespace Mediaportal.TV.Server.TVLibrary.DiskManagement
  429.          r.IsPreviouslyShown = true;
  430.        }
  431.        r.Classification = info.Classification;
  432. +      r.Icon = info.Icon;
  433.        r.IsHighDefinition = info.IsHighDefinition;
  434.        r.IsLive = info.IsLive;
  435.        r.ProductionYear = info.ProductionYear;
  436. diff --git a/TvEngine3/Mediaportal/TV/TvPlugin/EPG/GuideBase.cs b/TvEngine3/Mediaportal/TV/TvPlugin/EPG/GuideBase.cs
  437. index d189193..18abacf 100644
  438. --- a/TvEngine3/Mediaportal/TV/TvPlugin/EPG/GuideBase.cs
  439. +++ b/TvEngine3/Mediaportal/TV/TvPlugin/EPG/GuideBase.cs
  440. @@ -1110,6 +1110,7 @@ namespace Mediaportal.TV.TvPlugin.EPG
  441.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Date", String.Empty);
  442.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.StarRating", String.Empty);
  443.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Classification", String.Empty);
  444. +        GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Icon", String.Empty);
  445.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Duration", String.Empty);
  446.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.DurationMins", String.Empty);
  447.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.TimeFromNow", String.Empty);
  448. @@ -1144,6 +1145,7 @@ namespace Mediaportal.TV.TvPlugin.EPG
  449.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.TimeFromNow", GetStartTimeFromNow(_currentProgram.Entity));
  450.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Episode", _currentProgram.Entity.EpisodeNumber > 0 ? _currentProgram.Entity.EpisodeNumber.ToString() : string.Empty);
  451.          GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.SubTitle", _currentProgram.Entity.EpisodeName ?? string.Empty);
  452. +        GUIPropertyManager.SetProperty(SkinPropertyPrefix + ".Guide.Icon", _currentProgram.Entity.Icon ?? string.Empty);
  453.  
  454.          if (string.IsNullOrEmpty(_currentProgram.Entity.Classification))
  455.          {
  456. diff --git a/mediaportal/Core/guilib/DownloadedImage.cs b/mediaportal/Core/guilib/DownloadedImage.cs
  457. index e29e5a0..26a8a15 100644
  458. --- a/mediaportal/Core/guilib/DownloadedImage.cs
  459. +++ b/mediaportal/Core/guilib/DownloadedImage.cs
  460. @@ -50,10 +50,12 @@ namespace MediaPortal.GUI.Library
  461.        {
  462.          string tempFile = Config.GetFile(Config.Dir.Thumbs, String.Format("MPTemp{0}.gif", x));
  463.          string tempFile2 = Config.GetFile(Config.Dir.Thumbs, String.Format("MPTemp{0}.jpg", x));
  464. -        string tempFile3 = Config.GetFile(Config.Dir.Thumbs, String.Format("MPTemp{0}.bmp", x));
  465. +        string tempFile3 = Config.GetFile(Config.Dir.Thumbs, String.Format("MPTemp{0}.png", x));
  466. +        string tempFile4 = Config.GetFile(Config.Dir.Thumbs, String.Format("MPTemp{0}.bmp", x));
  467.          if (!File.Exists(tempFile) &&
  468.              !File.Exists(tempFile2) &&
  469. -            !File.Exists(tempFile3))
  470. +            !File.Exists(tempFile3) &&
  471. +            !File.Exists(tempFile4))
  472.          {
  473.            return tempFile;
  474.          }
  475. @@ -126,6 +128,10 @@ namespace MediaPortal.GUI.Library
  476.              {
  477.                extension = ".jpg";
  478.              }
  479. +            if (contentType.IndexOf("png") >= 0)
  480. +            {
  481. +              extension = ".png";
  482. +            }
  483.              if (contentType.IndexOf("bmp") >= 0)
  484.              {
  485.                extension = ".bmp";
  486. diff --git a/mediaportal/Core/guilib/GUITextureManager.cs b/mediaportal/Core/guilib/GUITextureManager.cs
  487. index 45fdc68..e6e3025 100644
  488. --- a/mediaportal/Core/guilib/GUITextureManager.cs
  489. +++ b/mediaportal/Core/guilib/GUITextureManager.cs
  490. @@ -158,7 +158,7 @@ namespace MediaPortal.GUI.Library
  491.          return "";
  492.        }
  493.        string lowerFileName = fileName.ToLowerInvariant().Trim();
  494. -      if (lowerFileName.IndexOf(@"http:") >= 0)
  495. +      if (lowerFileName.IndexOf(@"http:") >= 0 || lowerFileName.IndexOf(@"https:") >= 0)
  496.        {
  497.          DownloadedImage image;
  498.          if (!_cacheDownload.TryGetValue(lowerFileName, out image))
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top