Index: openacs-4/packages/xowiki/tcl/form-field-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/form-field-procs.tcl,v diff -u -r1.284.2.25 -r1.284.2.26 --- openacs-4/packages/xowiki/tcl/form-field-procs.tcl 29 Aug 2019 10:24:58 -0000 1.284.2.25 +++ openacs-4/packages/xowiki/tcl/form-field-procs.tcl 2 Sep 2019 17:00:08 -0000 1.284.2.26 @@ -1509,14 +1509,21 @@ Class create author -superclass user_id -parameter { {photo_size 54} {with_photo true} + {with_gravatar true} {with_user_link false} {label #xowiki.formfield-author#} } author instproc pretty_value {v} { if {$v ne ""} { acs_user::get -user_id $v -array user - if {[:with_photo]} { - set src "/shared/portrait-bits.tcl?user_id=$v" + if {${:with_photo}} { + set portrait_id [acs_user::get_portrait_id -user_id $v] + if {$portrait_id == 0 && ${:with_gravatar}} { + set src [::xowiki::includelet::gravatar url \ + -email $user(email) -size ${:photo_size}] + } else { + set src "/shared/portrait-bits.tcl?user_id=$v" + } set photo "" set photo_class "photo" } else { Index: openacs-4/packages/xowiki/tcl/includelet-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/includelet-procs.tcl,v diff -u -r1.239.2.17 -r1.239.2.18 --- openacs-4/packages/xowiki/tcl/includelet-procs.tcl 31 Aug 2019 08:46:07 -0000 1.239.2.17 +++ openacs-4/packages/xowiki/tcl/includelet-procs.tcl 2 Sep 2019 17:00:08 -0000 1.239.2.18 @@ -4603,7 +4603,7 @@ }} } - gravatar proc url {-email {-size 80}} { + gravatar proc url {-email {-size 80} {-default mp}} { # reusable helper proc to compute a gravatar URL if {[info commands ns_md5] ne ""} { set md5 [string tolower [ns_md5 $email]] @@ -4612,7 +4612,7 @@ set md5 [string tolower [md5::Hex [md5::md5 -- $email]]] } security::csp::require img-src www.gravatar.com - return //www.gravatar.com/avatar/$md5?size=$size + return //www.gravatar.com/avatar/$md5?size=$size&d=$default } gravatar instproc render {} {