Expose URL to get userpics for all account types.

        Patch by afuna. 

diffs (62 lines):

diff -r eb838ee08a5e -r c6605f3a5ac7 bin/upgrading/s2layers/core2.s2
--- a/bin/upgrading/s2layers/core2.s2   Sun May 10 05:41:22 2009 +0000
+++ b/bin/upgrading/s2layers/core2.s2   Sun May 10 05:50:44 2009 +0000
@@ -272,6 +272,7 @@ class UserLite
     var readonly string username "Canonical Username, ex: johnqpub.  Note that 
if journal_type is an external identity, there will be no username, so this 
field will be a display version of their URL, longer than 25 characters, and 
with characters other than a-z, 0-9 and underscore.";
     var readonly string name "User's formatted name, ex: John Q. Public";
     var readonly string journal_type "Type of account: P (personal), C 
(community), Y (syndicated), I (external identity) etc";
+    var readonly string userpic_listing_url "URL of a page listing this user's 
userpics";
 
     var Link{} data_link "Links to various machine-readable data sources 
relating to this user";
     var string[] data_links_order "An array of data views which can be used to 
order the data_link hash";
@@ -452,7 +453,6 @@ class User extends UserLite
 "A more information-rich userinfo structure"
 {
     var Image default_pic "Information about default userpic";
-    var readonly string userpic_listing_url "URL of a page listing this user's 
userpics";
     var readonly string website_url "URL pointer to user's website";
     var readonly string website_name "'pretty' name of user's website";
     function print_userpic() [fixed] "Print the userpic for this user";
@@ -3658,20 +3658,9 @@ function EntryLite::print_userpic() [fix
     print "<div class=\"userpic\">";
     if ( defined $this.userpic )
     {
-        if ( $this.poster.journal_type == "I" )
-        {
-            # link to openid users' allpics.bml is in the form of
-            #    /allpics.bml?user=ext_####
-            # but their username is their remote URL. 
-            # AFAIK, the ext_#### form is not exposed through S2
-            $this.userpic->print();
-        }
-        else
-        {
-            print """<a 
href="$*SITEROOT/allpics.bml?user=$this.poster.username">""";
-            $this.userpic->print();
-            print "</a>";
-        }
+        print """<a href="$this.poster.userpic_listing_url">""";
+        $this.userpic->print();
+        print "</a>";
     }
     println "</div>";
 }
diff -r eb838ee08a5e -r c6605f3a5ac7 cgi-bin/LJ/S2.pm
--- a/cgi-bin/LJ/S2.pm  Sun May 10 05:41:22 2009 +0000
+++ b/cgi-bin/LJ/S2.pm  Sun May 10 05:50:44 2009 +0000
@@ -2188,7 +2188,6 @@ sub User
     my $o = UserLite($u);
     $o->{'_type'} = "User";
     $o->{'default_pic'} = Image_userpic($u, $u->{'defaultpicid'});
-    $o->{'userpic_listing_url'} = 
"$LJ::SITEROOT/allpics.bml?user=".$u->{'user'};
     $o->{'website_url'} = LJ::ehtml($u->{'url'});
     $o->{'website_name'} = LJ::ehtml($u->{'urlname'});
     return $o;
@@ -2222,6 +2221,7 @@ sub UserLite
         'username' => LJ::ehtml($u->display_name),
         'name' => LJ::ehtml($u->{'name'}),
         'journal_type' => $u->{'journaltype'},
+        'userpic_listing_url' => 
"$LJ::SITEROOT/allpics.bml?user=".$u->{'user'},
         'data_link' => {
             'foaf' => Link("$LJ::SITEROOT/users/" . LJ::ehtml($u->{'user'}) . 
'/data/foaf',
                            "FOAF",
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog

Reply via email to