}
if ($item["id"] != $item["parent"]) {
- $item = Item::selectFirstForUser($item_user, $fields, ['id' => $item["parent"]]);
+ $parent = Item::selectFirstForUser($item_user, $fields, ['id' => $item["parent"]]);
+ $item = $parent ?: $item;
}
$profiledata = display_fetchauthor($a, $item);
$is_remote_contact = false;
$item_uid = local_user();
- if (isset($item_parent_uri)) {
+ $parent = null;
+ if (!empty($item_parent_uri)) {
$parent = Item::selectFirst(['uid'], ['uri' => $item_parent_uri, 'wall' => true]);
- if (DBA::isResult($parent)) {
- $a->profile['uid'] = ($a->profile['uid'] ?? 0) ?: $parent['uid'];
- $a->profile['profile_uid'] = ($a->profile['profile_uid'] ?? 0) ?: $parent['uid'];
- $is_remote_contact = Session::getRemoteContactID($a->profile['profile_uid']);
- if ($is_remote_contact) {
- $item_uid = $parent['uid'];
- }
+ }
+
+ if (DBA::isResult($parent)) {
+ $a->profile['uid'] = ($a->profile['uid'] ?? 0) ?: $parent['uid'];
+ $a->profile['profile_uid'] = ($a->profile['profile_uid'] ?? 0) ?: $parent['uid'];
+ $is_remote_contact = Session::getRemoteContactID($a->profile['profile_uid']);
+ if ($is_remote_contact) {
+ $item_uid = $parent['uid'];
}
+ } else {
+ $a->profile = ['uid' => intval($item['uid']), 'profile_uid' => intval($item['uid'])];
}
$page_contact = DBA::selectFirst('contact', [], ['self' => true, 'uid' => $a->profile['uid']]);