Merge pull request #2866 from annando/1610-probe-hidden-profile

Bugfix: probing failed when a profile was hidden
This commit is contained in:
Tobias Diekershoff 2016-10-20 08:33:44 +02:00 committed by GitHub
commit 2d0c56fd37

View file

@ -661,8 +661,12 @@ class Probe {
*/ */
private function poll_hcard($hcard, $data, $dfrn = false) { private function poll_hcard($hcard, $data, $dfrn = false) {
$content = fetch_url($hcard);
if (!$content)
return false;
$doc = new DOMDocument(); $doc = new DOMDocument();
if (!@$doc->loadHTMLFile($hcard)) if (!@$doc->loadHTML($content))
return false; return false;
$xpath = new DomXPath($doc); $xpath = new DomXPath($doc);
@ -671,9 +675,7 @@ class Probe {
if (!is_object($vcards)) if (!is_object($vcards))
return false; return false;
if ($vcards->length == 0) if ($vcards->length > 0) {
return false;
$vcard = $vcards->item(0); $vcard = $vcards->item(0);
// We have to discard the guid from the hcard in favour of the guid from lrdd // We have to discard the guid from the hcard in favour of the guid from lrdd
@ -704,6 +706,7 @@ class Probe {
$search = $xpath->query("//*[@id='pod_location']", $vcard); // */ $search = $xpath->query("//*[@id='pod_location']", $vcard); // */
if ($search->length > 0) if ($search->length > 0)
$data["baseurl"] = trim($search->item(0)->nodeValue, "/"); $data["baseurl"] = trim($search->item(0)->nodeValue, "/");
}
$avatar = array(); $avatar = array();
$photos = $xpath->query("//*[contains(concat(' ', @class, ' '), ' photo ') or contains(concat(' ', @class, ' '), ' avatar ')]", $vcard); // */ $photos = $xpath->query("//*[contains(concat(' ', @class, ' '), ' photo ') or contains(concat(' ', @class, ' '), ' avatar ')]", $vcard); // */