Browse Source

sync updates

Luke Pulverenti 10 years ago
parent
commit
5d4fec778c

+ 5 - 0
MediaBrowser.Controller/Channels/InternalChannelFeatures.cs

@@ -44,6 +44,11 @@ namespace MediaBrowser.Controller.Channels
         /// </summary>
         /// </summary>
         /// <value>The daily download limit.</value>
         /// <value>The daily download limit.</value>
         public int? DailyDownloadLimit { get; set; }
         public int? DailyDownloadLimit { get; set; }
+        /// <summary>
+        /// Gets or sets a value indicating whether [supports downloading].
+        /// </summary>
+        /// <value><c>true</c> if [supports downloading]; otherwise, <c>false</c>.</value>
+        public bool SupportsContentDownloading { get; set; }
 
 
         public InternalChannelFeatures()
         public InternalChannelFeatures()
         {
         {

+ 21 - 15
MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs

@@ -170,23 +170,29 @@ namespace MediaBrowser.Server.Implementations.Channels
             foreach (var item in result.Items)
             foreach (var item in result.Items)
             {
             {
                 var channelItem = (IChannelItem)item;
                 var channelItem = (IChannelItem)item;
-                if (options.DownloadingChannels.Contains(channelItem.ChannelId))
+
+                var channelFeatures = _manager.GetChannelFeatures(channelItem.ChannelId);
+
+                if (channelFeatures.SupportsContentDownloading)
                 {
                 {
-                    try
-                    {
-                        await DownloadChannelItem(item, options, cancellationToken, path);
-                    }
-                    catch (OperationCanceledException)
-                    {
-                        break;
-                    }
-                    catch (ChannelDownloadException)
-                    {
-                        // Logged at lower levels
-                    }
-                    catch (Exception ex)
+                    if (options.DownloadingChannels.Contains(channelItem.ChannelId))
                     {
                     {
-                        _logger.ErrorException("Error downloading channel content for {0}", ex, item.Name);
+                        try
+                        {
+                            await DownloadChannelItem(item, options, cancellationToken, path);
+                        }
+                        catch (OperationCanceledException)
+                        {
+                            break;
+                        }
+                        catch (ChannelDownloadException)
+                        {
+                            // Logged at lower levels
+                        }
+                        catch (Exception ex)
+                        {
+                            _logger.ErrorException("Error downloading channel content for {0}", ex, item.Name);
+                        }
                     }
                     }
                 }
                 }
 
 

+ 1 - 1
MediaBrowser.Server.Implementations/Channels/ChannelManager.cs

@@ -508,7 +508,7 @@ namespace MediaBrowser.Server.Implementations.Channels
                 SupportsLatestMedia = supportsLatest,
                 SupportsLatestMedia = supportsLatest,
                 Name = channel.Name,
                 Name = channel.Name,
                 Id = channel.Id.ToString("N"),
                 Id = channel.Id.ToString("N"),
-                SupportsContentDownloading = isIndexable || supportsLatest,
+                SupportsContentDownloading = features.SupportsContentDownloading && (isIndexable || supportsLatest),
                 AutoRefreshLevels = features.AutoRefreshLevels
                 AutoRefreshLevels = features.AutoRefreshLevels
             };
             };
         }
         }

+ 10 - 6
MediaBrowser.Server.Implementations/Connect/ConnectManager.cs

@@ -219,7 +219,7 @@ namespace MediaBrowser.Server.Implementations.Connect
             {
             {
                 throw new ArgumentNullException("wanApiAddress");
                 throw new ArgumentNullException("wanApiAddress");
             }
             }
-            
+
             var url = "Servers";
             var url = "Servers";
             url = GetConnectUrl(url);
             url = GetConnectUrl(url);
 
 
@@ -699,7 +699,7 @@ namespace MediaBrowser.Server.Implementations.Connect
             {
             {
                 throw new ArgumentNullException("ConnectAccessKey");
                 throw new ArgumentNullException("ConnectAccessKey");
             }
             }
-            
+
             options.RequestHeaders.Add("X-Connect-Token", ConnectAccessKey);
             options.RequestHeaders.Add("X-Connect-Token", ConnectAccessKey);
         }
         }
 
 
@@ -723,7 +723,7 @@ namespace MediaBrowser.Server.Implementations.Connect
             {
             {
                 throw new ArgumentNullException("ConnectServerId");
                 throw new ArgumentNullException("ConnectServerId");
             }
             }
-            
+
             var url = GetConnectUrl("ServerAuthorizations");
             var url = GetConnectUrl("ServerAuthorizations");
 
 
             url += "?serverId=" + ConnectServerId;
             url += "?serverId=" + ConnectServerId;
