Exemplo n.º 1
0
        static async Task <byte[]> GetGravatarAsync(string email, int size, float scale, DefaultGravatar defaultGravatar)
        {
            var requestUri = GetGravatarUri(email, size, scale, defaultGravatar);

            using var response = await lazyHttp.Value.GetAsync(requestUri);

            if (!response.IsSuccessStatusCode)
            {
                return(Array.Empty <byte>());
            }

            return(await response.Content.ReadAsByteArrayAsync());
        }
Exemplo n.º 2
0
 static string DefaultGravatarName(DefaultGravatar defaultGravatar)
 => defaultGravatar switch
 {
Exemplo n.º 3
0
 static string GetGravatarUri(string email, int size, float scale, DefaultGravatar defaultGravatar)
 => string.Format(requestUriFormat, GetMd5Hash(email), size * scale, DefaultGravatarName(defaultGravatar));
Exemplo n.º 4
0
 /// <summary>
 /// Gets a Gravatar Url as string.
 /// </summary>
 /// <param name="email">Email to generate Gravatar for.</param>
 /// <param name="size">The size in pixels, between 1 and 512.</param>
 /// <param name="defaultImage">A default Gravatar generation policy. See <see cref="Gravatar.DefaultGravatar"/> for details.</param>
 /// <param name="rating">Image rating to display for. See <see cref="Gravatar.GravatarRating"/> for details.</param>
 /// <returns>A Gravatar Url</returns>
 public static string Generate(string email, int size, DefaultGravatar defaultImage, GravatarRating rating)
 {
     GravatarGenerator gravatar = new GravatarGenerator(email, false)
     .Size(size)
     .Rating(rating)
     .DefaultImage(defaultImage);
       return gravatar.Url;
 }
Exemplo n.º 5
0
 /// <summary>
 /// How to generate a default image if no gravatar exists for the email. See <see cref="Gravatar.DefaultGravatar"/> for details.
 /// </summary>
 /// <param name="defaultImage">What type of default image to generate.</param>
 public GravatarGenerator DefaultImage(DefaultGravatar defaultImage)
 {
     this._DefaultDisplay = defaultImage;
       return this;
 }
Exemplo n.º 6
0
 /// <summary>
 /// Gets a Gravatar Url as string.
 /// </summary>
 /// <param name="helper">UrlHelper object.</param>
 /// <param name="email">Email to generate Gravatar for.</param>
 /// <param name="size">The size in pixels, between 1 and 512.</param>
 /// <param name="defaultImage">A default Gravatar generation policy. See <see cref="Gravatar.DefaultGravatar"/> for details.</param>
 /// <returns>A Gravatar Url</returns>
 public static string Gravatar(this UrlHelper helper, string email, int size, DefaultGravatar defaultImage)
 {
     GravatarGenerator gravatar = new GravatarGenerator(email, helper.RequestContext.HttpContext.Request.IsSecureConnection)
         .Size(size)
         .DefaultImage(defaultImage);
     return gravatar.Url;
 }