diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-08-28 00:19:08 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-08-28 00:19:08 -0400 |
| commit | a0c3bb03809612763f7b06d4f82d2a44a6ed4182 (patch) | |
| tree | 641b7a3fdfd906d07237fc60b681864c26b040fe /MediaBrowser.Server.Implementations | |
| parent | 64945eb171f691cc6de6371ad48be178eb38d5c6 (diff) | |
update live tv image
Diffstat (limited to 'MediaBrowser.Server.Implementations')
15 files changed, 74 insertions, 49 deletions
diff --git a/MediaBrowser.Server.Implementations/Connect/ConnectEntryPoint.cs b/MediaBrowser.Server.Implementations/Connect/ConnectEntryPoint.cs index 973519a77..8a659fb65 100644 --- a/MediaBrowser.Server.Implementations/Connect/ConnectEntryPoint.cs +++ b/MediaBrowser.Server.Implementations/Connect/ConnectEntryPoint.cs @@ -41,7 +41,7 @@ namespace MediaBrowser.Server.Implementations.Connect _timer = new Timer(TimerCallback, null, TimeSpan.FromSeconds(5), TimeSpan.FromHours(3)); } - private readonly string[] _ipLookups = { "http://bot.whatismyipaddress.com", "https://connect.mediabrowser.tv/service/ip" }; + private readonly string[] _ipLookups = { "http://bot.whatismyipaddress.com", "https://connect.emby.media/service/ip" }; private async void TimerCallback(object state) { diff --git a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs index 4569503c0..7cd96c5f3 100644 --- a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs +++ b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs @@ -371,7 +371,7 @@ namespace MediaBrowser.Server.Implementations.Connect private string GetConnectUrl(string handler) { - return "https://connect.mediabrowser.tv/service/" + handler; + return "https://connect.emby.media/service/" + handler; } public async Task<UserLinkResult> LinkUser(string userId, string connectUsername) diff --git a/MediaBrowser.Server.Implementations/Library/MusicManager.cs b/MediaBrowser.Server.Implementations/Library/MusicManager.cs index b83256342..683e6c5cc 100644 --- a/MediaBrowser.Server.Implementations/Library/MusicManager.cs +++ b/MediaBrowser.Server.Implementations/Library/MusicManager.cs @@ -52,6 +52,18 @@ namespace MediaBrowser.Server.Implementations.Library return GetInstantMixFromGenres(genres, user); } + public IEnumerable<Audio> GetInstantMixFromFolder(Folder item, User user) + { + var genres = item + .GetRecursiveChildren(user, i => i is Audio) + .Cast<Audio>() + .SelectMany(i => i.Genres) + .Concat(item.Genres) + .DistinctNames(); + + return GetInstantMixFromGenres(genres, user); + } + public IEnumerable<Audio> GetInstantMixFromPlaylist(Playlist item, User user) { var genres = item @@ -113,6 +125,12 @@ namespace MediaBrowser.Server.Implementations.Library { return GetInstantMixFromSong(song, user); } + + var folder = item as Folder; + if (folder != null) + { + return GetInstantMixFromFolder(folder, user); + } return new Audio[] { }; } diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj index b2da2489d..f0312cef6 100644 --- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj +++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj @@ -495,14 +495,6 @@ <Link>swagger-ui\swagger-ui.min.js</Link> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> - <EmbeddedResource Include="UserViews\livetv\1.jpg" /> - <EmbeddedResource Include="UserViews\livetv\2.jpg" /> - <EmbeddedResource Include="UserViews\livetv\3.jpg" /> - <EmbeddedResource Include="UserViews\livetv\4.jpg" /> - <EmbeddedResource Include="UserViews\livetv\5.jpg" /> - <EmbeddedResource Include="UserViews\livetv\6.jpg" /> - <EmbeddedResource Include="UserViews\livetv\7.jpg" /> - <EmbeddedResource Include="UserViews\livetv\8.jpg" /> <EmbeddedResource Include="Localization\iso6392.txt" /> <EmbeddedResource Include="Localization\Ratings\be.txt" /> </ItemGroup> diff --git a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs index 7a993b7db..d913063c8 100644 --- a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs +++ b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs @@ -46,9 +46,16 @@ namespace MediaBrowser.Server.Implementations.Persistence public async Task Execute(CancellationToken cancellationToken, IProgress<double> progress) { var innerProgress = new ActionableProgress<double>(); - innerProgress.RegisterAction(progress.Report); + innerProgress.RegisterAction(p => progress.Report(.95 * p)); await UpdateToLatestSchema(cancellationToken, innerProgress).ConfigureAwait(false); + + innerProgress = new ActionableProgress<double>(); + innerProgress.RegisterAction(p => progress.Report(95 + (.05 * p))); + + //await CleanDeadItems(cancellationToken, innerProgress).ConfigureAwait(false); + + progress.Report(100); } private async Task UpdateToLatestSchema(CancellationToken cancellationToken, IProgress<double> progress) @@ -92,6 +99,43 @@ namespace MediaBrowser.Server.Implementations.Persistence progress.Report(100); } + private async Task CleanDeadItems(CancellationToken cancellationToken, IProgress<double> progress) + { + var itemIds = _libraryManager.GetItemIds(new InternalItemsQuery + { + HasDeadParentId = true + }); + + var numComplete = 0; + var numItems = itemIds.Count; + + _logger.Debug("Cleaning {0} items with dead parent links", numItems); + + foreach (var itemId in itemIds) + { + cancellationToken.ThrowIfCancellationRequested(); + + var item = _libraryManager.GetItemById(itemId); + + if (item != null) + { + _logger.Debug("Cleaning item {0} type: {1} path: {2}", item.Name, item.GetType().Name, item.Path ?? string.Empty); + + await _libraryManager.DeleteItem(item, new DeleteOptions + { + DeleteFileLocation = false + }); + } + + numComplete++; + double percent = numComplete; + percent /= numItems; + progress.Report(percent * 100); + } + + progress.Report(100); + } + public IEnumerable<ITaskTrigger> GetDefaultTriggers() { return new ITaskTrigger[] diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs index 04f09602f..00ebf7ea6 100644 --- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs +++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs @@ -1096,6 +1096,14 @@ namespace MediaBrowser.Server.Implementations.Persistence } } + if (query.HasDeadParentId.HasValue) + { + if (query.HasDeadParentId.Value) + { + whereClauses.Add("ParentId NOT NULL AND ParentId NOT IN (select guid from TypedBaseItems)"); + } + } + if (addPaging) { if (query.StartIndex.HasValue && query.StartIndex.Value > 0) diff --git a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs index b11a7d167..c2ddf3c43 100644 --- a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs +++ b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs @@ -11,8 +11,6 @@ using MediaBrowser.Server.Implementations.Photos; using MoreLinq; using System; using System.Collections.Generic; -using System.Globalization; -using System.IO; using System.Linq; using System.Threading.Tasks; @@ -154,7 +152,6 @@ namespace MediaBrowser.Server.Implementations.UserViews CollectionType.BoxSets, CollectionType.Playlists, CollectionType.Channels, - CollectionType.LiveTv, CollectionType.Books, CollectionType.Photos, CollectionType.HomeVideos, @@ -170,7 +167,7 @@ namespace MediaBrowser.Server.Implementations.UserViews var view = (UserView)item; if (imageType == ImageType.Primary && IsUsingCollectionStrip(view)) { - if (itemsWithImages.Count == 0 && !string.Equals(view.ViewType, CollectionType.LiveTv, StringComparison.OrdinalIgnoreCase)) + if (itemsWithImages.Count == 0) { return false; } @@ -180,39 +177,5 @@ namespace MediaBrowser.Server.Implementations.UserViews return await base.CreateImage(item, itemsWithImages, outputPath, imageType, imageIndex).ConfigureAwait(false); } - - protected override IEnumerable<String> GetStripCollageImagePaths(IHasImages primaryItem, IEnumerable<BaseItem> items) - { - var userView = primaryItem as UserView; - - if (userView != null && string.Equals(userView.ViewType, CollectionType.LiveTv, StringComparison.OrdinalIgnoreCase)) - { - var list = new List<string>(); - for (int i = 1; i <= 8; i++) - { - list.Add(ExtractLiveTvResource(i.ToString(CultureInfo.InvariantCulture), ApplicationPaths)); - } - return list; - } - - return base.GetStripCollageImagePaths(primaryItem, items); - } - - private string ExtractLiveTvResource(string name, IApplicationPaths paths) - { - var namespacePath = GetType().Namespace + ".livetv." + name + ".jpg"; - var tempPath = Path.Combine(paths.TempDirectory, Guid.NewGuid().ToString("N") + ".jpg"); - Directory.CreateDirectory(Path.GetDirectoryName(tempPath)); - - using (var stream = GetType().Assembly.GetManifestResourceStream(namespacePath)) - { - using (var fileStream = new FileStream(tempPath, FileMode.Create, FileAccess.Write, FileShare.Read)) - { - stream.CopyTo(fileStream); - } - } - - return tempPath; - } } } diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/1.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/1.jpg Binary files differdeleted file mode 100644 index 2594b68a4..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/1.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/2.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/2.jpg Binary files differdeleted file mode 100644 index e5c87b96b..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/2.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/3.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/3.jpg Binary files differdeleted file mode 100644 index c19f7e612..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/3.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/4.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/4.jpg Binary files differdeleted file mode 100644 index 93ee18044..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/4.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/5.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/5.jpg Binary files differdeleted file mode 100644 index 4c2cd580d..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/5.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/6.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/6.jpg Binary files differdeleted file mode 100644 index 6f496b6ac..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/6.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/7.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/7.jpg Binary files differdeleted file mode 100644 index e7dba2760..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/7.jpg +++ /dev/null diff --git a/MediaBrowser.Server.Implementations/UserViews/livetv/8.jpg b/MediaBrowser.Server.Implementations/UserViews/livetv/8.jpg Binary files differdeleted file mode 100644 index c69ba908c..000000000 --- a/MediaBrowser.Server.Implementations/UserViews/livetv/8.jpg +++ /dev/null |
