add connect to startup wizard

This commit is contained in:
Luke Pulverenti
2014-10-19 23:04:45 -04:00
parent 813f5d9649
commit 3be4aa8dc7
52 changed files with 2708 additions and 291 deletions

View File

@@ -37,7 +37,7 @@ namespace MediaBrowser.LocalMetadata.Images
{
var collectionFolder = (CollectionFolder)item;
return new LocalImageProvider(_fileSystem).GetImages(item, collectionFolder.PhysicalLocations, directoryService);
return new LocalImageProvider(_fileSystem).GetImages(item, collectionFolder.PhysicalLocations, false, directoryService);
}
}
}

View File

@@ -45,7 +45,7 @@ namespace MediaBrowser.LocalMetadata.Images
try
{
return new LocalImageProvider(_fileSystem).GetImages(item, path, directoryService);
return new LocalImageProvider(_fileSystem).GetImages(item, path, false, directoryService);
}
catch (DirectoryNotFoundException)
{

View File

@@ -38,7 +38,7 @@ namespace MediaBrowser.LocalMetadata.Images
return true;
}
if (item.SupportsLocalMetadata)
if (item.SupportsLocalMetadata && !item.AlwaysScanInternalMetadataPath)
{
return false;
}
@@ -59,14 +59,9 @@ namespace MediaBrowser.LocalMetadata.Images
{
var path = item.GetInternalMetadataPath();
if (item is IChannelItem)
{
var b = true;
}
try
{
return new LocalImageProvider(_fileSystem).GetImages(item, path, directoryService);
return new LocalImageProvider(_fileSystem).GetImages(item, path, true, directoryService);
}
catch (DirectoryNotFoundException)
{

View File

@@ -21,7 +21,7 @@ namespace MediaBrowser.LocalMetadata.Images
{
_fileSystem = fileSystem;
}
public string Name
{
get { return "Local Images"; }
@@ -94,12 +94,12 @@ namespace MediaBrowser.LocalMetadata.Images
return list;
}
public List<LocalImageInfo> GetImages(IHasImages item, string path, IDirectoryService directoryService)
public List<LocalImageInfo> GetImages(IHasImages item, string path, bool checkForCacheKeyFiles, IDirectoryService directoryService)
{
return GetImages(item, new[] { path }, directoryService);
return GetImages(item, new[] { path }, checkForCacheKeyFiles, directoryService);
}
public List<LocalImageInfo> GetImages(IHasImages item, IEnumerable<string> paths, IDirectoryService directoryService)
public List<LocalImageInfo> GetImages(IHasImages item, IEnumerable<string> paths, bool checkForCacheKeyFiles, IDirectoryService directoryService)
{
var files = paths.SelectMany(directoryService.GetFiles)
.Where(i =>
@@ -115,6 +115,12 @@ namespace MediaBrowser.LocalMetadata.Images
PopulateImages(item, list, files, false, directoryService);
if (checkForCacheKeyFiles)
{
AddCacheKeyImage(files, list, ImageType.Primary);
AddCacheKeyImage(files, list, ImageType.Thumb);
}
return list;
}
@@ -322,6 +328,26 @@ namespace MediaBrowser.LocalMetadata.Images
return false;
}
private void AddCacheKeyImage(IEnumerable<FileSystemInfo> files, List<LocalImageInfo> images, ImageType type)
{
var candidates = files
.Where(i => _fileSystem.GetFileNameWithoutExtension(i).StartsWith(type.ToString() + "_key_", StringComparison.OrdinalIgnoreCase))
.ToList();
var image = BaseItem.SupportedImageExtensions
.Select(i => candidates.FirstOrDefault(c => string.Equals(c.Extension, i, StringComparison.OrdinalIgnoreCase)))
.FirstOrDefault(i => i != null) as FileInfo;
if (image != null)
{
images.Add(new LocalImageInfo
{
FileInfo = image,
Type = type
});
}
}
private FileSystemInfo GetImage(IEnumerable<FileSystemInfo> files, string name)
{
var candidates = files