TraktPlugin.GUI.GUIImageHandler.LocalImageFilename C# (CSharp) Méthode

LocalImageFilename() public static méthode

Gets the local filename of an image from a Trakt URL
public static LocalImageFilename ( this image, ArtworkType type ) : string
image this
type ArtworkType The Type of image to get
Résultat string
        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));
        }