mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-04 03:27:21 -05:00 
			
		
		
		
	Remove unused code...
This commit is contained in:
		
							parent
							
								
									e73b418f9d
								
							
						
					
					
						commit
						168587b2a0
					
				@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Model.Drawing;
 | 
			
		||||
using MediaBrowser.Model.Drawing;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Drawing;
 | 
			
		||||
using System.Drawing.Drawing2D;
 | 
			
		||||
using System.Drawing.Imaging;
 | 
			
		||||
 | 
			
		||||
@ -6,7 +6,6 @@ using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace Emby.Drawing.ImageMagick
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,6 @@ using MediaBrowser.Common.Configuration;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace Emby.Drawing.ImageMagick
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
using ImageMagickSharp;
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Model.Drawing;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Drawing;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Runtime.CompilerServices;
 | 
			
		||||
using System.Runtime.InteropServices;
 | 
			
		||||
 | 
			
		||||
// General Information about an assembly is controlled through the following 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
using MediaBrowser.Api.Playback;
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Plugins;
 | 
			
		||||
 | 
			
		||||
@ -9,7 +9,6 @@ using MediaBrowser.Model.Logging;
 | 
			
		||||
using ServiceStack.Text.Controller;
 | 
			
		||||
using ServiceStack.Web;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,6 @@ using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,6 @@ using MediaBrowser.Controller.Providers;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -331,7 +331,7 @@ namespace MediaBrowser.Api
 | 
			
		||||
                hasAspectRatio.AspectRatio = request.AspectRatio;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            item.IsLocked = (request.LockData ?? false);
 | 
			
		||||
            item.IsLocked = request.LockData ?? false;
 | 
			
		||||
 | 
			
		||||
            if (request.LockedFields != null)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,6 @@
 | 
			
		||||
using MediaBrowser.Api.Movies;
 | 
			
		||||
using MediaBrowser.Api.Music;
 | 
			
		||||
using MediaBrowser.Controller.Activity;
 | 
			
		||||
using MediaBrowser.Controller.Channels;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
@ -14,13 +13,11 @@ using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Controller.TV;
 | 
			
		||||
using MediaBrowser.Model.Activity;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using System.IO;
 | 
			
		||||
@ -28,7 +25,6 @@ using System.Linq;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Library
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,10 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Controller.Channels;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Movies;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
@ -15,7 +13,6 @@ using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Movies
 | 
			
		||||
 | 
			
		||||
@ -1,17 +1,9 @@
 | 
			
		||||
using MediaBrowser.Api.UserLibrary;
 | 
			
		||||
using MediaBrowser.Controller.Channels;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using MediaBrowser.Controller.Collections;
 | 
			
		||||
