From 19dfdbc03f524c06d5966f6a98c8666ece3ce5eb Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 9 Sep 2023 13:26:20 +0000 Subject: [PATCH] Simplify network update --- src/Module/Conversation/Network.php | 14 ++++++-------- src/Module/Update/Network.php | 27 +-------------------------- 2 files changed, 7 insertions(+), 34 deletions(-) diff --git a/src/Module/Conversation/Network.php b/src/Module/Conversation/Network.php index ce2283bdef..b65910e01b 100644 --- a/src/Module/Conversation/Network.php +++ b/src/Module/Conversation/Network.php @@ -151,11 +151,7 @@ class Network extends Timeline $this->page['aside'] .= Widget\SavedSearches::getHTML($this->args->getQueryString()); $this->page['aside'] .= Widget::fileAs('filed', ''); - // Fetch a page full of parent items for this page - $params = ['limit' => $this->itemsPerPage]; - $table = 'network-thread-view'; - - $items = $this->getItems($table, $params); + $items = $this->getItems(); } if ($this->pConfig->get($this->session->getLocalUserId(), 'system', 'infinite_scroll') && ($_GET['mode'] ?? '') != 'minimal') { @@ -383,9 +379,9 @@ class Network extends Timeline } } - protected function getItems(string $table, array $params, array $conditionFields = []) + protected function getItems() { - $conditionFields['uid'] = $this->session->getLocalUserId(); + $conditionFields = ['uid' => $this->session->getLocalUserId()]; $conditionStrings = []; if (!is_null($this->accountType)) { @@ -456,6 +452,8 @@ class Network extends Timeline } } + $params = ['limit' => $this->itemsPerPage]; + if (isset($this->minId) && !isset($this->maxId)) { // min_id quirk: querying in reverse order with min_id gets the most recent rows, regardless of how close // they are to min_id. We change the query ordering to get the expected data, and we need to reverse the @@ -465,7 +463,7 @@ class Network extends Timeline $params['order'] = [self::$order => true]; } - $items = DBA::selectToArray($table, [], DBA::mergeConditions($conditionFields, $conditionStrings), $params); + $items = DBA::selectToArray('network-thread-view', [], DBA::mergeConditions($conditionFields, $conditionStrings), $params); // min_id quirk, continued if (isset($this->minId) && !isset($this->maxId)) { diff --git a/src/Module/Update/Network.php b/src/Module/Update/Network.php index d5d07589a8..adb73141d6 100644 --- a/src/Module/Update/Network.php +++ b/src/Module/Update/Network.php @@ -23,8 +23,6 @@ namespace Friendica\Module\Update; use Friendica\Content\Conversation; use Friendica\Core\System; -use Friendica\Model\Item; -use Friendica\Model\Post; use Friendica\Module\Conversation\Network as NetworkModule; class Network extends NetworkModule @@ -45,30 +43,7 @@ class Network extends NetworkModule System::htmlUpdateExit($o); } - if (!empty($request['item'])) { - $item = Post::selectFirst(['parent'], ['id' => $request['item']]); - $parent = $item['parent'] ?? 0; - } else { - $parent = 0; - } - - $conditionFields = []; - if (!empty($parent)) { - // Load only a single thread - $conditionFields['parent'] = $parent; - } elseif (self::$order === 'received') { - // Only load new toplevel posts - $conditionFields['unseen'] = true; - $conditionFields['gravity'] = Item::GRAVITY_PARENT; - } else { - // Load all unseen items - $conditionFields['unseen'] = true; - } - - $params = ['limit' => $this->itemsPerPage]; - $table = 'network-thread-view'; - - $items = $this->getItems($table, $params, $conditionFields); + $items = $this->getItems(); if (self::$order === 'received') { $ordering = '`received`';