mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-03 19:17:24 -05:00 
			
		
		
		
	disable nuget package restore
This commit is contained in:
		
							parent
							
								
									76cabe8226
								
							
						
					
					
						commit
						f1a602f5a8
					
				
							
								
								
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -1,3 +1,5 @@
 | 
			
		||||
!*
 | 
			
		||||
 | 
			
		||||
#################
 | 
			
		||||
## Eclipse
 | 
			
		||||
#################
 | 
			
		||||
@ -145,8 +147,9 @@ publish/
 | 
			
		||||
 | 
			
		||||
# NuGet Packages Directory
 | 
			
		||||
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
 | 
			
		||||
packages/
 | 
			
		||||
# packages/
 | 
			
		||||
dlls/
 | 
			
		||||
dllssigned/
 | 
			
		||||
 | 
			
		||||
# Windows Azure Build Output
 | 
			
		||||
csx
 | 
			
		||||
 | 
			
		||||
@ -1,13 +1,18 @@
 | 
			
		||||
using MediaBrowser.Controller.Connect;
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Controller.Connect;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Connect;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api
 | 
			
		||||
{
 | 
			
		||||
    [Route("/Users/{Id}/Connect/Link", "POST", Summary = "Creates a Connect link for a user")]
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    public class CreateConnectLink : IReturn<UserLinkResult>
 | 
			
		||||
    {
 | 
			
		||||
        [ApiMember(Name = "Id", Description = "User Id", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST")]
 | 
			
		||||
@ -18,6 +23,7 @@ namespace MediaBrowser.Api
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Route("/Users/{Id}/Connect/Link", "DELETE", Summary = "Removes a Connect link for a user")]
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    public class DeleteConnectLink : IReturnVoid
 | 
			
		||||
    {
 | 
			
		||||
        [ApiMember(Name = "Id", Description = "User Id", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "DELETE")]
 | 
			
		||||
@ -25,6 +31,7 @@ namespace MediaBrowser.Api
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Route("/Connect/Invite", "POST", Summary = "Creates a Connect link for a user")]
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    public class CreateConnectInvite : IReturn<UserLinkResult>
 | 
			
		||||
    {
 | 
			
		||||
        [ApiMember(Name = "ConnectUsername", Description = "Connect username", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST")]
 | 
			
		||||
@ -36,26 +43,37 @@ namespace MediaBrowser.Api
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    [Route("/Connect/Pending", "GET", Summary = "Creates a Connect link for a user")]
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    public class GetPendingGuests : IReturn<List<ConnectAuthorization>>
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    [Route("/Connect/Pending", "DELETE", Summary = "Deletes a Connect link for a user")]
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    public class DeleteAuthorization : IReturnVoid
 | 
			
		||||
    {
 | 
			
		||||
        [ApiMember(Name = "Id", Description = "Authorization Id", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "DELETE")]
 | 
			
		||||
        public string Id { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Authenticated(Roles = "Admin")]
 | 
			
		||||
    [Route("/Connect/Exchange", "GET", Summary = "Gets the corresponding local user from a connect user id")]
 | 
			
		||||
    [Authenticated]
 | 
			
		||||
    public class GetLocalUser : IReturn<ConnectAuthenticationExchangeResult>
 | 
			
		||||
    {
 | 
			
		||||
        [ApiMember(Name = "ConnectUserId", Description = "ConnectUserId", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST")]
 | 
			
		||||
        public string ConnectUserId { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class ConnectService : BaseApiService
 | 
			
		||||
    {
 | 
			
		||||
        private readonly IConnectManager _connectManager;
 | 
			
		||||
        private readonly IUserManager _userManager;
 | 
			
		||||
 | 
			
		||||
        public ConnectService(IConnectManager connectManager)
 | 
			
		||||
        public ConnectService(IConnectManager connectManager, IUserManager userManager)
 | 
			
		||||
        {
 | 
			
		||||
            _connectManager = connectManager;
 | 
			
		||||
            _userManager = userManager;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public object Post(CreateConnectLink request)
 | 
			
		||||
@ -88,5 +106,22 @@ namespace MediaBrowser.Api
 | 
			
		||||
 | 
			
		||||
            Task.WaitAll(task);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public object Get(GetLocalUser request)
 | 
			
		||||
        {
 | 
			
		||||
            var user = _userManager.Users
 | 
			
		||||
                .FirstOrDefault(i => string.Equals(i.ConnectUserId, request.ConnectUserId, StringComparison.OrdinalIgnoreCase));
 | 
			
		||||
 | 
			
		||||
            if (user == null)
 | 
			
		||||
            {
 | 
			
		||||
                throw new ResourceNotFoundException();
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return ToOptimizedResult(new ConnectAuthenticationExchangeResult
 | 
			
		||||
            {
 | 
			
		||||
                AccessToken = user.ConnectAccessKey,
 | 
			
		||||
                LocalUserId = user.Id.ToString("N")
 | 
			
		||||
            });
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Api</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Common.Implementations</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -120,7 +119,6 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup />
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <PostBuildEvent Condition=" '$(ConfigurationName)' != 'Release Mono' ">if '$(ConfigurationName)' == 'Release' (
 | 
			
		||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Common</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -116,7 +115,6 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup />
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <PostBuildEvent Condition=" '$(ConfigurationName)' != 'Release Mono' ">if '$(ConfigurationName)' == 'Release' (
 | 
			
		||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Controller</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -369,7 +368,6 @@ xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i
 | 
			
		||||
    <PreBuildEvent>
 | 
			
		||||
    </PreBuildEvent>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -12,7 +12,6 @@
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
@ -91,7 +90,6 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup />
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -15,7 +15,6 @@
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <FodyPath>..\packages\Fody.1.19.1.0</FodyPath>
 | 
			
		||||
    <FileUpgradeFlags>
 | 
			
		||||
    </FileUpgradeFlags>
 | 
			
		||||
@ -224,6 +223,9 @@
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Configuration\XbmcMetadataOptions.cs">
 | 
			
		||||
      <Link>Configuration\XbmcMetadataOptions.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Connect\ConnectAuthenticationExchangeResult.cs">
 | 
			
		||||
      <Link>ApiClient\ConnectAuthenticationExchangeResult.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Connect\ConnectAuthenticationResult.cs">
 | 
			
		||||
      <Link>Connect\ConnectAuthenticationResult.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
@ -1114,7 +1116,6 @@
 | 
			
		||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\portable\" /y /d /r /i
 | 
			
		||||
)</PostBuildEvent>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
 | 
			
		||||
  <Import Project="Fody.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
 | 
			
		||||
@ -13,7 +13,6 @@
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <TargetFrameworkProfile />
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <FodyPath>..\packages\Fody.1.17.0.0</FodyPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
@ -190,6 +189,9 @@
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Configuration\XbmcMetadataOptions.cs">
 | 
			
		||||
      <Link>Configuration\XbmcMetadataOptions.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Connect\ConnectAuthenticationExchangeResult.cs">
 | 
			
		||||
      <Link>Connect\ConnectAuthenticationExchangeResult.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
    <Compile Include="..\MediaBrowser.Model\Connect\ConnectAuthenticationResult.cs">
 | 
			
		||||
      <Link>Connect\ConnectAuthenticationResult.cs</Link>
 | 
			
		||||
    </Compile>
 | 
			
		||||
@ -1065,7 +1067,6 @@
 | 
			
		||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\net35\" /y /d /r /i
 | 
			
		||||
)</PostBuildEvent>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -30,7 +30,32 @@ namespace MediaBrowser.Model.ApiClient
 | 
			
		||||
 | 
			
		||||
            if (index != -1)
 | 
			
		||||
            {
 | 
			
		||||
                list[index] = server;
 | 
			
		||||
                var existing = list[index];
 | 
			
		||||
 | 
			
		||||
                // Merge the data
 | 
			
		||||
                existing.DateLastAccessed = new[] { existing.DateLastAccessed, server.DateLastAccessed }.Max();
 | 
			
		||||
 | 
			
		||||
                if (!string.IsNullOrEmpty(server.AccessToken))
 | 
			
		||||
                {
 | 
			
		||||
                    existing.AccessToken = server.AccessToken;
 | 
			
		||||
                    existing.UserId = server.UserId;
 | 
			
		||||
                }
 | 
			
		||||
                if (!string.IsNullOrEmpty(server.RemoteAddress))
 | 
			
		||||
                {
 | 
			
		||||
                    existing.RemoteAddress = server.RemoteAddress;
 | 
			
		||||
                }
 | 
			
		||||
                if (!string.IsNullOrEmpty(server.LocalAddress))
 | 
			
		||||
                {
 | 
			
		||||
                    existing.LocalAddress = server.LocalAddress;
 | 
			
		||||
                }
 | 
			
		||||
                if (!string.IsNullOrEmpty(server.Name))
 | 
			
		||||
                {
 | 
			
		||||
                    existing.Name = server.Name;
 | 
			
		||||
                }
 | 
			
		||||
                if (server.WakeOnLanInfos != null && server.WakeOnLanInfos.Count > 0)
 | 
			
		||||
                {
 | 
			
		||||
                    existing.WakeOnLanInfos = server.WakeOnLanInfos.ToList();
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            else
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
@ -231,7 +231,6 @@ namespace MediaBrowser.Model.Configuration
 | 
			
		||||
                "Roku",
 | 
			
		||||
                "Chromecast",
 | 
			
		||||
                "iOS",
 | 
			
		||||
                "Android",
 | 
			
		||||
                "Windows Phone"
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,17 @@
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Model.Connect
 | 
			
		||||
{
 | 
			
		||||
    public class ConnectAuthenticationExchangeResult
 | 
			
		||||
    {
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Gets or sets the local user identifier.
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <value>The local user identifier.</value>
 | 
			
		||||
        public string LocalUserId { get; set; }
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Gets or sets the access token.
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <value>The access token.</value>
 | 
			
		||||
        public string AccessToken { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Model</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <FodyPath>..\packages\Fody.1.19.1.0</FodyPath>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
@ -98,6 +97,7 @@
 | 
			
		||||
    <Compile Include="Configuration\PeopleMetadataOptions.cs" />
 | 
			
		||||
    <Compile Include="Configuration\XbmcMetadataOptions.cs" />
 | 
			
		||||
    <Compile Include="Configuration\SubtitlePlaybackMode.cs" />
 | 
			
		||||
    <Compile Include="Connect\ConnectAuthenticationExchangeResult.cs" />
 | 
			
		||||
    <Compile Include="Connect\ConnectAuthenticationResult.cs" />
 | 
			
		||||
    <Compile Include="Connect\ConnectAuthorization.cs" />
 | 
			
		||||
    <Compile Include="Connect\ConnectUser.cs" />
 | 
			
		||||
@ -424,7 +424,6 @@
 | 
			
		||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\net45\" /y /d /r /i
 | 
			
		||||
)</PostBuildEvent>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <Import Project="Fody.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Providers</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -215,7 +214,6 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup />
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -68,7 +68,10 @@ namespace MediaBrowser.Server.Implementations.HttpServer.Security
 | 
			
		||||
                if (!string.IsNullOrWhiteSpace(auth.Token) ||
 | 
			
		||||
                    !_config.Configuration.InsecureApps2.Contains(auth.Client ?? string.Empty, StringComparer.OrdinalIgnoreCase))
 | 
			
		||||
                {
 | 
			
		||||
                    SessionManager.ValidateSecurityToken(auth.Token);
 | 
			
		||||
                    if (!IsValidConnectKey(auth.Token))
 | 
			
		||||
                    {
 | 
			
		||||
                        SessionManager.ValidateSecurityToken(auth.Token);
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@ -115,6 +118,16 @@ namespace MediaBrowser.Server.Implementations.HttpServer.Security
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private bool IsValidConnectKey(string token)
 | 
			
		||||
        {
 | 
			
		||||
            if (!string.IsNullOrEmpty(token))
 | 
			
		||||
            {
 | 
			
		||||
                return UserManager.Users.Any(u => string.Equals(token, u.ConnectAccessKey, StringComparison.OrdinalIgnoreCase) && !string.IsNullOrEmpty(u.ConnectAccessKey));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        protected bool DoHtmlRedirectIfConfigured(IRequest req, IResponse res, bool includeRedirectParam = false)
 | 
			
		||||
        {
 | 
			
		||||
            var htmlRedirect = this.HtmlRedirect ?? AuthenticateService.HtmlRedirect;
 | 
			
		||||
 | 
			
		||||
@ -36,10 +36,10 @@
 | 
			
		||||
    "LabelMovie": "Film",
 | 
			
		||||
    "LabelMusicVideo": "Musikvideo",
 | 
			
		||||
    "LabelEpisode": "Episode",
 | 
			
		||||
    "LabelSeries": "Series",
 | 
			
		||||
    "LabelSeries": "Serien",
 | 
			
		||||
    "LabelStopping": "Stoppe",
 | 
			
		||||
    "LabelCancelled": "(abgebrochen)",
 | 
			
		||||
    "LabelFailed": "(failed)",
 | 
			
		||||
    "LabelFailed": "(fehlgeschlagen)",
 | 
			
		||||
    "LabelAbortedByServerShutdown": "(Durch herunterfahrenden Server abgebrochen)",
 | 
			
		||||
    "LabelScheduledTaskLastRan": "Zuletzt ausgef\u00fchrt vor: {0}. Ben\u00f6tigte Zeit: {1}.",
 | 
			
		||||
    "HeaderDeleteTaskTrigger": "Entferne Aufgabenausl\u00f6ser",
 | 
			
		||||
@ -63,7 +63,7 @@
 | 
			
		||||
    "ButtonPlay": "Abspielen",
 | 
			
		||||
    "ButtonEdit": "Bearbeiten",
 | 
			
		||||
    "ButtonQueue": "Warteschlange",
 | 
			
		||||
    "ButtonPlayTrailer": "Play trailer",
 | 
			
		||||
    "ButtonPlayTrailer": "Trailer abspielen",
 | 
			
		||||
    "ButtonPlaylist": "Wiedergabeliste",
 | 
			
		||||
    "ButtonPreviousTrack": "Vorheriges St\u00fcck",
 | 
			
		||||
    "LabelEnabled": "Aktivieren",
 | 
			
		||||
@ -310,7 +310,7 @@
 | 
			
		||||
    "TabAdvanced": "Erweitert",
 | 
			
		||||
    "TabHelp": "Hilfe",
 | 
			
		||||
    "TabScheduledTasks": "Geplante Aufgaben",
 | 
			
		||||
    "ButtonFullscreen": "Fullscreen",
 | 
			
		||||
    "ButtonFullscreen": "Vollbild",
 | 
			
		||||
    "ButtonAudioTracks": "Audio Tracks",
 | 
			
		||||
    "ButtonSubtitles": "Untertitel",
 | 
			
		||||
    "ButtonScenes": "Szenen",
 | 
			
		||||
@ -383,7 +383,7 @@
 | 
			
		||||
    "PersonTypePerson": "Person",
 | 
			
		||||
    "LabelTitleDisplayOrder": "Reihenfolge Titeldarstellung:",
 | 
			
		||||
    "OptionSortName": "Sortiername",
 | 
			
		||||
    "OptionReleaseDate": "Release date",
 | 
			
		||||
    "OptionReleaseDate": "Ver\u00f6ffentlichungsdatum",
 | 
			
		||||
    "LabelSeasonNumber": "Staffelnummer:",
 | 
			
		||||
    "LabelDiscNumber": "Disc Nummer",
 | 
			
		||||
    "LabelParentNumber": "Ursprungsnummer",
 | 
			
		||||
@ -525,7 +525,7 @@
 | 
			
		||||
    "HeaderAlbums": "Alben",
 | 
			
		||||
    "HeaderGames": "Spiele",
 | 
			
		||||
    "HeaderBooks": "B\u00fccher",
 | 
			
		||||
    "HeaderEpisodes": "Episodes",
 | 
			
		||||
    "HeaderEpisodes": "Episoden",
 | 
			
		||||
    "HeaderSeasons": "Staffeln",
 | 
			
		||||
    "HeaderTracks": "Lieder",
 | 
			
		||||
    "HeaderItems": "Inhalte",
 | 
			
		||||
@ -594,13 +594,13 @@
 | 
			
		||||
    "DashboardTourNotifications": "Sende automatisch Benachrichtigungen von Serverereignissen auf dein mobiles Endger\u00e4t, per E-Mail und mehr.",
 | 
			
		||||
    "DashboardTourScheduledTasks": "Verwalte einfach lang dauernde Aufgaben mit Hilfe von geplanten Aufgaben. Entscheide wann diese ausgef\u00fchrt werden und wie oft.",
 | 
			
		||||
    "DashboardTourMobile": "Die Media Browser \u00dcbersicht funktioniert auch hervorragend auf Smartphones und Tablets. Verwalte deinen Server jederzeit und \u00fcberall  direkt von deiner Handfl\u00e4che aus.",
 | 
			
		||||
    "MessageRefreshQueued": "Refresh queued",
 | 
			
		||||
    "TabDevices": "Devices",
 | 
			
		||||
    "DeviceLastUsedByUserName": "Last used by {0}",
 | 
			
		||||
    "HeaderDeleteDevice": "Delete Device",
 | 
			
		||||
    "DeleteDeviceConfirmation": "Are you sure you wish to delete this device? It will reappear the next time a user signs in with it.",
 | 
			
		||||
    "LabelEnableCameraUploadFor": "Enable camera upload for:",
 | 
			
		||||
    "HeaderSelectUploadPath": "Select Upload Path",
 | 
			
		||||
    "LabelEnableCameraUploadForHelp": "Uploads will occur automatically in the background when signed into Media Browser.",
 | 
			
		||||
    "ErrorMessageStartHourGreaterThanEnd": "End time must be greater than the start time."
 | 
			
		||||
    "MessageRefreshQueued": "Warteschlange aktualisieren",
 | 
			
		||||
    "TabDevices": "Ger\u00e4te",
 | 
			
		||||
    "DeviceLastUsedByUserName": "Zuletzt genutzt von {0}",
 | 
			
		||||
    "HeaderDeleteDevice": "Ger\u00e4t l\u00f6schen",
 | 
			
		||||
    "DeleteDeviceConfirmation": "Bist du dir sicher dieses Ger\u00e4t l\u00f6schen zu wollen? Es wird wieder angezeigt werden, sobald sich ein Uder dar\u00fcber einloggt.",
 | 
			
		||||
    "LabelEnableCameraUploadFor": "Aktiviere den Kamera-Upload f\u00fcr:",
 | 
			
		||||
    "HeaderSelectUploadPath": "W\u00e4hle Upload Pfad",
 | 
			
		||||
    "LabelEnableCameraUploadForHelp": "Uploads werden automatisch im Hintergrund durchgef\u00fchrt wenn du in Media Browser eingeloggt bist.",
 | 
			
		||||
    "ErrorMessageStartHourGreaterThanEnd": "Die Endzeit muss gr\u00f6\u00dfer als die Startzeit sein."
 | 
			
		||||
}
 | 
			
		||||
@ -84,8 +84,8 @@
 | 
			
		||||
    "MessageConfirmRecordingCancellation": "\u00cates-vous s\u00fbr de vouloir annuler cet enregistrement?",
 | 
			
		||||
    "MessageRecordingCancelled": "Enregistrement annul\u00e9.",
 | 
			
		||||
    "HeaderConfirmSeriesCancellation": "Confirmer annulation des s\u00e9ries",
 | 
			
		||||
    "MessageConfirmSeriesCancellation": "\u00cates-vous s\u00fbr de vouloir annuler ces s\u00e9ries?",
 | 
			
		||||
    "MessageSeriesCancelled": "S\u00e9ries annul\u00e9es",
 | 
			
		||||
    "MessageConfirmSeriesCancellation": "\u00cates-vous s\u00fbr de vouloir annuler cette s\u00e9rie?",
 | 
			
		||||
    "MessageSeriesCancelled": "S\u00e9ries annul\u00e9es.",
 | 
			
		||||
    "HeaderConfirmRecordingDeletion": "Confirmer la suppression de l'enregistrement",
 | 
			
		||||
    "MessageConfirmRecordingDeletion": "\u00cates-vous s\u00fbr de vouloir supprimer cet enregistrement?",
 | 
			
		||||
    "MessageRecordingDeleted": "Enregistrement supprim\u00e9.",
 | 
			
		||||
@ -108,7 +108,7 @@
 | 
			
		||||
    "ButtonCancelSeries": "Annuler s\u00e9ries",
 | 
			
		||||
    "HeaderSeriesRecordings": "Enregistrements de s\u00e9ries",
 | 
			
		||||
    "LabelAnytime": "N'importe quelle heure",
 | 
			
		||||
    "StatusRecording": "En cours d'enregistrement",
 | 
			
		||||
    "StatusRecording": "Enregistrement",
 | 
			
		||||
    "StatusWatching": "En lecture",
 | 
			
		||||
    "StatusRecordingProgram": "Enregistre {0}",
 | 
			
		||||
    "StatusWatchingProgram": "En lecture de {0}",
 | 
			
		||||
@ -160,7 +160,7 @@
 | 
			
		||||
    "MessageSureYouWishToProceed": "\u00cates-vous s\u00fbr de vouloir continuer?",
 | 
			
		||||
    "MessageDuplicatesWillBeDeleted": "De plus, les doubles suivants vont \u00eatre supprim\u00e9s :",
 | 
			
		||||
    "MessageFollowingFileWillBeMovedFrom": "Le fichier suivant sera d\u00e9plac\u00e9 de:",
 | 
			
		||||
    "MessageDestinationTo": "Vers:",
 | 
			
		||||
    "MessageDestinationTo": "\u00c0 :",
 | 
			
		||||
    "HeaderSelectWatchFolder": "S\u00e9lectionner le r\u00e9pertoire surveill\u00e9",
 | 
			
		||||
    "HeaderSelectWatchFolderHelp": "Parcourir ou saisir le chemin de votre r\u00e9pertoire de surveillance. Le r\u00e9pertoire doit \u00eatre accessible en \u00e9criture.",
 | 
			
		||||
    "OrganizePatternResult": "R\u00e9sultat : {0}",
 | 
			
		||||
@ -595,7 +595,7 @@
 | 
			
		||||
    "DashboardTourScheduledTasks": "G\u00e9rer facilement les op\u00e9rations longues avec des taches planifi\u00e9s. D\u00e9cider quand elles doivent se lancer et combien de fois.",
 | 
			
		||||
    "DashboardTourMobile": "Le tableau de bord de Media Browser fonctionne parfaitement sur les smartphones et les tablettes. G\u00e9rer votre serveur du bout des doigts, n'importe quand, n'importe o\u00f9.",
 | 
			
		||||
    "MessageRefreshQueued": "Actualiser la file d'attente",
 | 
			
		||||
    "TabDevices": "Lecteurs",
 | 
			
		||||
    "TabDevices": "P\u00e9riph\u00e9riques",
 | 
			
		||||
    "DeviceLastUsedByUserName": "Derni\u00e8rement utilis\u00e9 par {0}",
 | 
			
		||||
    "HeaderDeleteDevice": "Supprimer le p\u00e9riph\u00e9rique",
 | 
			
		||||
    "DeleteDeviceConfirmation": "\u00cates-vous s\u00fbr de vouloir supprimer cet appareil? La prochaine fois qu'un utilisateur se connecte \u00e0 l'appareil, il sera ajout\u00e9 de nouveau.",
 | 
			
		||||
 | 
			
		||||
@ -596,11 +596,11 @@
 | 
			
		||||
    "DashboardTourMobile": "Media Browser \u0431\u0430\u049b\u044b\u043b\u0430\u0443 \u0442\u0430\u049b\u0442\u0430\u0441\u044b \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0434\u0430\u0440\u0434\u0430 \u0436\u04d9\u043d\u0435 \u043f\u043b\u0430\u043d\u0448\u0435\u0442\u0442\u0435\u0440\u0434\u0435 \u0442\u0430\u043c\u0430\u0448\u0430 \u0436\u04b1\u043c\u044b\u0441 \u0456\u0441\u0442\u0435\u0439\u0434\u0456. \u0421\u0435\u0440\u0432\u0435\u0440\u0456\u04a3\u0456\u0437\u0434\u0456 \u04d9\u0440 \u0443\u0430\u049b\u044b\u0442\u0442\u0430, \u04d9\u0440 \u0436\u0435\u0440\u0434\u0435 \u049b\u043e\u043b\u044b\u04a3\u044b\u0437\u0434\u044b\u04a3 \u0430\u043b\u0430\u049b\u0430\u043d\u044b\u043d\u0430\u043d \u0431\u0430\u0441\u049b\u0430\u0440\u044b\u04a3\u044b\u0437.",
 | 
			
		||||
    "MessageRefreshQueued": "\u041a\u04e9\u043a\u0435\u0439\u0442\u0435\u0441\u0442\u0456 \u0435\u0442\u0443\u0456 \u043a\u0435\u0437\u0435\u043a\u0442\u0435",
 | 
			
		||||
    "TabDevices": "\u0416\u0430\u0431\u0434\u044b\u049b\u0442\u0430\u0440",
 | 
			
		||||
    "DeviceLastUsedByUserName": "Last used by {0}",
 | 
			
		||||
    "HeaderDeleteDevice": "Delete Device",
 | 
			
		||||
    "DeleteDeviceConfirmation": "Are you sure you wish to delete this device? It will reappear the next time a user signs in with it.",
 | 
			
		||||
    "LabelEnableCameraUploadFor": "Enable camera upload for:",
 | 
			
		||||
    "HeaderSelectUploadPath": "Select Upload Path",
 | 
			
		||||
    "DeviceLastUsedByUserName": "{0} \u0430\u0440\u049b\u044b\u043b\u044b \u0435\u04a3 \u043a\u0435\u0439\u0456\u043d\u0433\u0456 \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u043b\u0493\u0430\u043d",
 | 
			
		||||
    "HeaderDeleteDevice": "\u0416\u0430\u0431\u0434\u044b\u049b\u0442\u044b \u0436\u043e\u044e",
 | 
			
		||||
    "DeleteDeviceConfirmation": "\u0428\u044b\u043d\u044b\u043c\u0435\u043d \u043e\u0441\u044b \u0436\u0430\u0431\u0434\u044b\u049b\u0442\u044b \u0436\u043e\u044e \u049b\u0430\u0436\u0435\u0442 \u043f\u0435? \u0411\u04b1\u043b \u043a\u0435\u043b\u0435\u0441\u0456 \u0440\u0435\u0442\u0442\u0435 \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b \u043e\u0441\u044b\u0434\u0430\u043d \u043a\u0456\u0440\u0433\u0435\u043d\u0434\u0435 \u049b\u0430\u0439\u0442\u0430 \u043f\u0430\u0439\u0434\u0430 \u0431\u043e\u043b\u0430\u0434\u044b.",
 | 
			
		||||
    "LabelEnableCameraUploadFor": "\u041c\u044b\u043d\u0430\u0443 \u04af\u0448\u0456\u043d \u043a\u0430\u043c\u0435\u0440\u0430\u0434\u0430\u043d \u043a\u0435\u0440\u0456 \u049b\u043e\u0442\u0430\u0440\u0443:",
 | 
			
		||||
    "HeaderSelectUploadPath": "\u041a\u0435\u0440\u0456 \u049b\u043e\u0442\u0430\u0440\u0443 \u0436\u043e\u043b\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443",
 | 
			
		||||
    "LabelEnableCameraUploadForHelp": "Uploads will occur automatically in the background when signed into Media Browser.",
 | 
			
		||||
    "ErrorMessageStartHourGreaterThanEnd": "End time must be greater than the start time."
 | 
			
		||||
    "ErrorMessageStartHourGreaterThanEnd": "\u0410\u044f\u049b\u0442\u0430\u0443 \u0443\u0430\u049b\u044b\u0442\u044b \u0431\u0430\u0441\u0442\u0430\u0443 \u0443\u0430\u049b\u044b\u0442\u044b\u043d\u0430\u043d \u043a\u0435\u0439\u0456\u043d\u0440\u0435\u043a \u0431\u043e\u043b\u0443\u044b \u049b\u0430\u0436\u0435\u0442 \u0435\u0442\u0435\u0434\u0456."
 | 
			
		||||
}
 | 
			
		||||
@ -54,7 +54,7 @@
 | 
			
		||||
    "LabelDefaultStream": "(\u0423\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u0435)",
 | 
			
		||||
    "LabelForcedStream": "(\u0424\u043e\u0440\u0441-\u044b\u0435)",
 | 
			
		||||
    "LabelDefaultForcedStream": "(\u0423\u043c\u043e\u043b\u0447.\/\u0424\u043e\u0440\u0441-\u044b\u0435)",
 | 
			
		||||
    "LabelUnknownLanguage": "\u041d\u0435\u043e\u043f\u043e\u0437\u043d\u0430\u043d\u043d\u044b\u0439 \u044f\u0437\u044b\u043a",
 | 
			
		||||
    "LabelUnknownLanguage": "\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0439 \u044f\u0437\u044b\u043a",
 | 
			
		||||
    "ButtonMute": "\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0432\u0443\u043a",
 | 
			
		||||
    "ButtonUnmute": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0432\u0443\u043a",
 | 
			
		||||
    "ButtonStop": "\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c",
 | 
			
		||||
@ -181,7 +181,7 @@
 | 
			
		||||
    "LabelRunningOnPort": "\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u043f\u043e\u0440\u0442\u0443 {0}.",
 | 
			
		||||
    "HeaderLatestFromChannel": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0438\u0437 {0}",
 | 
			
		||||
    "ButtonDownload": "\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c",
 | 
			
		||||
    "LabelUnknownLanaguage": "\u041d\u0435\u043e\u043f\u043e\u0437\u043d\u0430\u043d\u043d\u044b\u0439 \u044f\u0437\u044b\u043a",
 | 
			
		||||
    "LabelUnknownLanaguage": "\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0439 \u044f\u0437\u044b\u043a",
 | 
			
		||||
    "HeaderCurrentSubtitles": "\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0441\u0443\u0431\u0442\u0438\u0442\u0440\u044b",
 | 
			
		||||
    "MessageDownloadQueued": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c.",
 | 
			
		||||
    "MessageAreYouSureDeleteSubtitles": "\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441\u0443\u0431\u0438\u0442\u0440\u043e\u0432?",
 | 
			
		||||
@ -454,8 +454,8 @@
 | 
			
		||||
    "TooltipLinkedToMediaBrowserConnect": "\u0421\u0432\u044f\u0437\u044c \u0441 Media Browser Connect",
 | 
			
		||||
    "HeaderUnrated": "\u0411\u0435\u0437 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438",
 | 
			
		||||
    "ValueDiscNumber": "\u0414\u0438\u0441\u043a {0}",
 | 
			
		||||
    "HeaderUnknownDate": "\u0414\u0430\u0442\u0430 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430",
 | 
			
		||||
    "HeaderUnknownYear": "\u0413\u043e\u0434 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d",
 | 
			
		||||
    "HeaderUnknownDate": "\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u0430\u044f \u0434\u0430\u0442\u0430",
 | 
			
		||||
    "HeaderUnknownYear": "\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0439 \u0433\u043e\u0434",
 | 
			
		||||
    "ValueMinutes": "{0} \u043c\u0438\u043d",
 | 
			
		||||
    "ButtonPlayExternalPlayer": "\u0412\u043e\u0441\u043f\u0440. \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u043f\u0440\u043e\u0438\u0433\u0440-\u0435\u043c",
 | 
			
		||||
    "HeaderSelectExternalPlayer": "\u0412\u044b\u0431\u043e\u0440 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u0442\u0435\u043b\u044f",
 | 
			
		||||
 | 
			
		||||
@ -70,7 +70,7 @@
 | 
			
		||||
    "ButtonOk": "Ok",
 | 
			
		||||
    "LabelChannelDownloadSizeLimit": "Download Gr\u00f6\u00dfenlimit (GB):",
 | 
			
		||||
    "ButtonCancel": "Abbrechen",
 | 
			
		||||
    "LabelChannelDownloadSizeLimitHelpText": "Limit the size of the channel download folder.",
 | 
			
		||||
    "LabelChannelDownloadSizeLimitHelpText": "Limitiere die Gr\u00f6\u00dfe des Channel Download Verzeichnisses.",
 | 
			
		||||
    "HeaderRecentActivity": "K\u00fcrzliche Aktivit\u00e4ten",
 | 
			
		||||
    "ButtonNew": "Neu",
 | 
			
		||||
    "HeaderPeople": "Personen",
 | 
			
		||||
@ -152,7 +152,7 @@
 | 
			
		||||
    "LabelWebsite": "Website:",
 | 
			
		||||
    "ButtonAddLocalUser": "F\u00fcge lokalen Benutzer hinzu",
 | 
			
		||||
    "LabelTagline": "Tagline:",
 | 
			
		||||
    "ButtonInviteUser": "Invite User",
 | 
			
		||||
    "ButtonInviteUser": "Lade Benutzer ein",
 | 
			
		||||
    "ButtonSave": "Speichern",
 | 
			
		||||
    "LabelOverview": "\u00dcbersicht:",
 | 
			
		||||
    "ButtonResetPassword": "Passwort zur\u00fccksetzten",
 | 
			
		||||
@ -394,65 +394,65 @@
 | 
			
		||||
    "OptionSunday": "Sonntag",
 | 
			
		||||
    "HeaderWelcomeToMediaBrowserServerDashboard": "Willkommen zur Media Browser \u00dcbersicht",
 | 
			
		||||
    "OptionMonday": "Montag",
 | 
			
		||||
    "LabelDateAddedBehavior": "Date added behavior for new content:",
 | 
			
		||||
    "LabelDateAddedBehavior": "Verhalten f\u00fcr Hinzuf\u00fcgedatum bei neuen Inhalten:",
 | 
			
		||||
    "OptionTuesday": "Dienstag",
 | 
			
		||||
    "OptionDateAddedImportTime": "Use date scanned into the library",
 | 
			
		||||
    "OptionDateAddedImportTime": "Benutze das Scandatum vom hinzuf\u00fcgen in die Bbliothek",
 | 
			
		||||
    "OptionWednesday": "Mittwoch",
 | 
			
		||||
    "OptionDateAddedFileTime": "Use file creation date",
 | 
			
		||||
    "OptionDateAddedFileTime": "Benutze das Erstellungsdatum der Datei",
 | 
			
		||||
    "OptionThursday": "Donnerstag",
 | 
			
		||||
    "LabelDateAddedBehaviorHelp": "If a metadata value is present it will always be used before either of these options.",
 | 
			
		||||
    "LabelDateAddedBehaviorHelp": "Wenn ein Metadatenwert vorhanden ist, wird dieser immer gegen\u00fcber den anderen Optionen bevorzugt werden.",
 | 
			
		||||
    "OptionFriday": "Freitag",
 | 
			
		||||
    "LabelNumberTrailerToPlay": "Number of trailers to play:",
 | 
			
		||||
    "LabelNumberTrailerToPlay": "Anzahl der abzuspielenden Trailer:",
 | 
			
		||||
    "OptionSaturday": "Samstag",
 | 
			
		||||
    "TitleDevices": "Devices",
 | 
			
		||||
    "TitleDevices": "Ger\u00e4te",
 | 
			
		||||
    "HeaderManagement": "Verwaltung",
 | 
			
		||||
    "TabCameraUpload": "Camera Upload",
 | 
			
		||||
    "TabCameraUpload": "Kamera-Upload",
 | 
			
		||||
    "LabelManagement": "Management:",
 | 
			
		||||
    "TabDevices": "Devices",
 | 
			
		||||
    "TabDevices": "Ger\u00e4te",
 | 
			
		||||
    "OptionMissingImdbId": "Fehlende IMDb Id",
 | 
			
		||||
    "HeaderCameraUploadHelp": "Automatically upload photos and videos taken from your mobile devices into Media Browser.",
 | 
			
		||||
    "HeaderCameraUploadHelp": "Lade automatisch Bilder und Videos in Media Browser hoch, die mit deinen Mobilger\u00e4ten aufgenommen wurden.",
 | 
			
		||||
    "OptionMissingTvdbId": "Fehlende TheTVDB Id",
 | 
			
		||||
    "MessageNoDevicesSupportCameraUpload": "You currently don't have any devices that support camera upload.",
 | 
			
		||||
    "MessageNoDevicesSupportCameraUpload": "Du hast bis jetzt keine Ger\u00e4t die den Kamera-Upload unterst\u00fctzen.",
 | 
			
		||||
    "OptionMissingOverview": "Fehlende \u00dcbersicht",
 | 
			
		||||
    "LabelCameraUploadPath": "Camera upload path:",
 | 
			
		||||
    "LabelCameraUploadPath": "Kamera-Upload Pfad:",
 | 
			
		||||
    "OptionFileMetadataYearMismatch": "Datei \/ Metadaten Jahre stimmen nicht \u00fcberein",
 | 
			
		||||
    "LabelCameraUploadPathHelp": "Select a custom upload path, if desired. If unspecified a default folder will be used.",
 | 
			
		||||
    "LabelCameraUploadPathHelp": "W\u00e4hle, fals gew\u00fcnscht, einen individuellen Upload Pfad. Falls keiner festgelegt wird, wird der Standard Pfad genutzt.",
 | 
			
		||||
    "TabGeneral": "Allgemein",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolder": "Create a subfolder for each device",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolder": "Erstelle ein Unterverzeichnis f\u00fcr jedes Ger\u00e4t",
 | 
			
		||||
    "TitleSupport": "Support",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolderHelp": "Specific folders can be assigned to a device by clicking on it from the Devices page.",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolderHelp": "Bestimmte Verzeichnisse k\u00f6nnen Ger\u00e4ten durch einen Klick auf der Ger\u00e4teseite zugewiesen werden.",
 | 
			
		||||
    "TabLog": "Log",
 | 
			
		||||
    "LabelCustomDeviceDisplayName": "Display name:",
 | 
			
		||||
    "LabelCustomDeviceDisplayName": "Angezeigter Name:",
 | 
			
		||||
    "TabAbout": "\u00dcber",
 | 
			
		||||
    "LabelCustomDeviceDisplayNameHelp": "Supply a custom display name or leave empty to use the name reported by the device.",
 | 
			
		||||
    "LabelCustomDeviceDisplayNameHelp": "Lege einen individuellen Anzeigenamen fest oder lasse das Feld leer, um den vom ger\u00e4t \u00fcbermittelten Namen zu nutzen.",
 | 
			
		||||
    "TabSupporterKey": "Unterst\u00fctzerschl\u00fcssel",
 | 
			
		||||
    "HeaderInviteUser": "Invite User",
 | 
			
		||||
    "HeaderInviteUser": "Lade Benutzer ein",
 | 
			
		||||
    "TabBecomeSupporter": "Werde ein Unterst\u00fctzer",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "This is the username or email that your friend uses to sign in to the Media Browser website.",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "Dies ist der Benutzername oder die E-Mail die dein Freund nutzt, um sich f\u00fcr die Media Browser Website anzumelden.",
 | 
			
		||||
    "MediaBrowserHasCommunity": "Media Browser hat eine wachsende Gemeinschaft an Nutzern und Unterst\u00fctzern.",
 | 
			
		||||
    "HeaderInviteUserHelp": "Sharing your media with friends is easier than ever before with Media Browser Connect.",
 | 
			
		||||
    "HeaderInviteUserHelp": "Mit Media Browser ist es leichter als je zuvor, deine Medien mit deinen Freunden zu teilen.",
 | 
			
		||||
    "CheckoutKnowledgeBase": "Verwende die Knowledge Base als Hilfe, um das Optimum aus Media Browser herauszuholen.",
 | 
			
		||||
    "ButtonSendInvitation": "Send Invitation",
 | 
			
		||||
    "ButtonSendInvitation": "Sende Einladung",
 | 
			
		||||
    "SearchKnowledgeBase": "Durchsuche die Knowledge Base",
 | 
			
		||||
    "HeaderGuests": "Guests",
 | 
			
		||||
    "HeaderGuests": "G\u00e4ste",
 | 
			
		||||
    "VisitTheCommunity": "Besuche die Community",
 | 
			
		||||
    "HeaderLocalUsers": "Local Users",
 | 
			
		||||
    "HeaderLocalUsers": "Lokale Benutzer",
 | 
			
		||||
    "VisitMediaBrowserWebsite": "Besuche die Media Browser Website",
 | 
			
		||||
    "HeaderPendingInvitations": "Pending Invitations",
 | 
			
		||||
    "HeaderPendingInvitations": "Ausstehende Einladungen",
 | 
			
		||||
    "VisitMediaBrowserWebsiteLong": "Besuche die Media Browser Website um die aktuellsten Neuigkeiten zu erfahren und halte dich auf dem Laufenden mit dem Entwicklerblog.",
 | 
			
		||||
    "TabParentalControl": "Parental Control",
 | 
			
		||||
    "TabParentalControl": "Kindersicherung",
 | 
			
		||||
    "OptionHideUser": "Verberge diesen Benutzer in den Anmeldebildschirmen",
 | 
			
		||||
    "HeaderAccessSchedule": "Access Schedule",
 | 
			
		||||
    "HeaderAccessSchedule": "Zugangsplan",
 | 
			
		||||
    "OptionDisableUser": "Sperre diesen Benutzer",
 | 
			
		||||
    "HeaderAccessScheduleHelp": "Create an access schedule to limit access to certain hours.",
 | 
			
		||||
    "HeaderAccessScheduleHelp": "Erstelle einen Zugangsplan, um den Zugriff auf bestimmte Zeiten zu limitieren.",
 | 
			
		||||
    "OptionDisableUserHelp": "Wenn deaktiviert,wird der Server keine Verbindung von diesem Benutzer erlauben. Bestehenden Verbindungen werden sofort beendet.",
 | 
			
		||||
    "ButtonAddSchedule": "Add Schedule",
 | 
			
		||||
    "ButtonAddSchedule": "Plan hinzuf\u00fcgen",
 | 
			
		||||
    "HeaderAdvancedControl": "Erweiterte Kontrolle",
 | 
			
		||||
    "LabelAccessDay": "Day of week:",
 | 
			
		||||
    "LabelAccessDay": "Wochentag:",
 | 
			
		||||
    "LabelName": "Name:",
 | 
			
		||||
    "LabelAccessStart": "Start hour:",
 | 
			
		||||
    "LabelAccessStart": "Startzeit:",
 | 
			
		||||
    "OptionAllowUserToManageServer": "Dieser Benutzer kann den Server managen",
 | 
			
		||||
    "LabelAccessEnd": "End hour:",
 | 
			
		||||
    "LabelAccessEnd": "Endzeit:",
 | 
			
		||||
    "HeaderFeatureAccess": "Funktionszugriff",
 | 
			
		||||
    "OptionAllowMediaPlayback": "Erlaube das Abspielen von Medien",
 | 
			
		||||
    "OptionAllowBrowsingLiveTv": "Erlaube das durchsuchen von Live-TV",
 | 
			
		||||
@ -689,13 +689,13 @@
 | 
			
		||||
    "NewCollectionNameExample": "Beispiel: Star Wars Collection",
 | 
			
		||||
    "OptionSearchForInternetMetadata": "Suche im Internet nach Bildmaterial und Metadaten",
 | 
			
		||||
    "ButtonCreate": "Kreieren",
 | 
			
		||||
    "LabelLocalHttpServerPortNumber": "Local port number:",
 | 
			
		||||
    "LabelLocalHttpServerPortNumberHelp": "The tcp port number that Media Browser's http server should bind to.",
 | 
			
		||||
    "LabelPublicPort": "Public port number:",
 | 
			
		||||
    "LabelPublicPortHelp": "The public port number that should be mapped to the local port.",
 | 
			
		||||
    "LabelLocalHttpServerPortNumber": "Lokale Port-Nummer:",
 | 
			
		||||
    "LabelLocalHttpServerPortNumberHelp": "Die TCP-Port-Nummer, an die der http-Server von Media Browser gebunden werden soll.",
 | 
			
		||||
    "LabelPublicPort": "\u00d6ffentliche Port-Nummer:",
 | 
			
		||||
    "LabelPublicPortHelp": "Der \u00f6ffentliche Port-Nummer, die auf den lokalen Port zugeordnet werden soll.",
 | 
			
		||||
    "LabelWebSocketPortNumber": "Web Socket Port Nummer:",
 | 
			
		||||
    "LabelEnableAutomaticPortMap": "Enable automatic port mapping",
 | 
			
		||||
    "LabelEnableAutomaticPortMapHelp": "Attempt to automatically map the public port to the local port via UPnP. This may not work with some router models.",
 | 
			
		||||
    "LabelEnableAutomaticPortMap": "Aktiviere das automatische Port-Mapping",
 | 
			
		||||
    "LabelEnableAutomaticPortMapHelp": "Versuche automatisch den \u00f6ffentlichen Port dem lokalen Port mit Hilfe von UPnP zuzuordnen. Dies kann mit einigen Router-Modellen nicht funktionieren.",
 | 
			
		||||
    "LabelExternalDDNS": "Externe DDNS:",
 | 
			
		||||
    "LabelExternalDDNSHelp": "Wenn du eine dynamische DNS besitzen, trage Sie sie hier ein. Media Browser Apps werden sie verwenden, wenn sie sich verbinden.",
 | 
			
		||||
    "TabResume": "Fortsetzen",
 | 
			
		||||
 | 
			
		||||
@ -130,7 +130,7 @@
 | 
			
		||||
    "OptionDefaultSubtitles": "Par d\u00e9faut",
 | 
			
		||||
    "LabelFollowingFileWillBeDeleted": "Le fichier suivant a \u00e9t\u00e9 supprim\u00e9:",
 | 
			
		||||
    "OptionOnlyForcedSubtitles": "Seulement les sous-titres forc\u00e9s",
 | 
			
		||||
    "LabelIfYouWishToContinueWithDeletion": "Si vous souhaitez continuer, merci de le confirmer en entrant la valeur de:",
 | 
			
		||||
    "LabelIfYouWishToContinueWithDeletion": "Si vous souhaitez continuer, veuillez confirmer en entrant la valeur de :",
 | 
			
		||||
    "OptionAlwaysPlaySubtitles": "Toujours afficher les sous-titres",
 | 
			
		||||
    "ButtonIdentify": "Identifier",
 | 
			
		||||
    "OptionNoSubtitles": "Aucun sous-titre",
 | 
			
		||||
@ -187,7 +187,7 @@
 | 
			
		||||
    "Label3DFormat": "Format 3D:",
 | 
			
		||||
    "MessageNothingHere": "Rien ici.",
 | 
			
		||||
    "HeaderAlternateEpisodeNumbers": "Num\u00e9ros d'\u00e9pisode alternatif",
 | 
			
		||||
    "MessagePleaseEnsureInternetMetadata": "Merci de vous assurer que le t\u00e9l\u00e9chargement des m\u00e9tadonn\u00e9es depuis Internet est bien activ\u00e9.",
 | 
			
		||||
    "MessagePleaseEnsureInternetMetadata": "Veuillez vous assurer que le t\u00e9l\u00e9chargement des m\u00e9tadonn\u00e9es depuis Internet est activ\u00e9.",
 | 
			
		||||
    "HeaderSpecialEpisodeInfo": "Information \u00e9pisode sp\u00e9cial",
 | 
			
		||||
    "TabSuggested": "Sugg\u00e9r\u00e9s",
 | 
			
		||||
    "HeaderExternalIds": "Identifiants externes",
 | 
			
		||||
@ -267,7 +267,7 @@
 | 
			
		||||
    "OptionReleaseDate": "Date de sortie",
 | 
			
		||||
    "OptionPlayCount": "Nombre de lectures",
 | 
			
		||||
    "HeaderMediaInfo": "Information m\u00e9dia",
 | 
			
		||||
    "OptionDatePlayed": "Date de lecture",
 | 
			
		||||
    "OptionDatePlayed": "Date lu",
 | 
			
		||||
    "HeaderPhotoInfo": "Information photo",
 | 
			
		||||
    "OptionDateAdded": "Date d'ajout",
 | 
			
		||||
    "HeaderInstall": "Install\u00e9",
 | 
			
		||||
@ -341,13 +341,13 @@
 | 
			
		||||
    "ButtonLearnMore": "Apprendre plus",
 | 
			
		||||
    "LabelFeatures": "Caract\u00e9ristiques:",
 | 
			
		||||
    "TabPlayback": "Lecture",
 | 
			
		||||
    "LabelService": "Service:",
 | 
			
		||||
    "LabelService": "Service :",
 | 
			
		||||
    "HeaderTrailersAndExtras": "Bandes-annonces et extras",
 | 
			
		||||
    "LabelStatus": "Status:",
 | 
			
		||||
    "OptionFindTrailers": "Trouver automatiquement les bandes-annonces sur Internet",
 | 
			
		||||
    "LabelVersion": "Version:",
 | 
			
		||||
    "LabelVersion": "Version :",
 | 
			
		||||
    "HeaderLanguagePreferences": "Pr\u00e9f\u00e9rences de langue",
 | 
			
		||||
    "LabelLastResult": "Dernier r\u00e9sultat:",
 | 
			
		||||
    "LabelLastResult": "Dernier r\u00e9sultat :",
 | 
			
		||||
    "TabCinemaMode": "Mode cin\u00e9ma",
 | 
			
		||||
    "OptionHasSubtitles": "Sous-titres",
 | 
			
		||||
    "TitlePlayback": "Lecture",
 | 
			
		||||
@ -408,7 +408,7 @@
 | 
			
		||||
    "HeaderManagement": "Gestion",
 | 
			
		||||
    "TabCameraUpload": "Upload de la cam\u00e9ra",
 | 
			
		||||
    "LabelManagement": "Gestion :",
 | 
			
		||||
    "TabDevices": "Lecteurs",
 | 
			
		||||
    "TabDevices": "P\u00e9riph\u00e9riques",
 | 
			
		||||
    "OptionMissingImdbId": "ID IMDb manquant",
 | 
			
		||||
    "HeaderCameraUploadHelp": "Uploader automatiquement les photos et les vid\u00e9os depuis vos p\u00e9riph\u00e9riques mobiles dans Media Browser.",
 | 
			
		||||
    "OptionMissingTvdbId": "ID TheTVDB manquant",
 | 
			
		||||
@ -758,7 +758,7 @@
 | 
			
		||||
    "HeaderLatestNews": "Derni\u00e8res nouvelles",
 | 
			
		||||
    "HeaderHelpImproveMediaBrowser": "Aidez-nous \u00e0 am\u00e9liorer Media Browser",
 | 
			
		||||
    "HeaderRunningTasks": "T\u00e2ches en ex\u00e9cution",
 | 
			
		||||
    "HeaderActiveDevices": "Appareils actifs",
 | 
			
		||||
    "HeaderActiveDevices": "P\u00e9riph\u00e9riques actifs",
 | 
			
		||||
    "HeaderPendingInstallations": "Installations en suspens",
 | 
			
		||||
    "HeaerServerInformation": "Information du serveur",
 | 
			
		||||
    "ButtonRestartNow": "Red\u00e9marrer maintenant",
 | 
			
		||||
@ -950,7 +950,7 @@
 | 
			
		||||
    "LabelModelDescription": "Description de mod\u00e8le",
 | 
			
		||||
    "LabelModelUrl": "URL de mod\u00e8le",
 | 
			
		||||
    "LabelSerialNumber": "Num\u00e9ro de s\u00e9rie",
 | 
			
		||||
    "LabelDeviceDescription": "Description de l'appareil",
 | 
			
		||||
    "LabelDeviceDescription": "Description du p\u00e9riph\u00e9rique",
 | 
			
		||||
    "HeaderIdentificationCriteriaHelp": "Entrer au moins un crit\u00e8re d'identification.",
 | 
			
		||||
    "HeaderDirectPlayProfileHelp": "Ajoutez des profils de lecture directe pour sp\u00e9cifier quels formats l'appareil peut lire nativement.",
 | 
			
		||||
    "HeaderTranscodingProfileHelp": "Ajoutez des profils de transcodage pour sp\u00e9cifier quels formats doit \u00eatre transcod\u00e9.",
 | 
			
		||||
@ -991,7 +991,7 @@
 | 
			
		||||
    "ButtonSend": "Envoyer",
 | 
			
		||||
    "LabelMessageText": "Texte du message:",
 | 
			
		||||
    "MessageNoAvailablePlugins": "Aucun plugin disponible.",
 | 
			
		||||
    "LabelDisplayPluginsFor": "Afficher les plugins pour:",
 | 
			
		||||
    "LabelDisplayPluginsFor": "Afficher les plugins pour :",
 | 
			
		||||
    "PluginTabMediaBrowserClassic": "MB Classic",
 | 
			
		||||
    "PluginTabMediaBrowserTheater": "MB Theatre",
 | 
			
		||||
    "LabelEpisodeNamePlain": "Nom d'\u00e9pisode",
 | 
			
		||||
 | 
			
		||||
@ -70,7 +70,7 @@
 | 
			
		||||
    "ButtonOk": "\u0416\u0430\u0440\u0430\u0439\u0434\u044b",
 | 
			
		||||
    "LabelChannelDownloadSizeLimit": "\u0416\u04af\u043a\u0442\u0435\u043c\u0435 \u04e9\u043b\u0448\u0435\u043c\u0456\u043d\u0456\u04a3 \u0448\u0435\u0433\u0456 (GB)",
 | 
			
		||||
    "ButtonCancel": "\u0411\u043e\u043b\u0434\u044b\u0440\u043c\u0430\u0443",
 | 
			
		||||
    "LabelChannelDownloadSizeLimitHelpText": "Limit the size of the channel download folder.",
 | 
			
		||||
    "LabelChannelDownloadSizeLimitHelpText": "\u0410\u0440\u043d\u0430\u043b\u0430\u0440\u0434\u044b \u049b\u043e\u0442\u0430\u0440\u044b\u043f \u0430\u043b\u0443 \u04af\u0448\u0456\u043d \u049b\u0430\u043b\u0442\u0430\u0441\u044b \u04e9\u043b\u0448\u0435\u043c\u0456\u043d \u0448\u0435\u043a\u0442\u0435\u0443.",
 | 
			
		||||
    "HeaderRecentActivity": "\u041a\u0435\u0438\u0456\u043d\u0433\u0456 \u04d9\u0440\u0435\u043a\u0435\u0442\u0442\u0435\u0440",
 | 
			
		||||
    "ButtonNew": "\u0416\u0430\u0441\u0430\u0443",
 | 
			
		||||
    "HeaderPeople": "\u0410\u0434\u0430\u043c\u0434\u0430\u0440",
 | 
			
		||||
@ -152,7 +152,7 @@
 | 
			
		||||
    "LabelWebsite": "\u0492\u0430\u043b\u0430\u043c\u0442\u043e\u0440 \u0441\u0430\u0439\u0442\u044b:",
 | 
			
		||||
    "ButtonAddLocalUser": "\u0416\u0435\u0440\u0433\u0456\u043b\u0456\u043a\u0442\u0456 \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043d\u044b \u04af\u0441\u0442\u0435\u0443",
 | 
			
		||||
    "LabelTagline": "\u041d\u0435\u0433\u0456\u0437\u0433\u0456 \u0441\u04e9\u0439\u043b\u0435\u043c:",
 | 
			
		||||
    "ButtonInviteUser": "Invite User",
 | 
			
		||||
    "ButtonInviteUser": "\u041f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043d\u044b \u0448\u0430\u049b\u044b\u0440\u0443",
 | 
			
		||||
    "ButtonSave": "\u0421\u0430\u049b\u0442\u0430\u0443",
 | 
			
		||||
    "LabelOverview": "\u0416\u0430\u043b\u043f\u044b \u0448\u043e\u043b\u0443:",
 | 
			
		||||
    "ButtonResetPassword": "\u049a\u04b1\u043f\u0438\u044f \u0441\u04e9\u0437\u0434\u0456 \u044b\u0441\u044b\u0440\u0443",
 | 
			
		||||
@ -404,9 +404,9 @@
 | 
			
		||||
    "OptionFriday": "\u0436\u04b1\u043c\u0430",
 | 
			
		||||
    "LabelNumberTrailerToPlay": "\u0422\u0440\u0435\u0439\u043b\u0435\u0440\u0434\u0456\u04a3 \u043e\u0439\u043d\u0430\u0442\u044b\u043b\u0443 \u04af\u0448\u0456\u043d \u0441\u0430\u043d\u044b:",
 | 
			
		||||
    "OptionSaturday": "\u0441\u0435\u043d\u0431\u0456",
 | 
			
		||||
    "TitleDevices": "Devices",
 | 
			
		||||
    "TitleDevices": "\u0416\u0430\u0431\u0434\u044b\u049b\u0442\u0430\u0440",
 | 
			
		||||
    "HeaderManagement": "\u041c\u0435\u0442\u0430\u0434\u0435\u0440\u0435\u043a\u0442\u0435\u0440",
 | 
			
		||||
    "TabCameraUpload": "Camera Upload",
 | 
			
		||||
    "TabCameraUpload": "\u041a\u0430\u043c\u0435\u0440\u0430\u0434\u0430\u043d \u043a\u0435\u0440\u0456 \u049b\u043e\u0442\u0430\u0440\u0443",
 | 
			
		||||
    "LabelManagement": "\u041c\u0435\u0442\u0430\u0434\u0435\u0440\u0435\u043a\u0442\u0435\u0440",
 | 
			
		||||
    "TabDevices": "\u0416\u0430\u0431\u0434\u044b\u049b\u0442\u0430\u0440",
 | 
			
		||||
    "OptionMissingImdbId": "IMDb Id \u0436\u043e\u049b",
 | 
			
		||||
@ -414,45 +414,45 @@
 | 
			
		||||
    "OptionMissingTvdbId": "TheTVDB Id \u0436\u043e\u049b",
 | 
			
		||||
    "MessageNoDevicesSupportCameraUpload": "You currently don't have any devices that support camera upload.",
 | 
			
		||||
    "OptionMissingOverview": "\u0416\u0430\u043b\u043f\u044b \u0448\u043e\u043b\u0443 \u0436\u043e\u049b",
 | 
			
		||||
    "LabelCameraUploadPath": "Camera upload path:",
 | 
			
		||||
    "LabelCameraUploadPath": "\u041a\u0430\u043c\u0435\u0440\u0430\u0434\u0430\u043d \u043a\u0435\u0440\u0456 \u049b\u043e\u0442\u0430\u0440\u0443 \u0436\u043e\u043b\u044b:",
 | 
			
		||||
    "OptionFileMetadataYearMismatch": "\u0424\u0430\u0439\u043b\/\u043c\u0435\u0442\u0430\u0434\u0435\u0440\u0435\u043a \u0436\u044b\u043b\u044b \u0441\u04d9\u0439\u043a\u0435\u0441 \u0435\u043c\u0435\u0441",
 | 
			
		||||
    "LabelCameraUploadPathHelp": "Select a custom upload path, if desired. If unspecified a default folder will be used.",
 | 
			
		||||
    "TabGeneral": "\u0416\u0430\u043b\u043f\u044b",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolder": "Create a subfolder for each device",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolder": "\u04d8\u0440\u049b\u0430\u0439\u0441\u044b \u0436\u0430\u0431\u0434\u044b\u049b \u04af\u0448\u0456\u043d \u0456\u0448\u043a\u0456 \u049b\u0430\u043b\u0442\u0430 \u0436\u0430\u0441\u0430\u0443",
 | 
			
		||||
    "TitleSupport": "\u049a\u043e\u043b\u0434\u0430\u0443",
 | 
			
		||||
    "LabelCreateCameraUploadSubfolderHelp": "Specific folders can be assigned to a device by clicking on it from the Devices page.",
 | 
			
		||||
    "TabLog": "\u0416\u04b1\u0440\u043d\u0430\u043b",
 | 
			
		||||
    "LabelCustomDeviceDisplayName": "Display name:",
 | 
			
		||||
    "LabelCustomDeviceDisplayName": "\u0411\u0435\u0439\u043d\u0435\u043b\u0435\u043d\u0443 \u0430\u0442\u044b:",
 | 
			
		||||
    "TabAbout": "\u0422\u0443\u0440\u0430\u043b\u044b",
 | 
			
		||||
    "LabelCustomDeviceDisplayNameHelp": "Supply a custom display name or leave empty to use the name reported by the device.",
 | 
			
		||||
    "TabSupporterKey": "\u049a\u043e\u043b\u0434\u0430\u0443\u0448\u044b \u043a\u0456\u043b\u0442\u0456",
 | 
			
		||||
    "HeaderInviteUser": "Invite User",
 | 
			
		||||
    "HeaderInviteUser": "\u041f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043d\u044b \u0448\u0430\u049b\u044b\u0440\u0443",
 | 
			
		||||
    "TabBecomeSupporter": "\u049a\u043e\u043b\u0434\u0430\u0443\u0448\u044b \u0431\u043e\u043b\u0443",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "This is the username or email that your friend uses to sign in to the Media Browser website.",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "\u0411\u04b1\u043b \u0434\u043e\u0441\u0442\u0430\u0440\u044b\u04a3\u044b\u0437\u0434\u044b\u04a3 Media Browser \u0493\u0430\u043b\u0430\u043c\u0442\u043e\u0440 \u0441\u0430\u0439\u0442\u044b\u043d\u0430 \u043a\u0456\u0440\u0433\u0435\u043d\u0434\u0435 \u049b\u043e\u043b\u0434\u0430\u043d\u0430\u0442\u044b\u043d \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b \u0430\u0442\u044b \u043d\u0435\u043c\u0435\u0441\u0435 \u0435-\u043f\u043e\u0448\u0442\u0430 \u043c\u0435\u043a\u0435\u043d\u0436\u0430\u0439\u044b \u0431\u043e\u043b\u044b\u043f \u0442\u0430\u0431\u044b\u043b\u0430\u0434\u044b.",
 | 
			
		||||
    "MediaBrowserHasCommunity": "Media Browser \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043b\u0430\u0440\u044b \u0431\u0435\u043d \u049b\u043e\u043b\u0434\u0430\u0443\u0448\u044b\u043b\u0430\u0440\u0434\u044b\u04a3 \u0434\u0430\u043c\u0443\u0434\u0430\u0493\u044b \u049b\u0430\u0443\u044b\u043c\u0434\u0430\u0441\u0442\u044b\u0493\u044b \u0431\u0430\u0440.",
 | 
			
		||||
    "HeaderInviteUserHelp": "Sharing your media with friends is easier than ever before with Media Browser Connect.",
 | 
			
		||||
    "CheckoutKnowledgeBase": "Media Browser \u0435\u04a3 \u04af\u043b\u043a\u0435\u043d \u049b\u0430\u0439\u0442\u0430\u0440\u044b\u043c\u0434\u044b\u043b\u044b\u0493\u044b\u043d \u0430\u043b\u0443 \u0436\u04e9\u043d\u0456\u043d\u0434\u0435 \u043a\u04e9\u043c\u0435\u043a\u0442\u0435\u0441\u0443 \u04af\u0448\u0456\u043d \u0411\u0456\u043b\u0456\u043c \u049b\u043e\u0440\u044b\u043d \u049b\u0430\u0440\u0430\u043f \u0448\u044b\u0493\u044b\u04a3\u044b\u0437.",
 | 
			
		||||
    "ButtonSendInvitation": "Send Invitation",
 | 
			
		||||
    "ButtonSendInvitation": "\u0428\u0430\u049b\u044b\u0440\u044b\u043c\u0434\u044b \u0436\u0456\u0431\u0435\u0440\u0443",
 | 
			
		||||
    "SearchKnowledgeBase": "\u0411\u0456\u043b\u0456\u043c \u049b\u043e\u0440\u044b\u043d\u0430\u043d \u0456\u0437\u0434\u0435\u0443",
 | 
			
		||||
    "HeaderGuests": "Guests",
 | 
			
		||||
    "HeaderGuests": "\u049a\u043e\u043d\u0430\u049b\u0442\u0430\u0440",
 | 
			
		||||
    "VisitTheCommunity": "\u049a\u0430\u0443\u044b\u043c\u0434\u0430\u0441\u0442\u044b\u049b\u049b\u0430 \u0431\u0430\u0440\u0443",
 | 
			
		||||
    "HeaderLocalUsers": "Local Users",
 | 
			
		||||
    "HeaderLocalUsers": "\u0416\u0435\u0440\u0433\u0456\u043b\u0456\u043a\u0442\u0456 \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043b\u0430\u0440",
 | 
			
		||||
    "VisitMediaBrowserWebsite": "Media Browser \u0441\u0430\u0439\u0442\u044b\u043d\u0430 \u0431\u0430\u0440\u0443",
 | 
			
		||||
    "HeaderPendingInvitations": "Pending Invitations",
 | 
			
		||||
    "HeaderPendingInvitations": "\u0411\u04e9\u0433\u0435\u043b\u0456\u0441 \u0448\u0430\u049b\u044b\u0440\u044b\u043c\u0434\u0430\u0440",
 | 
			
		||||
    "VisitMediaBrowserWebsiteLong": "\u0421\u043e\u04a3\u0493\u044b \u0436\u0430\u04a3\u0430\u043b\u044b\u049b\u0442\u0430\u0440\u0434\u044b \u0431\u0456\u043b\u0456\u043f \u0430\u043b\u0443 \u04af\u0448\u0456\u043d \u0436\u04d9\u043d\u0435 \u0436\u0430\u0441\u0430\u049b\u0442\u0430\u0443\u0448\u044b\u043b\u0430\u0440 \u0431\u043b\u043e\u0433\u0456\u043c\u0435\u043d \u0442\u0430\u043d\u044b\u0441\u044b\u043f \u0442\u04b1\u0440\u0443 \u04af\u0448\u0456\u043d Media Browser \u0441\u0430\u0439\u0442\u044b\u043d\u0430 \u0431\u0430\u0440\u044b\u04a3\u044b\u0437.",
 | 
			
		||||
    "TabParentalControl": "Parental Control",
 | 
			
		||||
    "TabParentalControl": "\u041c\u0430\u0437\u043c\u04b1\u043d\u0434\u044b \u0431\u0430\u0441\u049b\u0430\u0440\u0443",
 | 
			
		||||
    "OptionHideUser": "\u0411\u04b1\u043b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u043d\u044b \u043a\u0456\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0434\u0430\u0440\u044b\u043d\u0430\u043d \u0436\u0430\u0441\u044b\u0440\u0443",
 | 
			
		||||
    "HeaderAccessSchedule": "Access Schedule",
 | 
			
		||||
    "HeaderAccessSchedule": "\u049a\u0430\u0442\u044b\u043d\u0430\u0441\u0443 \u043a\u0435\u0441\u0442\u0435\u0441\u0456",
 | 
			
		||||
    "OptionDisableUser": "\u0411\u04b1\u043b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u0493\u0430 \u0442\u044b\u0439\u044b\u043c \u0441\u0430\u043b\u0443",
 | 
			
		||||
    "HeaderAccessScheduleHelp": "Create an access schedule to limit access to certain hours.",
 | 
			
		||||
    "HeaderAccessScheduleHelp": "\u049a\u0430\u0442\u044b\u043d\u0430\u0441\u0443\u0434\u044b \u0431\u0435\u043b\u0433\u0456\u043b\u0456 \u0441\u0430\u0493\u0430\u0442\u0442\u0430\u0440\u0493\u0430 \u0448\u0435\u043a\u0442\u0435\u0443 \u04af\u0448\u0456\u043d \u049b\u0430\u0442\u044b\u043d\u0430\u0441\u0443 \u043a\u0435\u0441\u0442\u0435\u0441\u0456\u043d \u0436\u0430\u0441\u0430\u04a3\u044b\u0437.",
 | 
			
		||||
    "OptionDisableUserHelp": "\u0415\u0433\u0435\u0440 \u0442\u044b\u0439\u044b\u043c \u0441\u0430\u043b\u044b\u043d\u0441\u0430, \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u04b1\u043b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u0434\u0430\u043d \u0435\u0448\u049b\u0430\u043d\u0434\u0430\u0439 \u049b\u043e\u0441\u044b\u043b\u044b\u043c\u0493\u0430 \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u043f\u0435\u0439\u0434\u0456. \u0411\u0430\u0440 \u049b\u043e\u0441\u044b\u043b\u044b\u043c\u0434\u0430\u0440 \u043a\u0435\u043d\u0435\u0442 \u04af\u0437\u0456\u043b\u0435\u0434\u0456.",
 | 
			
		||||
    "ButtonAddSchedule": "Add Schedule",
 | 
			
		||||
    "ButtonAddSchedule": "\u041a\u0435\u0441\u0442\u0435 \u04af\u0441\u0442\u0435\u0443",
 | 
			
		||||
    "HeaderAdvancedControl": "\u041a\u0435\u04a3\u0435\u0439\u0442\u0456\u043b\u0433\u0435\u043d \u0431\u0430\u0441\u049b\u0430\u0440\u0443",
 | 
			
		||||
    "LabelAccessDay": "Day of week:",
 | 
			
		||||
    "LabelAccessDay": "\u0410\u043f\u0442\u0430 \u043a\u04af\u043d\u0456",
 | 
			
		||||
    "LabelName": "\u0410\u0442\u044b:",
 | 
			
		||||
    "LabelAccessStart": "Start hour:",
 | 
			
		||||
    "LabelAccessStart": "\u0411\u0430\u0441\u0442\u0430\u0443 \u0441\u0430\u0493\u0430\u0442\u044b:",
 | 
			
		||||
    "OptionAllowUserToManageServer": "\u0411\u0443\u043b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b\u0493\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0434\u0456 \u0431\u0430\u0441\u049b\u0430\u0440\u0443 \u04af\u0448\u0456\u043d \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u0443",
 | 
			
		||||
    "LabelAccessEnd": "End hour:",
 | 
			
		||||
    "LabelAccessEnd": "\u0410\u044f\u049b\u0442\u0430\u0443 \u0441\u0430\u0493\u0430\u0442\u044b:",
 | 
			
		||||
    "HeaderFeatureAccess": "\u041c\u04af\u043c\u043a\u0456\u043d\u0434\u0456\u043a\u0442\u0435\u0440\u0433\u0435 \u049b\u0430\u0442\u044b\u043d\u0430\u0441",
 | 
			
		||||
    "OptionAllowMediaPlayback": "\u0422\u0430\u0441\u0443\u0448\u044b\u0434\u0435\u0440\u0435\u043a\u0442\u0435\u0440\u0434\u0456 \u043e\u0439\u043d\u0430\u0442\u0443\u044b\u043d\u0430 \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u0443",
 | 
			
		||||
    "OptionAllowBrowsingLiveTv": "\u042d\u0444\u0438\u0440\u043b\u0456\u043a \u0422\u0414 \u0448\u043e\u043b\u0443\u044b\u043d\u0430 \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u0443",
 | 
			
		||||
 | 
			
		||||
@ -108,9 +108,9 @@
 | 
			
		||||
    "TabProfile": "\u041f\u0440\u043e\u0444\u0438\u043b\u044c",
 | 
			
		||||
    "LabelImageRefreshMode": "\u0420\u0435\u0436\u0438\u043c \u043f\u043e\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432:",
 | 
			
		||||
    "TabMetadata": "\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435",
 | 
			
		||||
    "OptionDownloadMissingImages": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0441\u0443\u0442-\u0438\u0445 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432",
 | 
			
		||||
    "OptionDownloadMissingImages": "\u041f\u043e\u0434\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432",
 | 
			
		||||
    "TabImages": "\u0420\u0438\u0441\u0443\u043d\u043a\u0438",
 | 
			
		||||
    "OptionReplaceExistingImages": "\u0417\u0430\u043c\u0435\u043d\u0430 \u0441\u0443\u0449\u0435\u0441\u0442-\u0438\u0445 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432",
 | 
			
		||||
    "OptionReplaceExistingImages": "\u0417\u0430\u043c\u0435\u043d\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432",
 | 
			
		||||
    "TabNotifications": "\u0423\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f",
 | 
			
		||||
    "OptionRefreshAllData": "\u041f\u043e\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445",
 | 
			
		||||
    "TabCollectionTitles": "\u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
 | 
			
		||||
@ -428,7 +428,7 @@
 | 
			
		||||
    "TabSupporterKey": "\u041a\u043b\u044e\u0447 \u0441\u043f\u043e\u043d\u0441\u043e\u0440\u0430",
 | 
			
		||||
    "HeaderInviteUser": "\u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
 | 
			
		||||
    "TabBecomeSupporter": "\u0421\u0442\u0430\u0442\u044c \u0441\u043f\u043e\u043d\u0441\u043e\u0440\u043e\u043c",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "This is the username or email that your friend uses to sign in to the Media Browser website.",
 | 
			
		||||
    "LabelConnectInviteUserHelp": "\u042d\u0442\u043e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u043c\u0435\u043d\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438\u043b\u0438 \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u044d-\u043f\u043e\u0447\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u0430\u0448 \u0434\u0440\u0443\u0433 \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f, \u0447\u0442\u043e\u0431\u044b \u0432\u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430 \u0432\u0435\u0431-\u0441\u0430\u0439\u0442 Media Browser.",
 | 
			
		||||
    "MediaBrowserHasCommunity": "\u0423 Media Browser - \u0440\u0430\u0441\u0442\u0443\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432.",
 | 
			
		||||
    "HeaderInviteUserHelp": "\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0440\u0443\u0437\u044c\u044f\u043c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0432\u0430\u0448\u0438\u043c \u043c\u0435\u0434\u0438\u0430\u0434\u0430\u043d\u043d\u044b\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Media Browser Connect \u0441\u0442\u0430\u043b\u043e \u043b\u0435\u0433\u0447\u0435, \u0447\u0435\u043c \u043a\u043e\u0433\u0434\u0430-\u043b\u0438\u0431\u043e \u043f\u0440\u0435\u0436\u0434\u0435.",
 | 
			
		||||
    "CheckoutKnowledgeBase": "\u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0411\u0430\u0437\u043e\u0439 \u0437\u043d\u0430\u043d\u0438\u0439, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0432\u0435\u0441\u0442\u0438 \u0441\u043f\u0440\u0430\u0432\u043a\u0438 \u043f\u043e \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043e\u0442\u0434\u0430\u0447\u0438 \u043e\u0442 Media Browser.",
 | 
			
		||||
@ -442,17 +442,17 @@
 | 
			
		||||
    "VisitMediaBrowserWebsiteLong": "\u041f\u043e\u0441\u0435\u0442\u0438\u0442\u0435 \u0441\u0430\u0439\u0442 Media Browser, \u0447\u0442\u043e\u0431\u044b \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c\u0438 \u043d\u043e\u0432\u043e\u0441\u0442\u044f\u043c\u0438 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043e\u0441\u0432\u0435\u0434\u043e\u043c\u043b\u0451\u043d\u043d\u043e\u0441\u0442\u044c \u043f\u043e \u0431\u043b\u043e\u0433\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432.",
 | 
			
		||||
    "TabParentalControl": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\u043c",
 | 
			
		||||
    "OptionHideUser": "\u0421\u043a\u0440\u044b\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u0432\u0445\u043e\u0434\u0430",
 | 
			
		||||
    "HeaderAccessSchedule": "Access Schedule",
 | 
			
		||||
    "HeaderAccessSchedule": "\u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430",
 | 
			
		||||
    "OptionDisableUser": "\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
 | 
			
		||||
    "HeaderAccessScheduleHelp": "\u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0447\u0430\u0441\u044b.",
 | 
			
		||||
    "OptionDisableUserHelp": "\u041f\u0440\u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438, \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043b\u044e\u0431\u044b\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0440\u0435\u0437\u043a\u043e \u043e\u0431\u043e\u0440\u0432\u0430\u043d\u044b.",
 | 
			
		||||
    "ButtonAddSchedule": "Add Schedule",
 | 
			
		||||
    "ButtonAddSchedule": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
 | 
			
		||||
    "HeaderAdvancedControl": "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435",
 | 
			
		||||
    "LabelAccessDay": "Day of week:",
 | 
			
		||||
    "LabelAccessDay": "\u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438:",
 | 
			
		||||
    "LabelName": "\u0418\u043c\u044f (\u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435):",
 | 
			
		||||
    "LabelAccessStart": "Start hour:",
 | 
			
		||||
    "LabelAccessStart": "\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0447\u0430\u0441:",
 | 
			
		||||
    "OptionAllowUserToManageServer": "\u042d\u0442\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c",
 | 
			
		||||
    "LabelAccessEnd": "End hour:",
 | 
			
		||||
    "LabelAccessEnd": "\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0447\u0430\u0441:",
 | 
			
		||||
    "HeaderFeatureAccess": "\u0414\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438",
 | 
			
		||||
    "OptionAllowMediaPlayback": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u0435\u0434\u0438\u0430\u0434\u0430\u043d\u043d\u044b\u0445",
 | 
			
		||||
    "OptionAllowBrowsingLiveTv": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u044d\u0444\u0438\u0440\u043d\u043e\u0433\u043e \u0442\u0432",
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.Server.Implementations</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -511,7 +510,6 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup />
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -12,7 +12,6 @@
 | 
			
		||||
    <StartupObject>MediaBrowser.Server.Mono.MainClass</StartupObject>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
@ -189,11 +188,4 @@
 | 
			
		||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
			
		||||
    </Content>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
 | 
			
		||||
  <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
 | 
			
		||||
    <PropertyGroup>
 | 
			
		||||
      <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
 | 
			
		||||
    </PropertyGroup>
 | 
			
		||||
    <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
 | 
			
		||||
  </Target>
 | 
			
		||||
</Project>
 | 
			
		||||
@ -12,7 +12,6 @@
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <PlatformTarget>AnyCPU</PlatformTarget>
 | 
			
		||||
@ -222,7 +221,6 @@
 | 
			
		||||
    </ProjectReference>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <PostBuildEvent>if $(ConfigurationName) == Release (
 | 
			
		||||
rmdir "$(SolutionDir)..\Deploy\Server\System" /s /q
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@
 | 
			
		||||
    <AssemblyName>MediaBrowser.WebDashboard</AssemblyName>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
 | 
			
		||||
    <RestorePackages>true</RestorePackages>
 | 
			
		||||
    <ProductVersion>10.0.0</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
 | 
			
		||||
@ -2264,7 +2263,6 @@
 | 
			
		||||
    <PostBuildEvent>
 | 
			
		||||
    </PostBuildEvent>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 | 
			
		||||
    <metadata>
 | 
			
		||||
        <id>MediaBrowser.Common.Internal</id>
 | 
			
		||||
        <version>3.0.491</version>
 | 
			
		||||
        <version>3.0.493</version>
 | 
			
		||||
        <title>MediaBrowser.Common.Internal</title>
 | 
			
		||||
        <authors>Luke</authors>
 | 
			
		||||
        <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>
 | 
			
		||||
        <copyright>Copyright © Media Browser 2013</copyright>
 | 
			
		||||
        <dependencies>
 | 
			
		||||
            <dependency id="MediaBrowser.Common" version="3.0.491" />
 | 
			
		||||
            <dependency id="MediaBrowser.Common" version="3.0.493" />
 | 
			
		||||
            <dependency id="NLog" version="3.1.0.0" />
 | 
			
		||||
            <dependency id="SimpleInjector" version="2.5.2" />
 | 
			
		||||
            <dependency id="sharpcompress" version="0.10.2" />
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 | 
			
		||||
    <metadata>
 | 
			
		||||
        <id>MediaBrowser.Common</id>
 | 
			
		||||
        <version>3.0.491</version>
 | 
			
		||||
        <version>3.0.493</version>
 | 
			
		||||
        <title>MediaBrowser.Common</title>
 | 
			
		||||
        <authors>Media Browser Team</authors>
 | 
			
		||||
        <owners>ebr,Luke,scottisafool</owners>
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
 | 
			
		||||
    <metadata>
 | 
			
		||||
        <id>MediaBrowser.Model.Signed</id>
 | 
			
		||||
        <version>3.0.491</version>
 | 
			
		||||
        <version>3.0.493</version>
 | 
			
		||||
        <title>MediaBrowser.Model - Signed Edition</title>
 | 
			
		||||
        <authors>Media Browser Team</authors>
 | 
			
		||||
        <owners>ebr,Luke,scottisafool</owners>
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
 | 
			
		||||
    <metadata>
 | 
			
		||||
        <id>MediaBrowser.Server.Core</id>
 | 
			
		||||
        <version>3.0.491</version>
 | 
			
		||||
        <version>3.0.493</version>
 | 
			
		||||
        <title>Media Browser.Server.Core</title>
 | 
			
		||||
        <authors>Media Browser Team</authors>
 | 
			
		||||
        <owners>ebr,Luke,scottisafool</owners>
 | 
			
		||||
@ -12,7 +12,7 @@
 | 
			
		||||
        <description>Contains core components required to build plugins for Media Browser Server.</description>
 | 
			
		||||
        <copyright>Copyright © Media Browser 2013</copyright>
 | 
			
		||||
        <dependencies>
 | 
			
		||||
            <dependency id="MediaBrowser.Common" version="3.0.491" />
 | 
			
		||||
            <dependency id="MediaBrowser.Common" version="3.0.493" />
 | 
			
		||||
        </dependencies>
 | 
			
		||||
    </metadata>
 | 
			
		||||
    <files>
 | 
			
		||||
 | 
			
		||||
@ -119,7 +119,6 @@
 | 
			
		||||
    <Content Include="XML-RPC\Docs\XML-RPC.txt" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
  <Import Project="$(SolutionDir)\.nuget\NuGet.targets" />
 | 
			
		||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
			
		||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
			
		||||
  <Target Name="BeforeBuild">
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user