mirror of
https://github.com/friendica/friendica
synced 2024-12-23 14:40:16 +00:00
Update contact data for uid=0 at feed import
This commit is contained in:
parent
08fb662b4a
commit
fd965b046a
1 changed files with 32 additions and 5 deletions
|
@ -90,13 +90,20 @@ class ostatus {
|
|||
|
||||
// Only update the contacts if it is an OStatus contact
|
||||
if ($r AND !$onlyfetch AND ($contact["network"] == NETWORK_OSTATUS)) {
|
||||
|
||||
// Update contact data
|
||||
|
||||
$value = $xpath->query("atom:link[@rel='salmon']", $context)->item(0)->nodeValue;
|
||||
if ($value != "")
|
||||
$contact["notify"] = $value;
|
||||
// This query doesn't seem to work
|
||||
// $value = $xpath->query("atom:link[@rel='salmon']", $context)->item(0)->nodeValue;
|
||||
// if ($value != "")
|
||||
// $contact["notify"] = $value;
|
||||
|
||||
$value = $xpath->evaluate('atom:author/uri/text()', $context)->item(0)->nodeValue;
|
||||
// This query doesn't seem to work as well - I hate these queries
|
||||
// $value = $xpath->query("atom:link[@rel='self' and @type='application/atom+xml']", $context)->item(0)->nodeValue;
|
||||
// if ($value != "")
|
||||
// $contact["poll"] = $value;
|
||||
|
||||
$value = $xpath->evaluate('atom:author/atom:uri/text()', $context)->item(0)->nodeValue;
|
||||
if ($value != "")
|
||||
$contact["alias"] = $value;
|
||||
|
||||
|
@ -136,6 +143,24 @@ class ostatus {
|
|||
update_contact_avatar($author["author-avatar"], $importer["uid"], $contact["id"]);
|
||||
}
|
||||
|
||||
// Ensure that we are having this contact (with uid=0)
|
||||
$cid = get_contact($author["author-link"], 0);
|
||||
|
||||
if ($cid) {
|
||||
// Update it with the current values
|
||||
q("UPDATE `contact` SET `url` = '%s', `name` = '%s', `nick` = '%s', `alias` = '%s',
|
||||
`about` = '%s', `location` = '%s', `notify` = '%s', `poll` = '%s',
|
||||
`success_update` = '%s', `last-update` = '%s'
|
||||
WHERE `id` = %d",
|
||||
dbesc($author["author-link"]), dbesc($contact["name"]), dbesc($contact["nick"]),
|
||||
dbesc($contact["alias"]), dbesc($contact["about"]), dbesc($contact["location"]),
|
||||
dbesc($contact["notify"]), dbesc($contact["poll"]),
|
||||
dbesc(datetime_convert()), dbesc(datetime_convert()), intval($cid));
|
||||
|
||||
// Update the avatar
|
||||
update_contact_avatar($author["author-avatar"], 0, $cid);
|
||||
}
|
||||
|
||||
$contact["generation"] = 2;
|
||||
$contact["photo"] = $author["author-avatar"];
|
||||
update_gcontact($contact);
|
||||
|
@ -1586,8 +1611,10 @@ class ostatus {
|
|||
|
||||
if (!isset($contact["poll"])) {
|
||||
$data = probe_url($url);
|
||||
$contact["alias"] = $data["alias"];
|
||||
$contact["poll"] = $data["poll"];
|
||||
|
||||
if (!$contact["alias"])
|
||||
$contact["alias"] = $data["alias"];
|
||||
}
|
||||
|
||||
if (!isset($contact["alias"]))
|
||||
|
|
Loading…
Reference in a new issue