update resolved video titles
This commit is contained in:
parent
66ad10348f
commit
bc656edf4f
|
@ -681,11 +681,9 @@
|
||||||
<EmbeddedResource Include="Localization\Core\ca.json" />
|
<EmbeddedResource Include="Localization\Core\ca.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\cs.json" />
|
<EmbeddedResource Include="Localization\Core\cs.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\da.json" />
|
<EmbeddedResource Include="Localization\Core\da.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\de-DE.json" />
|
|
||||||
<EmbeddedResource Include="Localization\Core\de.json" />
|
<EmbeddedResource Include="Localization\Core\de.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\en-GB.json" />
|
<EmbeddedResource Include="Localization\Core\en-GB.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\es-AR.json" />
|
<EmbeddedResource Include="Localization\Core\es-AR.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\es-ES.json" />
|
|
||||||
<EmbeddedResource Include="Localization\Core\es-MX.json" />
|
<EmbeddedResource Include="Localization\Core\es-MX.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\es.json" />
|
<EmbeddedResource Include="Localization\Core\es.json" />
|
||||||
<EmbeddedResource Include="Localization\Core\fr-CA.json" />
|
<EmbeddedResource Include="Localization\Core\fr-CA.json" />
|
||||||
|
|
|
@ -69,13 +69,13 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.MusicVideos, StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(collectionType, CollectionType.MusicVideos, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return ResolveVideos<MusicVideo>(parent, files, directoryService, true, collectionType);
|
return ResolveVideos<MusicVideo>(parent, files, directoryService, true, collectionType, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.HomeVideos, StringComparison.OrdinalIgnoreCase) ||
|
if (string.Equals(collectionType, CollectionType.HomeVideos, StringComparison.OrdinalIgnoreCase) ||
|
||||||
string.Equals(collectionType, CollectionType.Photos, StringComparison.OrdinalIgnoreCase))
|
string.Equals(collectionType, CollectionType.Photos, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return ResolveVideos<Video>(parent, files, directoryService, false, collectionType);
|
return ResolveVideos<Video>(parent, files, directoryService, false, collectionType, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(collectionType))
|
if (string.IsNullOrWhiteSpace(collectionType))
|
||||||
|
@ -83,7 +83,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
// Owned items should just use the plain video type
|
// Owned items should just use the plain video type
|
||||||
if (parent == null)
|
if (parent == null)
|
||||||
{
|
{
|
||||||
return ResolveVideos<Video>(parent, files, directoryService, false, collectionType);
|
return ResolveVideos<Video>(parent, files, directoryService, false, collectionType, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (parent is Series || parent.GetParents().OfType<Series>().Any())
|
if (parent is Series || parent.GetParents().OfType<Series>().Any())
|
||||||
|
@ -91,18 +91,18 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ResolveVideos<Movie>(parent, files, directoryService, false, collectionType);
|
return ResolveVideos<Movie>(parent, files, directoryService, false, collectionType, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.Movies, StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(collectionType, CollectionType.Movies, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return ResolveVideos<Movie>(parent, files, directoryService, true, collectionType);
|
return ResolveVideos<Movie>(parent, files, directoryService, true, collectionType, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private MultiItemResolverResult ResolveVideos<T>(Folder parent, IEnumerable<FileSystemMetadata> fileSystemEntries, IDirectoryService directoryService, bool suppportMultiEditions, string collectionType)
|
private MultiItemResolverResult ResolveVideos<T>(Folder parent, IEnumerable<FileSystemMetadata> fileSystemEntries, IDirectoryService directoryService, bool suppportMultiEditions, string collectionType, bool parseName)
|
||||||
where T : Video, new()
|
where T : Video, new()
|
||||||
{
|
{
|
||||||
var files = new List<FileSystemMetadata>();
|
var files = new List<FileSystemMetadata>();
|
||||||
|
@ -158,7 +158,9 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
Path = video.Files[0].Path,
|
Path = video.Files[0].Path,
|
||||||
IsInMixedFolder = isInMixedFolder,
|
IsInMixedFolder = isInMixedFolder,
|
||||||
ProductionYear = video.Year,
|
ProductionYear = video.Year,
|
||||||
Name = video.Name,
|
Name = parseName ?
|
||||||
|
video.Name :
|
||||||
|
Path.GetFileName(video.Files[0].Path),
|
||||||
AdditionalParts = video.Files.Skip(1).Select(i => i.Path).ToArray(),
|
AdditionalParts = video.Files.Skip(1).Select(i => i.Path).ToArray(),
|
||||||
LocalAlternateVersions = video.AlternateVersions.Select(i => i.Path).ToArray()
|
LocalAlternateVersions = video.AlternateVersions.Select(i => i.Path).ToArray()
|
||||||
};
|
};
|
||||||
|
@ -214,12 +216,12 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.MusicVideos, StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(collectionType, CollectionType.MusicVideos, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return FindMovie<MusicVideo>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true);
|
return FindMovie<MusicVideo>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.HomeVideos, StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(collectionType, CollectionType.HomeVideos, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return FindMovie<Video>(args.Path, args.Parent, files, args.DirectoryService, collectionType, false);
|
return FindMovie<Video>(args.Path, args.Parent, files, args.DirectoryService, collectionType, false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(collectionType))
|
if (string.IsNullOrEmpty(collectionType))
|
||||||
|
@ -237,13 +239,13 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
return FindMovie<Movie>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true);
|
return FindMovie<Movie>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.Equals(collectionType, CollectionType.Movies, StringComparison.OrdinalIgnoreCase))
|
if (string.Equals(collectionType, CollectionType.Movies, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
return FindMovie<Movie>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true);
|
return FindMovie<Movie>(args.Path, args.Parent, files, args.DirectoryService, collectionType, true, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
|
@ -359,7 +361,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <typeparam name="T"></typeparam>
|
/// <typeparam name="T"></typeparam>
|
||||||
/// <returns>Movie.</returns>
|
/// <returns>Movie.</returns>
|
||||||
private T FindMovie<T>(string path, Folder parent, List<FileSystemMetadata> fileSystemEntries, IDirectoryService directoryService, string collectionType, bool allowFilesAsFolders)
|
private T FindMovie<T>(string path, Folder parent, List<FileSystemMetadata> fileSystemEntries, IDirectoryService directoryService, string collectionType, bool allowFilesAsFolders, bool parseName)
|
||||||
where T : Video, new()
|
where T : Video, new()
|
||||||
{
|
{
|
||||||
var multiDiscFolders = new List<FileSystemMetadata>();
|
var multiDiscFolders = new List<FileSystemMetadata>();
|
||||||
|
@ -413,7 +415,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
|
||||||
!string.Equals(collectionType, CollectionType.Photos) &&
|
!string.Equals(collectionType, CollectionType.Photos) &&
|
||||||
!string.Equals(collectionType, CollectionType.MusicVideos);
|
!string.Equals(collectionType, CollectionType.MusicVideos);
|
||||||
|
|
||||||
var result = ResolveVideos<T>(parent, fileSystemEntries, directoryService, supportsMultiVersion, collectionType) ??
|
var result = ResolveVideos<T>(parent, fileSystemEntries, directoryService, supportsMultiVersion, collectionType, parseName) ??
|
||||||
new MultiItemResolverResult();
|
new MultiItemResolverResult();
|
||||||
|
|
||||||
if (result.Items.Count == 1)
|
if (result.Items.Count == 1)
|
||||||
|
|
|
@ -160,7 +160,7 @@ namespace Emby.Server.Implementations.Notifications
|
||||||
Update(type);
|
Update(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
var systemName = _localization.GetLocalizedString("CategorySystem");
|
var systemName = _localization.GetLocalizedString("System");
|
||||||
|
|
||||||
return knownTypes.OrderByDescending(i => string.Equals(i.Category, systemName, StringComparison.OrdinalIgnoreCase))
|
return knownTypes.OrderByDescending(i => string.Equals(i.Category, systemName, StringComparison.OrdinalIgnoreCase))
|
||||||
.ThenBy(i => i.Category)
|
.ThenBy(i => i.Category)
|
||||||
|
@ -175,23 +175,23 @@ namespace Emby.Server.Implementations.Notifications
|
||||||
|
|
||||||
if (note.Type.IndexOf("Playback", StringComparison.OrdinalIgnoreCase) != -1)
|
if (note.Type.IndexOf("Playback", StringComparison.OrdinalIgnoreCase) != -1)
|
||||||
{
|
{
|
||||||
note.Category = _localization.GetLocalizedString("CategoryUser");
|
note.Category = _localization.GetLocalizedString("User");
|
||||||
}
|
}
|
||||||
else if (note.Type.IndexOf("Plugin", StringComparison.OrdinalIgnoreCase) != -1)
|
else if (note.Type.IndexOf("Plugin", StringComparison.OrdinalIgnoreCase) != -1)
|
||||||
{
|
{
|
||||||
note.Category = _localization.GetLocalizedString("CategoryPlugin");
|
note.Category = _localization.GetLocalizedString("Plugin");
|
||||||
}
|
}
|
||||||
else if (note.Type.IndexOf("CameraImageUploaded", StringComparison.OrdinalIgnoreCase) != -1)
|
else if (note.Type.IndexOf("CameraImageUploaded", StringComparison.OrdinalIgnoreCase) != -1)
|
||||||
{
|
{
|
||||||
note.Category = _localization.GetLocalizedString("CategorySync");
|
note.Category = _localization.GetLocalizedString("Sync");
|
||||||
}
|
}
|
||||||
else if (note.Type.IndexOf("UserLockedOut", StringComparison.OrdinalIgnoreCase) != -1)
|
else if (note.Type.IndexOf("UserLockedOut", StringComparison.OrdinalIgnoreCase) != -1)
|
||||||
{
|
{
|
||||||
note.Category = _localization.GetLocalizedString("CategoryUser");
|
note.Category = _localization.GetLocalizedString("User");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
note.Category = _localization.GetLocalizedString("CategorySystem");
|
note.Category = _localization.GetLocalizedString("System");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,24 +124,24 @@ namespace MediaBrowser.Api
|
||||||
{
|
{
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeInherit",
|
Name = "Inherit",
|
||||||
Value = ""
|
Value = ""
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeMovies",
|
Name = "Movies",
|
||||||
Value = "movies"
|
Value = "movies"
|
||||||
});
|
});
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeMusic",
|
Name = "Music",
|
||||||
Value = "music"
|
Value = "music"
|
||||||
});
|
});
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeTvShows",
|
Name = "Shows",
|
||||||
Value = "tvshows"
|
Value = "tvshows"
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -149,29 +149,29 @@ namespace MediaBrowser.Api
|
||||||
{
|
{
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeBooks",
|
Name = "Books",
|
||||||
Value = "books"
|
Value = "books"
|
||||||
});
|
});
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeGames",
|
Name = "Games",
|
||||||
Value = "games"
|
Value = "games"
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeHomeVideos",
|
Name = "HomeVideos",
|
||||||
Value = "homevideos"
|
Value = "homevideos"
|
||||||
});
|
});
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeMusicVideos",
|
Name = "MusicVideos",
|
||||||
Value = "musicvideos"
|
Value = "musicvideos"
|
||||||
});
|
});
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypePhotos",
|
Name = "Photos",
|
||||||
Value = "photos"
|
Value = "photos"
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -179,7 +179,7 @@ namespace MediaBrowser.Api
|
||||||
{
|
{
|
||||||
list.Add(new NameValuePair
|
list.Add(new NameValuePair
|
||||||
{
|
{
|
||||||
Name = "FolderTypeMixed",
|
Name = "MixedContent",
|
||||||
Value = ""
|
Value = ""
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -947,9 +947,9 @@ namespace MediaBrowser.Api.LiveTv
|
||||||
|
|
||||||
public object Get(GetChannel request)
|
public object Get(GetChannel request)
|
||||||
{
|
{
|
||||||
var user = string.IsNullOrWhiteSpace(request.UserId) ? null : _userManager.GetUserById(request.UserId);
|
var user = _userManager.GetUserById(request.UserId);
|
||||||
|
|
||||||
var item = _libraryManager.GetItemById(request.Id);
|
var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : _libraryManager.GetItemById(request.Id);
|
||||||
|
|
||||||
var dtoOptions = GetDtoOptions(_authContext, request);
|
var dtoOptions = GetDtoOptions(_authContext, request);
|
||||||
|
|
||||||
|
@ -1098,12 +1098,13 @@ namespace MediaBrowser.Api.LiveTv
|
||||||
|
|
||||||
public async Task<object> Get(GetRecording request)
|
public async Task<object> Get(GetRecording request)
|
||||||
{
|
{
|
||||||
var user = string.IsNullOrEmpty(request.UserId) ? null : _userManager.GetUserById(request.UserId);
|
var user = _userManager.GetUserById(request.UserId);
|
||||||
|
|
||||||
var options = new DtoOptions();
|
var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : _libraryManager.GetItemById(request.Id);
|
||||||
options.DeviceId = _authContext.GetAuthorizationInfo(Request).DeviceId;
|
|
||||||
|
|
||||||
var result = await _liveTvManager.GetRecording(request.Id, options, CancellationToken.None, user).ConfigureAwait(false);
|
var dtoOptions = GetDtoOptions(_authContext, request);
|
||||||
|
|
||||||
|
var result = _dtoService.GetBaseItemDto(item, dtoOptions, user);
|
||||||
|
|
||||||
return ToOptimizedSerializedResultUsingCache(result);
|
return ToOptimizedSerializedResultUsingCache(result);
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,16 +75,6 @@ namespace MediaBrowser.Controller.LiveTv
|
||||||
/// <param name="listingProviders">The listing providers.</param>
|
/// <param name="listingProviders">The listing providers.</param>
|
||||||
void AddParts(IEnumerable<ILiveTvService> services, IEnumerable<ITunerHost> tunerHosts, IEnumerable<IListingsProvider> listingProviders);
|
void AddParts(IEnumerable<ILiveTvService> services, IEnumerable<ITunerHost> tunerHosts, IEnumerable<IListingsProvider> listingProviders);
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the recording.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">The identifier.</param>
|
|
||||||
/// <param name="options">The options.</param>
|
|
||||||
/// <param name="cancellationToken">The cancellation token.</param>
|
|
||||||
/// <param name="user">The user.</param>
|
|
||||||
/// <returns>Task{RecordingInfoDto}.</returns>
|
|
||||||
Task<BaseItemDto> GetRecording(string id, DtoOptions options, CancellationToken cancellationToken, User user = null);
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the timer.
|
/// Gets the timer.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -127,11 +127,6 @@ namespace MediaBrowser.Controller.MediaEncoding
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool EnableMpDecimate
|
|
||||||
{
|
|
||||||
get { return MediaSource.EnableMpDecimate; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public string AlbumCoverPath { get; set; }
|
public string AlbumCoverPath { get; set; }
|
||||||
|
|
||||||
public string InputAudioSync { get; set; }
|
public string InputAudioSync { get; set; }
|
||||||
|
|
|
@ -40,7 +40,6 @@ namespace MediaBrowser.Model.Dto
|
||||||
public string OpenToken { get; set; }
|
public string OpenToken { get; set; }
|
||||||
public bool RequiresClosing { get; set; }
|
public bool RequiresClosing { get; set; }
|
||||||
public bool SupportsProbing { get; set; }
|
public bool SupportsProbing { get; set; }
|
||||||
public bool EnableMpDecimate { get; set; }
|
|
||||||
public string LiveStreamId { get; set; }
|
public string LiveStreamId { get; set; }
|
||||||
public int? BufferMs { get; set; }
|
public int? BufferMs { get; set; }
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,6 @@ namespace MediaBrowser.Model.LiveTv
|
||||||
public bool ImportFavoritesOnly { get; set; }
|
public bool ImportFavoritesOnly { get; set; }
|
||||||
public bool AllowHWTranscoding { get; set; }
|
public bool AllowHWTranscoding { get; set; }
|
||||||
public bool EnableStreamLooping { get; set; }
|
public bool EnableStreamLooping { get; set; }
|
||||||
public bool EnableMpDecimate { get; set; }
|
|
||||||
public bool EnableNewHdhrChannelIds { get; set; }
|
public bool EnableNewHdhrChannelIds { get; set; }
|
||||||
public string Source { get; set; }
|
public string Source { get; set; }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user