]> git.mxchange.org Git - friendica.git/commitdiff
Bugfix for PR 3630: "get_contact_details_by_url" not always returned a value
authorMichael <heluecht@pirati.ca>
Mon, 14 Aug 2017 20:17:17 +0000 (20:17 +0000)
committerMichael <heluecht@pirati.ca>
Mon, 14 Aug 2017 20:17:17 +0000 (20:17 +0000)
include/Contact.php
mod/hovercard.php

index 00c25df83e22ca050ae55416623e41b28b4221ba..c7b512cea12f50530880f3f5612d5771a2bb36b9 100644 (file)
@@ -210,23 +210,24 @@ function get_contact_details_by_url($url, $uid = -1, $default = array()) {
                        `keywords`, `gender`, `photo`, `thumb`, `micro`, `forum`, `prv`, (`forum` | `prv`) AS `community`, `contact-type`, `bd` AS `birthday`, `self`
                FROM `contact` WHERE `nurl` = ? AND `uid` = ?",
                        normalise_link($url), $uid);
+       $r = dba::inArray($s);
 
        // Fetch the data from the contact table with "uid=0" (which is filled automatically)
-       if (!dbm::is_result($s))
+       if (!dbm::is_result($r))
                $s = dba::p("SELECT `id`, 0 AS `cid`, `id` AS `zid`, 0 AS `gid`, `uid`, `url`, `nurl`, `alias`, `network`, `name`, `nick`, `addr`, `location`, `about`, `xmpp`,
                        `keywords`, `gender`, `photo`, `thumb`, `micro`, `forum`, `prv`, (`forum` | `prv`) AS `community`, `contact-type`, `bd` AS `birthday`, 0 AS `self`
                        FROM `contact` WHERE `nurl` = ? AND `uid` = 0",
                                normalise_link($url));
+       $r = dba::inArray($s);
 
        // Fetch the data from the gcontact table
-       if (!dbm::is_result($s))
+       if (!dbm::is_result($r))
                $s = dba::p("SELECT 0 AS `id`, 0 AS `cid`, `id` AS `gid`, 0 AS `zid`, 0 AS `uid`, `url`, `nurl`, `alias`, `network`, `name`, `nick`, `addr`, `location`, `about`, '' AS `xmpp`,
                        `keywords`, `gender`, `photo`, `photo` AS `thumb`, `photo` AS `micro`, `community` AS `forum`, 0 AS `prv`, `community`, `contact-type`, `birthday`, 0 AS `self`
                        FROM `gcontact` WHERE `nurl` = ?",
                                normalise_link($url));
 
-       if (dbm::is_result($s)) {
-               $r = dba::inArray($s);
+       if (dbm::is_result($r)) {
                // If there is more than one entry we filter out the connector networks
                if (count($r) > 1) {
                        foreach ($r AS $id => $result) {
index 5c9ef61fc9ec409b0ceeb46394798d494244f47f..83306aa11633c405f6dd9439f29ae19de6872786 100644 (file)
@@ -39,7 +39,7 @@ function hovercard_content() {
        // If a contact is connected the url is internally changed to "redir/CID". We need the pure url to search for
        // the contact. So we strip out the contact id from the internal url and look in the contact table for
        // the real url (nurl)
-       if(local_user() && strpos($profileurl, "redir/") === 0) {
+       if (local_user() && strpos($profileurl, "redir/") === 0) {
                $cid = intval(substr($profileurl, 6));
                $r = dba::select('contact', array('nurl', 'self'), array('id' => $cid), array('limit' => 1));
                $profileurl = ($r["nurl"] ? $r["nurl"] : "");