X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fdisplay.php;h=da41c8656e9499d28fd26e8685b00dbfddac6379;hb=7ce97459d437a98ece0077b28bb36771aa36ed82;hp=bb69a611cb1029e672f7e8e399a50f15214a49c0;hpb=1e305e748d0bb88a0da0b0d54c8f9d02f0117de2;p=friendica.git diff --git a/mod/display.php b/mod/display.php index bb69a611cb..da41c8656e 100644 --- a/mod/display.php +++ b/mod/display.php @@ -1,6 +1,6 @@ DI::args()->getArgv()[1] ?? null]); + (new Objects(DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), $_SERVER, ['guid' => DI::args()->getArgv()[1] ?? null]))->run(); } if (DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) { @@ -99,7 +99,7 @@ function display_init(App $a) } if (!empty($_SERVER['HTTP_ACCEPT']) && strstr($_SERVER['HTTP_ACCEPT'], 'application/atom+xml')) { - Logger::log('Directly serving XML for uri-id '.$item['uri-id'], Logger::DEBUG); + Logger::info('Directly serving XML for uri-id '.$item['uri-id']); displayShowFeed($item['uri-id'], $item['uid'], false); } @@ -108,55 +108,23 @@ function display_init(App $a) $item = $parent ?: $item; } - $profiledata = display_fetchauthor($item); - - DI::page()['aside'] = Widget\VCard::getHTML($profiledata); + DI::page()['aside'] = Widget\VCard::getHTML(display_fetchauthor($item)); } function display_fetchauthor($item) { - $profiledata = Contact::getByURLForUser($item['author-link'], local_user()); - - // Check for a repeated message - $shared = Item::getShareArray($item); - if (!empty($shared) && empty($shared['comment'])) { - $profiledata = [ - 'uid' => -1, - 'id' => -1, - 'nickname' => '', - 'name' => '', - 'picdate' => '', - 'photo' => '', - 'url' => '', - 'network' => '', - ]; - - if (!empty($shared['author'])) { - $profiledata['name'] = $shared['author']; - } - + if (Diaspora::isReshare($item['body'], true)) { + $shared = Item::getShareArray($item); if (!empty($shared['profile'])) { - $profiledata['url'] = $shared['profile']; - } - - if (!empty($shared['avatar'])) { - $profiledata['photo'] = $shared['avatar']; + $contact = Contact::getByURLForUser($shared['profile'], local_user()); } - - $profiledata['nickname'] = $profiledata['name']; - $profiledata['network'] = Protocol::matchByProfileUrl($profiledata['url']); - - $profiledata['address'] = ''; - $profiledata['about'] = ''; - - $profiledata = Contact::getByURLForUser($profiledata['url'], local_user()) ?: $profiledata; } - if (!empty($profiledata['photo'])) { - $profiledata['photo'] = DI::baseUrl()->remove($profiledata['photo']); + if (empty($contact)) { + $contact = Contact::getById($item['author-id']); } - return $profiledata; + return $contact; } function display_content(App $a, $update = false, $update_uid = 0) @@ -173,7 +141,7 @@ function display_content(App $a, $update = false, $update_uid = 0) if ($update) { $uri_id = $_REQUEST['uri_id']; - $item = Post::selectFirst(['uid', 'parent-uri-id'], ['uri-id' => $uri_id, 'uid' => [0, $update_uid]]); + $item = Post::selectFirst(['uid', 'parent-uri-id'], ['uri-id' => $uri_id, 'uid' => [0, $update_uid]], ['order' => ['uid' => true]]); if (!empty($item)) { if ($item['uid'] != 0) { $a->setProfileOwner($item['uid']); @@ -190,8 +158,8 @@ function display_content(App $a, $update = false, $update_uid = 0) $fields = ['uri-id', 'parent-uri-id', 'uid']; if (local_user()) { - $condition = ['guid' => DI::args()->getArgv()[1], 'uid' => local_user()]; - $item = Post::selectFirstForUser(local_user(), $fields, $condition); + $condition = ['guid' => DI::args()->getArgv()[1], 'uid' => [0, local_user()]]; + $item = Post::selectFirstForUser(local_user(), $fields, $condition, ['order' => ['uid' => true]]); if (DBA::isResult($item)) { $uri_id = $item['uri-id']; $parent_uri_id = $item['parent-uri-id']; @@ -222,8 +190,8 @@ function display_content(App $a, $update = false, $update_uid = 0) } if (!DI::pConfig()->get(local_user(), 'system', 'detailed_notif')) { - DBA::update('notification', ['seen' => true], ['parent-uri-id' => $item['parent-uri-id'], 'uid' => local_user()]); - DBA::update('notify', ['seen' => true], ['parent-uri-id' => $item['parent-uri-id'], 'uid' => local_user()]); + DI::notification()->setAllSeenForUser(local_user(), ['parent-uri-id' => $item['parent-uri-id']]); + DI::notify()->setAllSeenForUser(local_user(), ['parent-uri-id' => $item['parent-uri-id']]); } // We are displaying an "alternate" link if that post was public. See issue 2864 @@ -246,7 +214,7 @@ function display_content(App $a, $update = false, $update_uid = 0) $page_uid = 0; $parent = null; - if (!empty($parent_uri_id)) { + if (!local_user() && !empty($parent_uri_id)) { $parent = Post::selectFirst(['uid'], ['uri-id' => $parent_uri_id, 'wall' => true]); } @@ -272,7 +240,7 @@ function display_content(App $a, $update = false, $update_uid = 0) // We need the editor here to be able to reshare an item. if ($is_owner && !$update) { - $o .= status_editor($a, [], 0, true); + $o .= DI::conversation()->statusEditor([], 0, true); } $sql_extra = Item::getPermissionsSQLByUserId($page_uid); @@ -306,7 +274,7 @@ function display_content(App $a, $update = false, $update_uid = 0) $o .= ""; } - $o .= conversation($a, [$item], 'display', $update_uid, false, 'commented', $item_uid); + $o .= DI::conversation()->create([$item], 'display', $update_uid, false, 'commented', $item_uid); // Preparing the meta header $description = trim(BBCode::toPlaintext($item['body']));