]> git.mxchange.org Git - friendica.git/blobdiff - mod/poco.php
Merge pull request #2932 from Hypolite/issue/missing-private-image-src
[friendica.git] / mod / poco.php
index 3927f125ea23030d5add4056be76b13b781afc81..1ec5b2d4e1b07e1c91157cfadc31c28e59c30d14 100644 (file)
@@ -1,4 +1,6 @@
 <?php
+// See here for a documentation for portable contacts:
+// https://web.archive.org/web/20160405005550/http://portablecontacts.net/draft-spec.html
 
 function poco_init(&$a) {
        require_once("include/bbcode.php");
@@ -104,9 +106,11 @@ function poco_init(&$a) {
                );
        } elseif($system_mode) {
                logger("Start system mode query", LOGGER_DEBUG);
-               $r = q("SELECT `contact`.*, `profile`.`about` AS `pabout`, `profile`.`locality` AS `plocation`, `profile`.`pub_keywords`, `profile`.`gender` AS `pgender`,
-                       `profile`.`address` AS `paddress`, `profile`.`region` AS `pregion`, `profile`.`postal-code` AS `ppostalcode`, `profile`.`country-name` AS `pcountry`
+               $r = q("SELECT `contact`.*, `profile`.`about` AS `pabout`, `profile`.`locality` AS `plocation`, `profile`.`pub_keywords`,
+                               `profile`.`gender` AS `pgender`, `profile`.`address` AS `paddress`, `profile`.`region` AS `pregion`,
+                               `profile`.`postal-code` AS `ppostalcode`, `profile`.`country-name` AS `pcountry`, `user`.`account-type`
                        FROM `contact` INNER JOIN `profile` ON `profile`.`uid` = `contact`.`uid`
+                               INNER JOIN `user` ON `user`.`uid` = `contact`.`uid`
                        WHERE `self` = 1 AND `profile`.`is-default`
                        AND `contact`.`uid` IN (SELECT `uid` FROM `pconfig` WHERE `cat` = 'system' AND `k` = 'suggestme' AND `v` = 1) LIMIT %d, %d",
                        intval($startIndex),
@@ -155,6 +159,7 @@ function poco_init(&$a) {
                'gender' => false,
                'tags' => false,
                'address' => false,
+               'contactType' => false,
                'generation' => false
        );
 
@@ -179,9 +184,6 @@ function poco_init(&$a) {
                                                $rr['generation'] = 2;
                                }
 
-                               if ($rr["avatar"] == "")
-                                       $rr["avatar"] = $rr["photo"];
-
                                if (($rr['about'] == "") AND isset($rr['pabout']))
                                        $rr['about'] = $rr['pabout'];
 
@@ -210,6 +212,9 @@ function poco_init(&$a) {
                                if (($rr['keywords'] == "") AND isset($rr['pub_keywords']))
                                        $rr['keywords'] = $rr['pub_keywords'];
 
+                               if (isset($rr['account-type']))
+                                       $rr['contact-type'] = $rr['account-type'];
+
                                $about = Cache::get("about:".$rr['updated'].":".$rr['nurl']);
                                if (is_null($about)) {
                                        $about = bbcode($rr['about'], false, false);
@@ -261,7 +266,7 @@ function poco_init(&$a) {
                                        $entry['updated'] = date("c", strtotime($entry['updated']));
                                }
                                if($fields_ret['photos'])
-                                       $entry['photos'] = array(array('value' => $rr['avatar'], 'type' => 'profile'));
+                                       $entry['photos'] = array(array('value' => $rr['photo'], 'type' => 'profile'));
                                if($fields_ret['network']) {
                                        $entry['network'] = $rr['network'];
                                        if ($entry['network'] == NETWORK_STATUSNET)
@@ -303,6 +308,9 @@ function poco_init(&$a) {
                                                 $entry['address']['country'] = $rr['pcountry'];
                                }
 
+                               if($fields_ret['contactType'])
+                                       $entry['contactType'] = intval($rr['contact-type']);
+
                                $ret['entry'][] = $entry;
                        }
                }