예제 #1
0
        /// <summary>
        ///   Update the Gravatar anytime an attribute is changed
        /// </summary>
        private void UpdateGravatar()
        {
            // resize our control (I'm not using AutoSize for a reason)
            Size = new Size(Settings.AuthorImageSize, Settings.AuthorImageSize);
            _gravatarImg.Size = new Size(Settings.AuthorImageSize, Settings.AuthorImageSize);

            if (!Settings.ShowAuthorGravatar || string.IsNullOrEmpty(Email))
            {
                RefreshImage(Resources.User);
                return;
            }

            FallBackService gravatarFallBack = FallBackService.Identicon;

            try
            {
                gravatarFallBack = (FallBackService)Enum.Parse(typeof(FallBackService), Settings.GravatarFallbackService);
            }
            catch
            {
                Settings.GravatarFallbackService = gravatarFallBack.ToString();
            }

            ThreadPool.QueueUserWorkItem(o =>
                                         GravatarService.LoadCachedImage(
                                             ImageFileName,
                                             Email,
                                             Resources.User,
                                             Settings.AuthorImageCacheDays,
                                             Settings.AuthorImageSize,
                                             Settings.GravatarCachePath,
                                             RefreshImage,
                                             gravatarFallBack));
        }
예제 #2
0
        public void CacheAvatar(string email)
        {
            FallBackService gravatarFallBack = FallBackService.Identicon;

            try
            {
                gravatarFallBack =
                    (FallBackService)Enum.Parse(typeof(FallBackService), Settings.GravatarFallbackService);
            }
            catch
            {
                Settings.GravatarFallbackService = gravatarFallBack.ToString();
            }
            GravatarService.CacheImage(email + ".png", email, Settings.AuthorImageSize,
                                       gravatarFallBack);
        }