using MediaBrowser.Controller.Localization;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,6 @@ using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,10 @@
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dlna;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.MediaEncoding;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Dlna;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
@ -1548,7 +1546,7 @@ namespace MediaBrowser.Api.Playback
 | 
			
		||||
                double digit;
 | 
			
		||||
                if (double.TryParse(time, NumberStyles.Any, UsCulture, out digit))
 | 
			
		||||
                {
 | 
			
		||||
                    secondsSum += (digit * timeFactor);
 | 
			
		||||
                    secondsSum += digit * timeFactor;
 | 
			
		||||
                }
 | 
			
		||||
                else
 | 
			
		||||
                {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Api.Playback.Hls;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
@ -156,7 +155,7 @@ namespace MediaBrowser.Api.Playback.Dash
 | 
			
		||||
                        var currentTranscodingIndex = GetCurrentTranscodingIndex(playlistPath, segmentExtension);
 | 
			
		||||
                        var segmentGapRequiringTranscodingChange = 24 / state.SegmentLength;
 | 
			
		||||
                        Logger.Debug("Current transcoding index is {0}. requestedIndex={1}. segmentGapRequiringTranscodingChange={2}", currentTranscodingIndex ?? -2, requestedIndex, segmentGapRequiringTranscodingChange);
 | 
			
		||||
                        if (currentTranscodingIndex == null || requestedIndex < currentTranscodingIndex.Value || (requestedIndex - currentTranscodingIndex.Value) > segmentGapRequiringTranscodingChange)
 | 
			
		||||
                        if (currentTranscodingIndex == null || requestedIndex < currentTranscodingIndex.Value || requestedIndex - currentTranscodingIndex.Value > segmentGapRequiringTranscodingChange)
 | 
			
		||||
                        {
 | 
			
		||||
                            // If the playlist doesn't already exist, startup ffmpeg
 | 
			
		||||
                            try
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dlna;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
 | 
			
		||||
@ -199,9 +199,9 @@ namespace MediaBrowser.Api.Playback.Hls
 | 
			
		||||
                        Logger.Debug("Starting transcoding because requestedIndex={0} and currentTranscodingIndex={1}", requestedIndex, currentTranscodingIndex);
 | 
			
		||||
                        startTranscoding = true;
 | 
			
		||||
                    }
 | 
			
		||||
                    else if ((requestedIndex - currentTranscodingIndex.Value) > segmentGapRequiringTranscodingChange)
 | 
			
		||||
                    else if (requestedIndex - currentTranscodingIndex.Value > segmentGapRequiringTranscodingChange)
 | 
			
		||||
                    {
 | 
			
		||||
                        Logger.Debug("Starting transcoding because segmentGap is {0} and max allowed gap is {1}. requestedIndex={2}", (requestedIndex - currentTranscodingIndex.Value), segmentGapRequiringTranscodingChange, requestedIndex);
 | 
			
		||||
                        Logger.Debug("Starting transcoding because segmentGap is {0} and max allowed gap is {1}. requestedIndex={2}", requestedIndex - currentTranscodingIndex.Value, segmentGapRequiringTranscodingChange, requestedIndex);
 | 
			
		||||
                        startTranscoding = true;
 | 
			
		||||
                    }
 | 
			
		||||
                    if (startTranscoding)
 | 
			
		||||
@ -524,7 +524,7 @@ namespace MediaBrowser.Api.Playback.Hls
 | 
			
		||||
                .ToList();
 | 
			
		||||
 | 
			
		||||
            var subtitleGroup = subtitleStreams.Count > 0 &&
 | 
			
		||||
                (request is GetMasterHlsVideoPlaylist) &&
 | 
			
		||||
                request is GetMasterHlsVideoPlaylist &&
 | 
			
		||||
                ((GetMasterHlsVideoPlaylist)request).SubtitleMethod == SubtitleDeliveryMethod.Hls ?
 | 
			
		||||
                "subs" :
 | 
			
		||||
                null;
 | 
			
		||||
@ -544,12 +544,12 @@ namespace MediaBrowser.Api.Playback.Hls
 | 
			
		||||
                var variation = GetBitrateVariation(totalBitrate);
 | 
			
		||||
 | 
			
		||||
                var newBitrate = totalBitrate - variation;
 | 
			
		||||
                var variantUrl = ReplaceBitrate(playlistUrl, requestedVideoBitrate, (requestedVideoBitrate - variation));
 | 
			
		||||
                var variantUrl = ReplaceBitrate(playlistUrl, requestedVideoBitrate, requestedVideoBitrate - variation);
 | 
			
		||||
                AppendPlaylist(builder, state, variantUrl, newBitrate, subtitleGroup);
 | 
			
		||||
 | 
			
		||||
                variation *= 2;
 | 
			
		||||
                newBitrate = totalBitrate - variation;
 | 
			
		||||
                variantUrl = ReplaceBitrate(playlistUrl, requestedVideoBitrate, (requestedVideoBitrate - variation));
 | 
			
		||||
                variantUrl = ReplaceBitrate(playlistUrl, requestedVideoBitrate, requestedVideoBitrate - variation);
 | 
			
		||||
                AppendPlaylist(builder, state, variantUrl, newBitrate, subtitleGroup);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@ -703,7 +703,7 @@ namespace MediaBrowser.Api.Playback.Hls
 | 
			
		||||
            builder.AppendLine("#EXTM3U");
 | 
			
		||||
            builder.AppendLine("#EXT-X-PLAYLIST-TYPE:VOD");
 | 
			
		||||
            builder.AppendLine("#EXT-X-VERSION:3");
 | 
			
		||||
            builder.AppendLine("#EXT-X-TARGETDURATION:" + Math.Ceiling((segmentLengths.Length > 0 ? segmentLengths.Max() : state.SegmentLength)).ToString(UsCulture));
 | 
			
		||||
            builder.AppendLine("#EXT-X-TARGETDURATION:" + Math.Ceiling(segmentLengths.Length > 0 ? segmentLengths.Max() : state.SegmentLength).ToString(UsCulture));
 | 
			
		||||
            builder.AppendLine("#EXT-X-MEDIA-SEQUENCE:0");
 | 
			
		||||
 | 
			
		||||
            var queryStringIndex = Request.RawUrl.IndexOf('?');
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,3 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dlna;
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,9 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dlna;
 | 
			
		||||
using MediaBrowser.Controller.Drawing;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.LiveTv;
 | 
			
		||||
using MediaBrowser.Controller.MediaEncoding;
 | 
			
		||||
using MediaBrowser.Model.IO;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dlna;
 | 
			
		||||
@ -14,7 +13,6 @@ using ServiceStack.Web;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
using ServiceStack.Web;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,3 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
@ -10,7 +9,6 @@ using MediaBrowser.Model.IO;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Model.Dlna;
 | 
			
		||||
 | 
			
		||||
@ -185,7 +185,7 @@ namespace MediaBrowser.Api.Playback
 | 
			
		||||
 | 
			
		||||
        private async void DisposeLiveStream()
 | 
			
		||||
        {
 | 
			
		||||
            if ((MediaSource.RequiresClosing) && string.IsNullOrWhiteSpace(Request.LiveStreamId))
 | 
			
		||||
            if (MediaSource.RequiresClosing && string.IsNullOrWhiteSpace(Request.LiveStreamId))
 | 
			
		||||
            {
 | 
			
		||||
                try
 | 
			
		||||
                {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common;
 | 
			
		||||
using MediaBrowser.Common.Extensions;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Security;
 | 
			
		||||
using MediaBrowser.Common.Updates;
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,7 @@
 | 
			
		||||
using MediaBrowser.Model.Activity;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
    public enum HeaderActivitiesMetadata
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum HeaderMetadata
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
    public enum ItemViewType
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Controller.Entities.TV;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
@ -8,8 +7,6 @@ using MediaBrowser.Model.Entities;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
@ -327,7 +324,7 @@ namespace MediaBrowser.Api.Reports
 | 
			
		||||
            if (stream != null && stream.Width != null)
 | 
			
		||||
                return string.Format("{0} * {1}",
 | 
			
		||||
                        stream.Width,
 | 
			
		||||
                        (stream.Height != null ? stream.Height.ToString() : "-"));
 | 
			
		||||
                        stream.Height != null ? stream.Height.ToString() : "-");
 | 
			
		||||
 | 
			
		||||
            return string.Empty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
    public enum ReportDisplayType
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum ReportExportType
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum ReportFieldType
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum ReportHeaderIdType
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum ReportIncludeItemTypes
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	public enum ReportViewType
 | 
			
		||||
 | 
			
		||||
@ -1,19 +1,10 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Movies;
 | 
			
		||||
using MediaBrowser.Controller.Entities.TV;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Localization;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Linq.Expressions;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
@ -616,9 +607,9 @@ namespace MediaBrowser.Api.Reports
 | 
			
		||||
                Id = item.Id.ToString("N"),
 | 
			
		||||
                HasLockData = item.IsLocked,
 | 
			
		||||
                HasLocalTrailer = hasTrailers != null ? hasTrailers.GetTrailerIds().Count() > 0 : false,
 | 
			
		||||
                HasImageTagsPrimary = (item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Primary) > 0),
 | 
			
		||||
                HasImageTagsBackdrop = (item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Backdrop) > 0),
 | 
			
		||||
                HasImageTagsLogo = (item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Logo) > 0),
 | 
			
		||||
                HasImageTagsPrimary = item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Primary) > 0,
 | 
			
		||||
                HasImageTagsBackdrop = item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Backdrop) > 0,
 | 
			
		||||
                HasImageTagsLogo = item.ImageInfos != null && item.ImageInfos.Count(n => n.Type == ImageType.Logo) > 0,
 | 
			
		||||
                HasSpecials = hasSpecialFeatures != null ? hasSpecialFeatures.SpecialFeatureIds.Count > 0 : false,
 | 
			
		||||
                HasSubtitles = video != null ? video.HasSubtitles : false,
 | 
			
		||||
                RowType = ReportHelper.GetRowType(item.GetClientTypeName())
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,5 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,4 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,4 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	/// <summary> A report header. </summary>
 | 
			
		||||
	public class ReportHeader
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	/// <summary> A report item. </summary>
 | 
			
		||||
	public class ReportItem
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,6 @@
 | 
			
		||||
