aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-15 18:12:16 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-15 18:12:16 -0400
commitac2ca1fec211d7793c3cacc219204515aa4defe8 (patch)
treea062a9b10eda97d6015848c7527aea34839a9e7a
parentd517aadc1c79337fe0e1e7d1de3f72484b2fb91c (diff)
update recording dialogs
-rw-r--r--MediaBrowser.Controller/Entities/InternalItemsQuery.cs2
-rw-r--r--MediaBrowser.Model/Entities/MediaStream.cs15
-rw-r--r--MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs1
-rw-r--r--MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs6
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs9
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs13
6 files changed, 31 insertions, 15 deletions
diff --git a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
index fec703b94..3fb118a9c 100644
--- a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
+++ b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
@@ -182,7 +182,7 @@ namespace MediaBrowser.Controller.Entities
case ItemFields.HomePageUrl:
case ItemFields.VoteCount:
case ItemFields.DisplayMediaType:
- case ItemFields.ServiceName:
+ //case ItemFields.ServiceName:
case ItemFields.Genres:
case ItemFields.Studios:
case ItemFields.Settings:
diff --git a/MediaBrowser.Model/Entities/MediaStream.cs b/MediaBrowser.Model/Entities/MediaStream.cs
index 990de332e..6d3e2ce4c 100644
--- a/MediaBrowser.Model/Entities/MediaStream.cs
+++ b/MediaBrowser.Model/Entities/MediaStream.cs
@@ -1,4 +1,5 @@
-using System.Collections.Generic;
+using System;
+using System.Collections.Generic;
using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Extensions;
using System.Diagnostics;
@@ -47,7 +48,7 @@ namespace MediaBrowser.Model.Entities
{
if (!string.IsNullOrEmpty(Title))
{
- return Title;
+ return AddLanguageIfNeeded(Title);
}
if (Type == MediaStreamType.Audio)
@@ -115,6 +116,16 @@ namespace MediaBrowser.Model.Entities
}
}
+ private string AddLanguageIfNeeded(string title)
+ {
+ if (!string.IsNullOrEmpty(Language) && title.IndexOf(Language, StringComparison.OrdinalIgnoreCase) == -1)
+ {
+ title = StringHelper.FirstToUpper(Language) + " " + title;
+ }
+
+ return title;
+ }
+
public string NalLengthSize { get; set; }
/// <summary>
diff --git a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs b/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs
index e7bfe56f2..716d627a9 100644
--- a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs
+++ b/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs
@@ -360,6 +360,7 @@ namespace MediaBrowser.Server.Implementations.Library
public async Task<LiveStreamResponse> OpenLiveStream(LiveStreamRequest request, bool enableAutoClose, CancellationToken cancellationToken)
{
+ enableAutoClose = false;
await _liveStreamSemaphore.WaitAsync(cancellationToken).ConfigureAwait(false);
try
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
index 1e480e265..3217cd67b 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
+++ b/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
@@ -85,6 +85,12 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
{
if (args.ContainsFileSystemEntryByName("tvshow.nfo"))
{
+ if (args.Parent.IsRoot)
+ {
+ // For now, return null, but if we want to allow this in the future then add some additional checks to guard against a misplaced tvshow.nfo
+ return null;
+ }
+
return new Series
{
Path = args.Path,
diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
index bac9789b5..aa404b37c 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
@@ -1752,7 +1752,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv
public async Task AddInfoToProgramDto(List<Tuple<BaseItem, BaseItemDto>> tuples, List<ItemFields> fields, User user = null)
{
- var recordingTuples = new List<Tuple<BaseItemDto, string, string, string>>();
+ var programTuples = new List<Tuple<BaseItemDto, string, string, string>>();
foreach (var tuple in tuples)
{
@@ -1812,18 +1812,17 @@ namespace MediaBrowser.Server.Implementations.LiveTv
}
}
- var service = GetService(program);
- var serviceName = service == null ? null : service.Name;
+ var serviceName = program.ServiceName;
if (fields.Contains(ItemFields.ServiceName))
{
dto.ServiceName = serviceName;
}
- recordingTuples.Add(new Tuple<BaseItemDto, string, string, string>(dto, serviceName, program.ExternalId, program.ExternalSeriesIdLegacy));
+ programTuples.Add(new Tuple<BaseItemDto, string, string, string>(dto, serviceName, program.ExternalId, program.ExternalSeriesIdLegacy));
}
- await AddRecordingInfo(recordingTuples, CancellationToken.None).ConfigureAwait(false);
+ await AddRecordingInfo(programTuples, CancellationToken.None).ConfigureAwait(false);
}
public void AddInfoToRecordingDto(BaseItem item, BaseItemDto dto, User user = null)
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
index 2235bfe0d..f33b18389 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
@@ -1188,7 +1188,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
public ItemImageInfo ItemImageInfoFromValueString(string value)
{
- var parts = value.Split(new[] { '*' }, StringSplitOptions.RemoveEmptyEntries);
+ var parts = value.Split(new[] { '*' }, StringSplitOptions.None);
var image = new ItemImageInfo();
@@ -1633,14 +1633,13 @@ namespace MediaBrowser.Server.Implementations.Persistence
}
index++;
- if (query.HasField(ItemFields.ServiceName))
+ // TODO: Even if not needed by apps, the server needs it internally
+ // But get this excluded from contexts where it is not needed
+ if (!reader.IsDBNull(index))
{
- if (!reader.IsDBNull(index))
- {
- item.ServiceName = reader.GetString(index);
- }
- index++;
+ item.ServiceName = reader.GetString(index);
}
+ index++;
if (!reader.IsDBNull(index))
{