@@ -956,6 +956,10 @@ namespace MediaBrowser.Server.Implementations.Connect
                     _data.LastAuthorizationsRefresh = DateTime.UtcNow;
                     _data.LastAuthorizationsRefresh = DateTime.UtcNow;
                     CacheData();
                     CacheData();
                 }
                 }
+                catch (Exception ex)
+                {
+                    _logger.ErrorException("Error refreshing authorization", ex);
+                }
                 finally
                 finally
                 {
                 {
                     _operationLock.Release();
                     _operationLock.Release();
@@ -1010,7 +1014,7 @@ namespace MediaBrowser.Server.Implementations.Connect
             {
             {
                 throw new ArgumentNullException("ConnectServerId");
                 throw new ArgumentNullException("ConnectServerId");
             }
             }
-     
+
             var url = GetConnectUrl("ServerAuthorizations");
             var url = GetConnectUrl("ServerAuthorizations");
 
 
             var options = new HttpRequestOptions
             var options = new HttpRequestOptions
@@ -1074,7 +1078,7 @@ namespace MediaBrowser.Server.Implementations.Connect
                 });
                 });
 
 
             SetApplicationHeader(options);
             SetApplicationHeader(options);
-            
+
             // No need to examine the response
             // No need to examine the response
             using (var response = (await _httpClient.SendAsync(options, "POST").ConfigureAwait(false)).Content)
             using (var response = (await _httpClient.SendAsync(options, "POST").ConfigureAwait(false)).Content)
             {
             {
@@ -1094,7 +1098,7 @@ namespace MediaBrowser.Server.Implementations.Connect
             {
             {
                 throw new ArgumentNullException("user");
                 throw new ArgumentNullException("user");
             }
             }
-            
+
             if (string.IsNullOrEmpty(user.ConnectUserId))
             if (string.IsNullOrEmpty(user.ConnectUserId))
             {
             {
                 return;
                 return;

+ 0 - 5
MediaBrowser.Server.Implementations/Library/UserManager.cs

@@ -669,11 +669,6 @@ namespace MediaBrowser.Server.Implementations.Library
                 throw new ArgumentNullException("newPasswordSha1");
                 throw new ArgumentNullException("newPasswordSha1");
             }
             }
 
 
-            if (user.ConnectLinkType.HasValue && user.ConnectLinkType.Value == UserLinkType.Guest)
-            {
-                throw new ArgumentException("Passwords for guests cannot be changed.");
-            }
-
             user.EasyPassword = newPasswordSha1;
             user.EasyPassword = newPasswordSha1;
 
 
             await UpdateUser(user).ConfigureAwait(false);
             await UpdateUser(user).ConfigureAwait(false);

+ 2 - 0
MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json

@@ -70,6 +70,7 @@
     "HeaderSelectCertificatePath": "Select Certificate Path",
     "HeaderSelectCertificatePath": "Select Certificate Path",
     "ConfirmMessageScheduledTaskButton": "This operation normally runs automatically as a scheduled task. It can also be run manually here. To configure the scheduled task, see:",
     "ConfirmMessageScheduledTaskButton": "This operation normally runs automatically as a scheduled task. It can also be run manually here. To configure the scheduled task, see:",
     "HeaderSupporterBenefit": "A supporter membership provides additional benefits such as access to premium plugins, internet channel content, and more. {0}Learn more{1}.",
     "HeaderSupporterBenefit": "A supporter membership provides additional benefits such as access to premium plugins, internet channel content, and more. {0}Learn more{1}.",
+    "LabelSyncNoTargetsHelp": "It looks like you don't currently have any apps that support sync.",
     "HeaderWelcomeToMediaBrowserServerDashboard": "Welcome to the Media Browser Dashboard",
     "HeaderWelcomeToMediaBrowserServerDashboard": "Welcome to the Media Browser Dashboard",
     "HeaderWelcomeToMediaBrowserWebClient": "Welcome to the Media Browser Web Client",
     "HeaderWelcomeToMediaBrowserWebClient": "Welcome to the Media Browser Web Client",
     "ButtonTakeTheTour": "Take the tour",
     "ButtonTakeTheTour": "Take the tour",
@@ -83,6 +84,7 @@
     "ButtonCancelItem": "Cancel item",
     "ButtonCancelItem": "Cancel item",
     "ButtonQueueForRetry": "Queue for retry",
     "ButtonQueueForRetry": "Queue for retry",
     "ButtonReenable": "Re-enable",
     "ButtonReenable": "Re-enable",
+    "ButtonLearnMore": "Learn more",
     "SyncJobItemStatusSyncedMarkForRemoval": "Marked for removal",
     "SyncJobItemStatusSyncedMarkForRemoval": "Marked for removal",
     "LabelAbortedByServerShutdown": "(Aborted by server shutdown)",
     "LabelAbortedByServerShutdown": "(Aborted by server shutdown)",
     "LabelScheduledTaskLastRan": "Last ran {0}, taking {1}.",
     "LabelScheduledTaskLastRan": "Last ran {0}, taking {1}.",

+ 2 - 2
Nuget/MediaBrowser.Common.Internal.nuspec

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
     <metadata>
     <metadata>
         <id>MediaBrowser.Common.Internal</id>
         <id>MediaBrowser.Common.Internal</id>
-        <version>3.0.566</version>
+        <version>3.0.567</version>
         <title>MediaBrowser.Common.Internal</title>
         <title>MediaBrowser.Common.Internal</title>
         <authors>Luke</authors>
         <authors>Luke</authors>
         <owners>ebr,Luke,scottisafool</owners>
         <owners>ebr,Luke,scottisafool</owners>
@@ -12,7 +12,7 @@
         <description>Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption.</description>
         <description>Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption.</description>
         <copyright>Copyright © Media Browser 2013</copyright>
         <copyright>Copyright © Media Browser 2013</copyright>
         <dependencies>
         <dependencies>
-            <dependency id="MediaBrowser.Common" version="3.0.566" />
+            <dependency id="MediaBrowser.Common" version="3.0.567" />
             <dependency id="NLog" version="3.1.0.0" />
             <dependency id="NLog" version="3.1.0.0" />
             <dependency id="SimpleInjector" version="2.6.1" />
             <dependency id="SimpleInjector" version="2.6.1" />
         </dependencies>
         </dependencies>

+ 1 - 1
Nuget/MediaBrowser.Common.nuspec

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
     <metadata>
     <metadata>
         <id>MediaBrowser.Common</id>
         <id>MediaBrowser.Common</id>
-        <version>3.0.566</version>
+        <version>3.0.567</version>
         <title>MediaBrowser.Common</title>
         <title>MediaBrowser.Common</title>
         <authors>Media Browser Team</authors>
         <authors>Media Browser Team</authors>
         <owners>ebr,Luke,scottisafool</owners>
         <owners>ebr,Luke,scottisafool</owners>

+ 1 - 1
Nuget/MediaBrowser.Model.Signed.nuspec

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
     <metadata>
     <metadata>
         <id>MediaBrowser.Model.Signed</id>
         <id>MediaBrowser.Model.Signed</id>
-        <version>3.0.566</version>
+        <version>3.0.567</version>
         <title>MediaBrowser.Model - Signed Edition</title>
         <title>MediaBrowser.Model - Signed Edition</title>
         <authors>Media Browser Team</authors>
         <authors>Media Browser Team</authors>
         <owners>ebr,Luke,scottisafool</owners>
         <owners>ebr,Luke,scottisafool</owners>

+ 2 - 2
Nuget/MediaBrowser.Server.Core.nuspec

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
 <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
     <metadata>
     <metadata>
         <id>MediaBrowser.Server.Core</id>
         <id>MediaBrowser.Server.Core</id>
-        <version>3.0.566</version>
+        <version>3.0.567</version>
         <title>Media Browser.Server.Core</title>
         <title>Media Browser.Server.Core</title>
         <authors>Media Browser Team</authors>
         <authors>Media Browser Team</authors>
         <owners>ebr,Luke,scottisafool</owners>
         <owners>ebr,Luke,scottisafool</owners>
@@ -12,7 +12,7 @@
         <description>Contains core components required to build plugins for Media Browser Server.</description>
         <description>Contains core components required to build plugins for Media Browser Server.</description>
         <copyright>Copyright © Media Browser 2013</copyright>
         <copyright>Copyright © Media Browser 2013</copyright>
         <dependencies>
         <dependencies>
-            <dependency id="MediaBrowser.Common" version="3.0.566" />
+            <dependency id="MediaBrowser.Common" version="3.0.567" />
         </dependencies>
         </dependencies>
     </metadata>
     </metadata>
     <files>
     <files>

+ 2 - 2
SharedVersion.cs

@@ -1,4 +1,4 @@
 using System.Reflection;
 using System.Reflection;
 
 
-//[assembly: AssemblyVersion("3.0.*")]
-[assembly: AssemblyVersion("3.0.5518.1")]
+[assembly: AssemblyVersion("3.0.*")]
+//[assembly: AssemblyVersion("3.0.5518.1")]