- if (!empty($item['causer-id']) && Contact::isSharing($item['causer-id'], $uid, true)) {
- $cdata = Contact::getPublicAndUserContactID($item['causer-id'], $uid);
- $contact_id = $cdata['user'] ?? 0;
- }
-
- if (empty($contact_id)) {
- if ($item['gravity'] == GRAVITY_PARENT) {
- if (Contact::isSharingByURL($item['owner-link'], $uid, true)) {
- $contact_id = Contact::getIdForURL($item['owner-link'], $uid);
- } else {
- $contact_id = Contact::getIdForURL($item['owner-link']);
- }
- } else {
- if (Contact::isSharingByURL($item['author-link'], $uid, true)) {
- $contact_id = Contact::getIdForURL($item['author-link'], $uid);
- } else {
- $contact_id = Contact::getIdForURL($item['author-link']);
- }
- }
- }
-
- if (empty($contact_id)) {
- Logger::warning('contact-id could not be fetched, using self contact instead.', ['uid' => $uid, 'item' => $item]);
- $self = Contact::selectFirst(['id'], ['self' => true, 'uid' => $uid]);
- $contact_id = $self['id'];
- }
-
- $item['contact-id'] = $contact_id;