using MediaBrowser.Api.UserLibrary;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,26 +1,15 @@
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Localization;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Movies;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Api.UserLibrary;
 | 
			
		||||
using MediaBrowser.Controller.Collections;
 | 
			
		||||
using MediaBrowser.Controller.Entities.TV;
 | 
			
		||||
using System;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Activity;
 | 
			
		||||
using MediaBrowser.Controller.Activity;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Text;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,8 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
	/// <summary> A report stat item. </summary>
 | 
			
		||||
	public class ReportStatItem
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Reports
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.ScheduledTasks;
 | 
			
		||||
using MediaBrowser.Common.ScheduledTasks;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Events;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
 | 
			
		||||
@ -4,12 +4,10 @@ using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Controller.Entities.TV;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.LiveTv;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Search;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -17,7 +17,6 @@ using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MimeTypes = MediaBrowser.Model.Net.MimeTypes;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Api.Subtitles
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
using MediaBrowser.Model.System;
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,8 @@
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Security;
 | 
			
		||||
using MediaBrowser.Controller;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.System;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,6 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
@ -332,7 +331,7 @@ namespace MediaBrowser.Api.UserLibrary
 | 
			
		||||
                    {
 | 
			
		||||
                        return false;
 | 
			
		||||
                    }
 | 
			
		||||
                    if (!(tags.Any(v => hasTags.Tags.Contains(v, StringComparer.OrdinalIgnoreCase))))
 | 
			
		||||
                    if (!tags.Any(v => hasTags.Tags.Contains(v, StringComparer.OrdinalIgnoreCase)))
 | 
			
		||||
                    {
 | 
			
		||||
                        return false;
 | 
			
		||||
                    }
 | 
			
		||||
@ -347,7 +346,7 @@ namespace MediaBrowser.Api.UserLibrary
 | 
			
		||||
 | 
			
		||||
                // Apply genre filter
 | 
			
		||||
                var genres = request.GetGenres();
 | 
			
		||||
                if (genres.Length > 0 && !(genres.Any(v => i.Genres.Contains(v, StringComparer.OrdinalIgnoreCase))))
 | 
			
		||||
                if (genres.Length > 0 && !genres.Any(v => i.Genres.Contains(v, StringComparer.OrdinalIgnoreCase)))
 | 
			
		||||
                {
 | 
			
		||||
                    return false;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,6 @@ using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,6 @@
 | 
			
		||||
using MediaBrowser.Controller.Collections;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Audio;
 | 
			
		||||
using MediaBrowser.Controller.Entities.TV;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Localization;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
 | 
			
		||||
@ -5,9 +5,7 @@ using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -285,7 +285,7 @@ namespace MediaBrowser.Api.UserLibrary
 | 
			
		||||
        /// <param name="request">The request.</param>
 | 
			
		||||
        public void Post(OnPlaybackStart request)
 | 
			
		||||
        {
 | 
			
		||||
            var queueableMediaTypes = (request.QueueableMediaTypes ?? string.Empty);
 | 
			
		||||
            var queueableMediaTypes = request.QueueableMediaTypes ?? string.Empty;
 | 
			
		||||
 | 
			
		||||
            Post(new ReportPlaybackStart
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
@ -4,9 +4,7 @@ using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4,9 +4,7 @@ using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Persistence;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using ServiceStack;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,6 @@
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Devices;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Net;
 | 
			
		||||
using MediaBrowser.Controller.Session;
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Configuration;
 | 
			
		||||
using MediaBrowser.Controller.Dto;
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
 | 
			
		||||
@ -5,10 +5,8 @@ using SharpCompress.Archive.Tar;
 | 
			
		||||
using SharpCompress.Common;
 | 
			
		||||
using SharpCompress.Reader;
 | 
			
		||||
using SharpCompress.Reader.Zip;
 | 
			
		||||
using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Common.Implementations.Archiving
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,6 @@ using MediaBrowser.Common.Implementations.ScheduledTasks;
 | 
			
		||||
using MediaBrowser.Common.Implementations.Security;
 | 
			
		||||
using MediaBrowser.Common.Implementations.Serialization;
 | 
			
		||||
using MediaBrowser.Common.Implementations.Updates;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Plugins;
 | 
			
		||||
using MediaBrowser.Common.Progress;
 | 
			
		||||
@ -251,7 +250,7 @@ namespace MediaBrowser.Common.Implementations
 | 
			
		||||
            progress.Report(15);
 | 
			
		||||
 | 
			
		||||
            var innerProgress = new ActionableProgress<double>();
 | 
			
		||||
            innerProgress.RegisterAction(p => progress.Report((.8 * p) + 15));
 | 
			
		||||
            innerProgress.RegisterAction(p => progress.Report(.8 * p + 15));
 | 
			
		||||
 | 
			
		||||
            await RegisterResources(innerProgress).ConfigureAwait(false);
 | 
			
		||||
 | 
			
		||||
@ -661,7 +660,7 @@ namespace MediaBrowser.Common.Implementations
 | 
			
		||||
        {
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                return Assembly.Load(File.ReadAllBytes((file)));
 | 
			
		||||
                return Assembly.Load(File.ReadAllBytes(file));
 | 
			
		||||
            }
 | 
			
		||||
            catch (Exception ex)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,6 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Common.Implementations.Configuration
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,6 @@ using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Common.Implementations.Devices
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@ using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using Microsoft.Win32;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Common.Implementations.ScheduledTasks
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.ScheduledTasks;
 | 
			
		||||
using MediaBrowser.Model.Logging;
 | 
			
		||||
using System;
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,7 @@
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.ScheduledTasks;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
@ -57,7 +55,7 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks.Tasks
 | 
			
		||||
        public Task Execute(CancellationToken cancellationToken, IProgress<double> progress)
 | 
			
		||||
        {
 | 
			
		||||
            // Delete log files more than n days old
 | 
			
		||||
            var minDateModified = DateTime.UtcNow.AddDays(-(ConfigurationManager.CommonConfiguration.LogFileRetentionDays));
 | 
			
		||||
            var minDateModified = DateTime.UtcNow.AddDays(-ConfigurationManager.CommonConfiguration.LogFileRetentionDays);
 | 
			
		||||
 | 
			
		||||
			var filesToDelete = _fileSystem.GetFiles(ConfigurationManager.CommonApplicationPaths.LogDirectoryPath, true)
 | 
			
		||||
                          .Where(f => _fileSystem.GetLastWriteTimeUtc(f) < minDateModified)
 | 
			
		||||
 | 
			
		||||
@ -103,11 +103,11 @@ namespace MediaBrowser.Common.Implementations.Security
 | 
			
		||||
                }
 | 
			
		||||
                catch (DirectoryNotFoundException)
 | 
			
		||||
                {
 | 
			
		||||
                    (File.Create(licenseFile)).Close();
 | 
			
		||||
                    File.Create(licenseFile).Close();
 | 
			
		||||
                }
 | 
			
		||||
                catch (FileNotFoundException)
 | 
			
		||||
                {
 | 
			
		||||
					(File.Create(licenseFile)).Close();
 | 
			
		||||
					File.Create(licenseFile).Close();
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            if (contents != null && contents.Length > 0)
 | 
			
		||||
 | 
			
		||||
@ -299,7 +299,7 @@ namespace MediaBrowser.Common.Implementations.Security
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
            record.TrialVersion = IsInTrial(reg.expDate, record.RegChecked, record.IsRegistered);
 | 
			
		||||
            record.IsValid = !record.RegChecked || (record.IsRegistered || record.TrialVersion);
 | 
			
		||||
            record.IsValid = !record.RegChecked || record.IsRegistered || record.TrialVersion;
 | 
			
		||||
 | 
			
		||||
            return record;
 | 
			
		||||
        }
 | 
			
		||||
@ -314,7 +314,7 @@ namespace MediaBrowser.Common.Implementations.Security
 | 
			
		||||
 | 
			
		||||
            var isInTrial = expirationDate > DateTime.UtcNow;
 | 
			
		||||
 | 
			
		||||
            return (isInTrial && !isRegistered);
 | 
			
		||||
            return isInTrial && !isRegistered;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
using MediaBrowser.Model.Serialization;
 | 
			
		||||
using System;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,6 @@ using System.Collections.Concurrent;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Xml;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Common.Implementations.Serialization
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -2,8 +2,6 @@
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,6 @@
 | 
			
		||||
using MediaBrowser.Common.Configuration;
 | 
			
		||||
using MediaBrowser.Common.Events;
 | 
			
		||||
using MediaBrowser.Common.Implementations.Security;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Common.Net;
 | 
			
		||||
using MediaBrowser.Common.Plugins;
 | 
			
		||||
using MediaBrowser.Common.Progress;
 | 
			
		||||
@ -200,7 +199,7 @@ namespace MediaBrowser.Common.Implementations.Updates
 | 
			
		||||
                {
 | 
			
		||||
                    var packages = _jsonSerializer.DeserializeFromStream<List<PackageInfo>>(stream).ToList();
 | 
			
		||||
 | 
			
		||||
                    if ((DateTime.UtcNow - _lastPackageUpdateTime) > GetCacheLength())
 | 
			
		||||
                    if (DateTime.UtcNow - _lastPackageUpdateTime > GetCacheLength())
 | 
			
		||||
                    {
 | 
			
		||||
                        UpdateCachedPackages(CancellationToken.None, false);
 | 
			
		||||
                    }
 | 
			
		||||
@ -233,7 +232,7 @@ namespace MediaBrowser.Common.Implementations.Updates
 | 
			
		||||
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                if ((DateTime.UtcNow - _lastPackageUpdateTime) < GetCacheLength())
 | 
			
		||||
                if (DateTime.UtcNow - _lastPackageUpdateTime < GetCacheLength())
 | 
			
		||||
                {
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@ -147,7 +147,7 @@ namespace MediaBrowser.Common.IO
 | 
			
		||||
            BytesProcessed += read;
 | 
			
		||||
 | 
			
		||||
            double percent = BytesProcessed;
 | 
			
		||||
            percent /= (ReadLength ?? BaseStream.Length);
 | 
			
		||||
            percent /= ReadLength ?? BaseStream.Length;
 | 
			
		||||
            percent *= 100;
 | 
			
		||||
 | 
			
		||||
            ProgressAction(percent);
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,6 @@ using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Users;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Runtime.Serialization;
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,6 @@ using System.Runtime.Serialization;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Channels
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,8 @@
 | 
			
		||||
using MediaBrowser.Controller.Entities;
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Users;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Globalization;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
@ -3,11 +3,9 @@ using MediaBrowser.Controller.Library;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Concurrent;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Runtime.Serialization;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,6 @@ using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.MediaInfo;
 | 
			
		||||
using MediaBrowser.Model.Users;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
@ -191,7 +190,7 @@ namespace MediaBrowser.Controller.Entities.Audio
 | 
			
		||||
                if (IndexNumber.HasValue)
 | 
			
		||||
                {
 | 
			
		||||
                    var songKey = (ParentIndexNumber != null ? ParentIndexNumber.Value.ToString("0000 - ") : "")
 | 
			
		||||
                                  + (IndexNumber.Value.ToString("0000 - "));
 | 
			
		||||
                                  + IndexNumber.Value.ToString("0000 - ");
 | 
			
		||||
 | 
			
		||||
                    return parentKey + songKey;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,4 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities.Audio
 | 
			
		||||
namespace MediaBrowser.Controller.Entities.Audio
 | 
			
		||||
{
 | 
			
		||||
    public class AudioPodcast : Audio
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
@ -69,7 +69,7 @@ namespace MediaBrowser.Controller.Entities.Audio
 | 
			
		||||
 | 
			
		||||
        public Func<BaseItem, bool> GetItemFilter()
 | 
			
		||||
        {
 | 
			
		||||
            return i => (i is IHasMusicGenres) && i.Genres.Contains(Name, StringComparer.OrdinalIgnoreCase);
 | 
			
		||||
            return i => i is IHasMusicGenres && i.Genres.Contains(Name, StringComparer.OrdinalIgnoreCase);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [IgnoreDataMember]
 | 
			
		||||
 | 
			
		||||
@ -307,7 +307,7 @@ namespace MediaBrowser.Controller.Entities
 | 
			
		||||
 | 
			
		||||
            int thisMarker = 0, thisNumericChunk = 0;
 | 
			
		||||
 | 
			
		||||
            while ((thisMarker < s1.Length))
 | 
			
		||||
            while (thisMarker < s1.Length)
 | 
			
		||||
            {
 | 
			
		||||
                if (thisMarker >= s1.Length)
 | 
			
		||||
                {
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,8 @@
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Runtime.Serialization;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Users;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -3,13 +3,11 @@ using MediaBrowser.Controller.Library;
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Runtime.Serialization;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
@ -6,7 +6,6 @@ using MediaBrowser.Model.Dto;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Querying;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
@ -14,9 +13,6 @@ using System.Runtime.Serialization;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Entities.Movies;
 | 
			
		||||
using MediaBrowser.Controller.Playlists;
 | 
			
		||||
using MediaBrowser.Model.Channels;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities
 | 
			
		||||
@ -500,7 +496,7 @@ namespace MediaBrowser.Controller.Entities
 | 
			
		||||
 | 
			
		||||
                var innerProgress = new ActionableProgress<double>();
 | 
			
		||||
 | 
			
		||||
                innerProgress.RegisterAction(p => progress.Report((.80 * p) + 20));
 | 
			
		||||
                innerProgress.RegisterAction(p => progress.Report(.80 * p + 20));
 | 
			
		||||
 | 
			
		||||
                if (container != null)
 | 
			
		||||
                {
 | 
			
		||||
@ -634,7 +630,7 @@ namespace MediaBrowser.Controller.Entities
 | 
			
		||||
                        var percent = percentages.Values.Sum();
 | 
			
		||||
                        percent /= childCount;
 | 
			
		||||
 | 
			
		||||
                        progress.Report((10 * percent) + 10);
 | 
			
		||||
                        progress.Report(10 * percent + 10);
 | 
			
		||||
                    }
 | 
			
		||||
                });
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,6 @@
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
using MediaBrowser.Model.Configuration;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using MediaBrowser.Model.Users;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
@ -60,7 +60,7 @@ namespace MediaBrowser.Controller.Entities
 | 
			
		||||
 | 
			
		||||
        public Func<BaseItem, bool> GetItemFilter()
 | 
			
		||||
        {
 | 
			
		||||
            return i => (i is Game) && i.Genres.Contains(Name, StringComparer.OrdinalIgnoreCase);
 | 
			
		||||
            return i => i is Game && i.Genres.Contains(Name, StringComparer.OrdinalIgnoreCase);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [IgnoreDataMember]
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,9 @@
 | 
			
		||||
using MediaBrowser.Controller.Providers;
 | 
			
		||||
using MediaBrowser.Model.Entities;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using CommonIO;
 | 
			
		||||
using MediaBrowser.Common.IO;
 | 
			
		||||
using MediaBrowser.Controller.Library;
 | 
			
		||||
 | 
			
		||||
namespace MediaBrowser.Controller.Entities
 | 
			
		||||
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user