- $contact = DBA::selectFirst('contact', ['deleted'], ['id' => $contact_id, 'uid' => local_user()]);
+ // @TODO Backward compatibility with user contacts, remove by version 2022.03
+ $cdata = Model\Contact::getPublicAndUserContactID($contact_id, DI::userSession()->getLocalUserId());
+ if (empty($cdata['public'])) {
+ throw new \Exception(DI::l10n()->t('Contact not found.'), 404);
+ }
+
+ if (empty($cdata['user'])) {
+ throw new \Exception(DI::l10n()->t('Invalid contact.'), 404);
+ }
+
+ $contact = Model\Contact::getById($cdata['user'], ['deleted']);