private void DownloadFanart(TraktPersonSummary person)
        {
            var tFanart = new Thread(obj =>
            {
                //var tPerson = obj as TraktPersonSummary;
                //var personImages = TmdbCache.GetPersonImages(tPerson.Ids.TmdbId);
                //if (personImages == null)
                //    return;

                //string remoteThumb = TmdbCache.GetPersonHeadshotUrl(personImages);
                //string localThumb = TmdbCache.GetPersonHeadshotFilename(personImages);

                //if (localThumb == null || remoteThumb == null)
                //    return;

                //GUIImageHandler.DownloadImage(remoteThumb, localThumb);
                //if (!StopDownload)
                //{
                //    Thread.Sleep(500);
                //    GUIUtils.SetProperty("#Trakt.Person.FanartFilename", localThumb);
                //}
            })
            {
                Name = "Fanart"
            };

            tFanart.Start(person);
        }
 private void PublishSkinProperties(TraktPersonSummary person)
 {
     GUICommon.SetPersonProperties(person);
 }
        private void SendPersonSummaryToFacade(TraktPersonSummary person)
        {
            // clear facade
            GUIControl.ClearControl(GetID, Facade.GetID);

            if (person == null)
            {
                GUIUtils.ShowNotifyDialog(Translation.Error, Translation.ErrorGeneral);
                GUIWindowManager.ShowPreviousWindow();
                return;
            }

            // publish person properties
            PublishSkinProperties(person);

            var personImages = new List <GUITmdbImage>();
            int itemId       = 0;

            // add image for download
            var images = new GUITmdbImage {
                PeopleImages = new TmdbPeopleImages {
                    Id = person.Ids.TmdbId
                }
            };

            personImages.Add(images);

            // Add movie and show credit items
            var item = new GUIPersonListItem(Translation.MovieCredits, (int)TraktGUIWindows.PersonSummary);

            item.TVTag           = View.MovieCredits.ToString();
            item.ItemId          = Int32.MaxValue - itemId;
            item.Images          = images;
            item.IconImage       = GUIImageHandler.GetDefaultPoster(false);
            item.IconImageBig    = GUIImageHandler.GetDefaultPoster();
            item.ThumbnailImage  = GUIImageHandler.GetDefaultPoster();
            item.OnItemSelected += OnItemSelected;
            Utils.SetDefaultIcons(item);
            Facade.Add(item);
            itemId++;

            // add image for download
            images = new GUITmdbImage {
                PeopleImages = new TmdbPeopleImages {
                    Id = person.Ids.TmdbId
                }
            };
            personImages.Add(images);

            item = new GUIPersonListItem(Translation.ShowCredits, (int)TraktGUIWindows.PersonSummary);

            item.TVTag           = View.ShowCredits.ToString();
            item.ItemId          = Int32.MaxValue - itemId;
            item.Images          = images;
            item.IconImage       = GUIImageHandler.GetDefaultPoster(false);
            item.IconImageBig    = GUIImageHandler.GetDefaultPoster();
            item.ThumbnailImage  = GUIImageHandler.GetDefaultPoster();
            item.OnItemSelected += OnItemSelected;
            Utils.SetDefaultIcons(item);
            Facade.Add(item);
            itemId++;

            // Set Facade Layout
            Facade.CurrentLayout = GUIFacadeControl.Layout.List;
            GUIControl.FocusControl(GetID, Facade.GetID);

            // set facade properties
            GUIUtils.SetProperty("#itemcount", Facade.Count.ToString());

            // Download images Async
            DownloadFanart(person);

            GUIPersonListItem.GetImages(personImages, false);
        }