Merge pull request #8954 from annando/sync-update
Directory sync: Update contact when it already exists
This commit is contained in:
commit
ca2267a4a6
|
@ -63,14 +63,19 @@ class PullDirectory
|
||||||
$now = $contacts['now'] ?? 0;
|
$now = $contacts['now'] ?? 0;
|
||||||
$count = $contacts['count'] ?? 0;
|
$count = $contacts['count'] ?? 0;
|
||||||
$added = 0;
|
$added = 0;
|
||||||
|
$updated = 0;
|
||||||
foreach ($contacts['results'] as $url) {
|
foreach ($contacts['results'] as $url) {
|
||||||
if (empty(Contact::getByURL($url, false, ['id']))) {
|
$contact = Contact::getByURL($url, false, ['id']);
|
||||||
|
if (empty($contact['id'])) {
|
||||||
Worker::add(PRIORITY_LOW, 'AddContact', 0, $url);
|
Worker::add(PRIORITY_LOW, 'AddContact', 0, $url);
|
||||||
++$added;
|
++$added;
|
||||||
|
} else {
|
||||||
|
Worker::add(PRIORITY_LOW, "UpdateContact", $contact['id']);
|
||||||
|
++$updated;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DI::config()->set('system', 'last-directory-sync', $now);
|
DI::config()->set('system', 'last-directory-sync', $now);
|
||||||
|
|
||||||
Logger::info('Synchronization ended.', ['now' => $now, 'count' => $count, 'added' => $added, 'directory' => $directory]);
|
Logger::info('Synchronization ended.', ['now' => $now, 'count' => $count, 'added' => $added, 'updated' => $updated, 'directory' => $directory]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue