public static string LocalImageFilename(this TraktImage image, ArtworkType type)
{
if (image == null) return string.Empty;
string filename = string.Empty;
string folder = string.Empty;
switch (type)
{
case ArtworkType.Avatar:
filename = image.FullSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Avatars");
break;
case ArtworkType.PersonHeadshot:
filename = image.ThumbSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\People");
break;
case ArtworkType.PersonFanart:
filename = TraktSettings.DownloadFullSizeFanart ? image.FullSize.ToClearUrl() : image.MediumSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\People\Fanart");
break;
case ArtworkType.SeasonPoster:
filename = image.ThumbSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Shows\Seasons");
break;
case ArtworkType.MoviePoster:
filename = image.ThumbSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Movies\Posters");
break;
case ArtworkType.MovieFanart:
filename = TraktSettings.DownloadFullSizeFanart ? image.FullSize.ToClearUrl() : image.MediumSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Movies\Fanart");
break;
case ArtworkType.MovieBanner:
filename = image.FullSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Movies\Banners");
break;
case ArtworkType.ShowPoster:
filename = image.ThumbSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Shows\Posters");
break;
case ArtworkType.ShowBanner:
filename = image.FullSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Shows\Banners");
break;
case ArtworkType.ShowFanart:
filename = TraktSettings.DownloadFullSizeFanart ? image.FullSize.ToClearUrl() : image.MediumSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Shows\Fanart");
break;
case ArtworkType.EpisodeImage:
filename = image.ThumbSize.ToClearUrl();
folder = Config.GetSubFolder(Config.Dir.Thumbs, @"Trakt\Episodes");
break;
}
if (string.IsNullOrEmpty(filename))
return null;
return Path.Combine(folder, Path.GetFileName(new Uri(filename).LocalPath));
}