Jonathan Nieder <jrnieder@xxxxxxxxx> writes: > Odd. "https://www.gravatar.com/"; also seems to work. I've put in a > technical support query to find out what the Gravatar admins prefer. Thanks; will hold onto Andrej's patch until we hear what the story is. Of course we could do something like this (untested). gitweb/gitweb.perl | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index c6bafe6..b59773b 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -313,6 +313,14 @@ sub evaluate_uri { 'override' => 0, 'default' => [0]}, + # Use https:// URL for embedded picons/gravatar images, to be used + # on installations that server gitweb over https:// + 'subcontentssl' => { + 'sub' => sub { feature_bool('subcontentssl', @_) }, + 'override' => 0, + 'default' => [0]}, + } + # Enable the 'snapshot' link, providing a compressed archive of any # tree. This can potentially generate high traffic if you have large # project. @@ -1111,6 +1119,7 @@ sub evaluate_git_dir { } our (@snapshot_fmts, $git_avatar); +our ($gravatar_base_url, $picon_base_url); sub configure_gitweb_features { # list of supported snapshot formats our @snapshot_fmts = gitweb_get_feature('snapshot'); @@ -1121,10 +1130,17 @@ sub configure_gitweb_features { # if the provider name is invalid or the dependencies are not met, # reset $git_avatar to the empty string. our ($git_avatar) = gitweb_get_feature('avatar'); + my $use_https = gitweb_check_feature('subcontentssl'); + if ($git_avatar eq 'gravatar') { $git_avatar = '' unless (eval { require Digest::MD5; 1; }); + $gravatar_base_url = $use_https ? + "https://secure.gravatar.com/avatar/"; : + "http://www.gravatar.com/avatar/";; } elsif ($git_avatar eq 'picon') { - # no dependencies + $picon_base_url = $use_https ? + "http://www.cs.indiana.edu/cgi-pub/kinzler/piconsearch.cgi/"; : + "https://www.cs.indiana.edu/cgi-pub/kinzler/piconsearch.cgi/";; } else { $git_avatar = ''; } @@ -2068,7 +2084,7 @@ sub picon_url { if (!$avatar_cache{$email}) { my ($user, $domain) = split('@', $email); $avatar_cache{$email} = - "http://www.cs.indiana.edu/cgi-pub/kinzler/piconsearch.cgi/"; . + $picon_base_url . "$domain/$user/" . "users+domains+unknown/up/single"; } @@ -2082,9 +2098,7 @@ sub picon_url { sub gravatar_url { my $email = lc shift; my $size = shift; - $avatar_cache{$email} ||= - "http://www.gravatar.com/avatar/"; . - Digest::MD5::md5_hex($email) . "?s="; + $avatar_cache{$email} ||= $gravatar_base_url . Digest::MD5::md5_hex($email) . "?s="; return $avatar_cache{$email} . $size; } -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html