]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/foaf.php
do some commits
[quix0rs-gnu-social.git] / actions / foaf.php
index d005510b6c3e834085ac12731e3c07be1a5f5397..db6ce78f2005d0db0ebbd218b106fa4eaafc0aed 100644 (file)
@@ -51,6 +51,8 @@ class FoafAction extends Action {
                                                                                          'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
                                                                                          'xmlns:rdfs' =>
                                                                                          'http://www.w3.org/2000/01/rdf-schema#',
+                                                                                         'xmlns:geo' =>
+                                                                                         'http://www.w3.org/2003/01/geo/wgs84_pos#',
                                                                                          'xmlns' => 'http://xmlns.com/foaf/0.1/'));
 
                # This is the document about the user
@@ -90,7 +92,7 @@ class FoafAction extends Action {
                                $scaled = $profile->getAvatar($size);
                                if (!$scaled->original) { # sometimes the original has one of our scaled sizes
                                        common_element_start('thumbnail');
-                                       common_element('Image', array('rdf:about', $scaled->url));
+                                       common_element('Image', array('rdf:about' => $scaled->url));
                                        common_element_end('thumbnail');
                                }
                        }
@@ -108,11 +110,15 @@ class FoafAction extends Action {
                if ($sub->find()) {
                        while ($sub->fetch()) {
                                if ($sub->token) {
-                                       $other = Remote_profile::staticGet($sub->subscribed);
+                                       $other = Remote_profile::staticGet('id', $sub->subscribed);
                                } else {
-                                       $other = User::staticGet($sub->subscribed);
+                                       $other = User::staticGet('id', $sub->subscribed);
                                }
-                               common_element('knows', array('rdf:about', $other->uri));
+                               if (!$other) {
+                                       common_debug('Got a bad subscription: '.print_r($sub,TRUE));
+                                       continue;
+                               }
+                               common_element('knows', array('rdf:resource' => $other->uri));
                                $person[$other->uri] = array(LISTENEE, $other);
                        }
                }
@@ -125,9 +131,13 @@ class FoafAction extends Action {
                if ($sub->find()) {
                        while ($sub->fetch()) {
                                if ($sub->token) {
-                                       $other = Remote_profile::staticGet($sub->subscribed);
+                                       $other = Remote_profile::staticGet('id', $sub->subscriber);
                                } else {
-                                       $other = User::staticGet($sub->subscribed);
+                                       $other = User::staticGet('id', $sub->subscriber);
+                               }
+                               if (!$other) {
+                                       common_debug('Got a bad subscription: '.print_r($sub,TRUE));
+                                       continue;
                                }
                                if (array_key_exists($other->uri, $person)) {
                                        $person[$other->uri][0] = BOTH;
@@ -147,7 +157,7 @@ class FoafAction extends Action {
                        $profile = Profile::staticGet($p[1]->id);
                        common_element_start('Person', array('rdf:about' => $uri));
                        if ($p[0] == LISTENER || $p[0] == BOTH) {
-                               common_element('knows', array('rdf:about', $user->uri));
+                               common_element('knows', array('rdf:resource' => $user->uri));
                        }
                        $this->show_microblogging_account($profile, ($p[1] instanceof User) ?
                                                                                          common_root_url() : NULL);