From b1be4939dfd35f0bc11097e40bfee536fead8d4f Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Mon, 13 Jul 2015 17:26:11 -0400 Subject: [PATCH] update components --- .../Updates/InstallationManager.cs | 2 +- MediaBrowser.Model/Dlna/StreamBuilder.cs | 10 ++++---- .../Manager/MetadataService.cs | 3 +-- .../MediaInfo/FFProbeProvider.cs | 2 +- .../Library/LibraryManager.cs | 21 +++++++++-------- .../Localization/Server/server.json | 3 ++- .../Sync/CloudSyncProfile.cs | 14 +++++++++++ .../Api/DashboardService.cs | 8 +++++-- .../Api/PackageCreator.cs | 9 ++------ .../MediaBrowser.WebDashboard.csproj | 23 +++++++++++-------- MediaBrowser.XbmcMetadata/EntryPoint.cs | 6 ++--- 11 files changed, 60 insertions(+), 41 deletions(-) diff --git a/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs b/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs index 264e63b47f..23785083b6 100644 --- a/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs +++ b/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs @@ -195,7 +195,7 @@ namespace MediaBrowser.Common.Implementations.Updates cacheLength = TimeSpan.FromMinutes(3); break; default: - cacheLength = TimeSpan.FromHours(3); + cacheLength = TimeSpan.FromHours(24); break; } diff --git a/MediaBrowser.Model/Dlna/StreamBuilder.cs b/MediaBrowser.Model/Dlna/StreamBuilder.cs index 340af3ac1a..ab14923917 100644 --- a/MediaBrowser.Model/Dlna/StreamBuilder.cs +++ b/MediaBrowser.Model/Dlna/StreamBuilder.cs @@ -362,8 +362,8 @@ namespace MediaBrowser.Model.Dlna MediaStream videoStream = item.VideoStream; // TODO: This doesn't accout for situation of device being able to handle media bitrate, but wifi connection not fast enough - bool isEligibleForDirectPlay = IsEligibleForDirectPlay(item, GetBitrateForDirectPlayCheck(item, options), subtitleStream, options); - bool isEligibleForDirectStream = IsEligibleForDirectPlay(item, options.GetMaxBitrate(), subtitleStream, options); + bool isEligibleForDirectPlay = IsEligibleForDirectPlay(item, GetBitrateForDirectPlayCheck(item, options), subtitleStream, options, PlayMethod.DirectPlay); + bool isEligibleForDirectStream = IsEligibleForDirectPlay(item, options.GetMaxBitrate(), subtitleStream, options, PlayMethod.DirectStream); _logger.Debug("Profile: {0}, Path: {1}, isEligibleForDirectPlay: {2}, isEligibleForDirectStream: {3}", options.Profile.Name ?? "Unknown Profile", @@ -706,7 +706,8 @@ namespace MediaBrowser.Model.Dlna private bool IsEligibleForDirectPlay(MediaSourceInfo item, int? maxBitrate, MediaStream subtitleStream, - VideoOptions options) + VideoOptions options, + PlayMethod playMethod) { if (subtitleStream != null) { @@ -714,6 +715,7 @@ namespace MediaBrowser.Model.Dlna if (subtitleProfile.Method != SubtitleDeliveryMethod.External && subtitleProfile.Method != SubtitleDeliveryMethod.Embed) { + _logger.Debug("Not eligible for {0} due to unsupported subtitles", playMethod); return false; } } @@ -781,7 +783,7 @@ namespace MediaBrowser.Model.Dlna return true; } - _logger.Debug("Audio Bitrate exceeds DirectPlay limit"); + _logger.Debug("Bitrate exceeds DirectPlay limit"); return false; } diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index de41a0f969..c3d1ec0809 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -330,12 +330,11 @@ namespace MediaBrowser.Providers.Manager protected async Task SaveItem(MetadataResult result, ItemUpdateType reason, CancellationToken cancellationToken) { - await result.Item.UpdateToRepository(reason, cancellationToken).ConfigureAwait(false); - if (result.Item.SupportsPeople) { await LibraryManager.UpdatePeople(result.Item as BaseItem, result.People); } + await result.Item.UpdateToRepository(reason, cancellationToken).ConfigureAwait(false); } public bool CanRefresh(IHasMetadata item) diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs index af7fc3df45..c05f1b64b4 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs @@ -138,7 +138,7 @@ namespace MediaBrowser.Providers.MediaInfo if (item.IsShortcut) { FetchShortcutInfo(item); - return Task.FromResult(ItemUpdateType.MetadataEdit); + return Task.FromResult(ItemUpdateType.MetadataImport); } var prober = new FFProbeVideoInfo(_logger, _isoManager, _mediaEncoder, _itemRepo, _blurayExaminer, _localization, _appPaths, _json, _encodingManager, _fileSystem, _config, _subtitleManager, _chapterManager, _libraryManager); diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs index c3793b3a3e..bdc94b88b9 100644 --- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs +++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs @@ -345,7 +345,7 @@ namespace MediaBrowser.Server.Implementations.Library try { - await UpdateItem(season, ItemUpdateType.MetadataEdit, cancellationToken).ConfigureAwait(false); + await UpdateItem(season, ItemUpdateType.MetadataDownload, cancellationToken).ConfigureAwait(false); } catch (Exception ex) { @@ -2071,10 +2071,17 @@ namespace MediaBrowser.Server.Implementations.Library public List GetPeople(BaseItem item) { - return item.People ?? GetPeople(new InternalPeopleQuery + var people = GetPeople(new InternalPeopleQuery { ItemId = item.Id }); + + if (people.Count > 0) + { + return people; + } + + return item.People ?? new List(); } public List GetPeopleItems(InternalPeopleQuery query) @@ -2106,15 +2113,9 @@ namespace MediaBrowser.Server.Implementations.Library .ToList(); } - public async Task UpdatePeople(BaseItem item, List people) + public Task UpdatePeople(BaseItem item, List people) { - await ItemRepository.UpdatePeople(item.Id, people).ConfigureAwait(false); - - if (item.People != null) - { - item.People = null; - await item.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None).ConfigureAwait(false); - } + return ItemRepository.UpdatePeople(item.Id, people); } } } diff --git a/MediaBrowser.Server.Implementations/Localization/Server/server.json b/MediaBrowser.Server.Implementations/Localization/Server/server.json index 55e7540851..aa9fafb1be 100644 --- a/MediaBrowser.Server.Implementations/Localization/Server/server.json +++ b/MediaBrowser.Server.Implementations/Localization/Server/server.json @@ -1466,5 +1466,6 @@ "TabHomeScreen": "Home Screen", "HeaderDisplay": "Display", "HeaderNavigation": "Navigation", - "LegendTheseSettingsShared": "These settings are shared on all devices" + "LegendTheseSettingsShared": "These settings are shared on all devices", + "OptionEnableAutomaticServerUpdates": "Enable automatic server updates" } diff --git a/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs b/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs index 6272fe9261..175dbbc010 100644 --- a/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs +++ b/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs @@ -209,6 +209,13 @@ namespace MediaBrowser.Server.Implementations.Sync IsRequired = false }, new ProfileCondition + { + Condition = ProfileConditionType.LessThanEqual, + Property = ProfileConditionValue.AudioBitrate, + Value = "320000", + IsRequired = true + }, + new ProfileCondition { Condition = ProfileConditionType.Equals, Property = ProfileConditionValue.IsSecondaryAudio, @@ -231,6 +238,13 @@ namespace MediaBrowser.Server.Implementations.Sync IsRequired = true }, new ProfileCondition + { + Condition = ProfileConditionType.LessThanEqual, + Property = ProfileConditionValue.AudioBitrate, + Value = "320000", + IsRequired = true + }, + new ProfileCondition { Condition = ProfileConditionType.Equals, Property = ProfileConditionValue.IsSecondaryAudio, diff --git a/MediaBrowser.WebDashboard/Api/DashboardService.cs b/MediaBrowser.WebDashboard/Api/DashboardService.cs index 6eed91b6c5..2346e15d32 100644 --- a/MediaBrowser.WebDashboard/Api/DashboardService.cs +++ b/MediaBrowser.WebDashboard/Api/DashboardService.cs @@ -1,5 +1,4 @@ -using System.Text; -using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.IO; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; @@ -16,6 +15,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Linq; +using System.Text; using System.Threading.Tasks; using WebMarkupMin.Core.Minifiers; @@ -324,6 +324,10 @@ namespace MediaBrowser.WebDashboard.Api CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "webcomponentsjs", "webcomponents-lite.js"), Path.Combine(path, "bower_components", "webcomponentsjs", "webcomponents-lite.js")); CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "webcomponentsjs", "webcomponents-lite.min.js"), Path.Combine(path, "bower_components", "webcomponentsjs", "webcomponents-lite.min.js")); CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "velocity", "velocity.min.js"), Path.Combine(path, "bower_components", "velocity", "velocity.min.js")); + CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "requirejs", "require.js"), Path.Combine(path, "bower_components", "requirejs", "require.js")); + CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "fastclick", "lib", "fastclick.js"), Path.Combine(path, "bower_components", "fastclick", "lib", "fastclick.js")); + CopyFile(Path.Combine(creator.DashboardUIPath, "bower_components", "jquery", "dist", "jquery.min.js"), Path.Combine(path, "bower_components", "jquery", "dist", "jquery.min.js")); + CopyDirectory(Path.Combine(creator.DashboardUIPath, "bower_components", "swipebox", "src", "css"), Path.Combine(path, "bower_components", "swipebox", "src", "css")); CopyDirectory(Path.Combine(creator.DashboardUIPath, "bower_components", "swipebox", "src", "js"), Path.Combine(path, "bower_components", "swipebox", "src", "js")); CopyDirectory(Path.Combine(creator.DashboardUIPath, "bower_components", "swipebox", "src", "img"), Path.Combine(path, "bower_components", "swipebox", "src", "img")); diff --git a/MediaBrowser.WebDashboard/Api/PackageCreator.cs b/MediaBrowser.WebDashboard/Api/PackageCreator.cs index 6cc838ac43..f501475521 100644 --- a/MediaBrowser.WebDashboard/Api/PackageCreator.cs +++ b/MediaBrowser.WebDashboard/Api/PackageCreator.cs @@ -443,11 +443,6 @@ namespace MediaBrowser.WebDashboard.Api "bower_components/webcomponentsjs/webcomponents-lite.js" + versionString }; - if (string.Equals(mode, "cordova", StringComparison.OrdinalIgnoreCase)) - { - files.Insert(0, "cordova.js"); - } - var tags = files.Select(s => string.Format("", s)).ToArray(); builder.Append(string.Join(string.Empty, tags)); @@ -493,9 +488,9 @@ namespace MediaBrowser.WebDashboard.Api var memoryStream = new MemoryStream(); var newLineBytes = Encoding.UTF8.GetBytes(Environment.NewLine); - await AppendResource(memoryStream, "thirdparty/jquery-2.1.1.min.js", newLineBytes).ConfigureAwait(false); + await AppendResource(memoryStream, "bower_components/jquery/dist/jquery.min.js", newLineBytes).ConfigureAwait(false); - await AppendResource(memoryStream, "thirdparty/require.js", newLineBytes).ConfigureAwait(false); + await AppendResource(memoryStream, "bower_components/requirejs/require.js", newLineBytes).ConfigureAwait(false); await AppendResource(memoryStream, "thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.min.js", newLineBytes).ConfigureAwait(false); diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index 09d4766e9c..18d379ca41 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -87,6 +87,15 @@ + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + PreserveNewest @@ -258,7 +267,7 @@ PreserveNewest - + PreserveNewest @@ -297,6 +306,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest @@ -1099,9 +1111,6 @@ PreserveNewest - - PreserveNewest - PreserveNewest @@ -1117,9 +1126,6 @@ PreserveNewest - - PreserveNewest - PreserveNewest @@ -1753,9 +1759,6 @@ PreserveNewest - - PreserveNewest - PreserveNewest diff --git a/MediaBrowser.XbmcMetadata/EntryPoint.cs b/MediaBrowser.XbmcMetadata/EntryPoint.cs index c3bc6e30f5..1c68a50468 100644 --- a/MediaBrowser.XbmcMetadata/EntryPoint.cs +++ b/MediaBrowser.XbmcMetadata/EntryPoint.cs @@ -36,7 +36,7 @@ namespace MediaBrowser.XbmcMetadata void _libraryManager_ItemUpdated(object sender, ItemChangeEventArgs e) { - if (e.UpdateReason == ItemUpdateType.ImageUpdate) + if (e.UpdateReason >= ItemUpdateType.ImageUpdate) { var person = e.Item as Person; @@ -57,7 +57,7 @@ namespace MediaBrowser.XbmcMetadata foreach (var item in items) { - SaveMetadataForItem(item, ItemUpdateType.MetadataEdit); + SaveMetadataForItem(item, e.UpdateReason); } } } @@ -71,7 +71,7 @@ namespace MediaBrowser.XbmcMetadata if (!string.IsNullOrWhiteSpace(_config.GetNfoConfiguration().UserId)) { - SaveMetadataForItem(item, ItemUpdateType.MetadataEdit); + SaveMetadataForItem(item, ItemUpdateType.MetadataDownload); } } }