[COMPONENT][Collection][CONTROLLER][Collection] Add utility method to call Feed::query in Collection, which handles getting and passing the page
This commit is contained in:
parent
07b65584ff
commit
141c5f6785
@ -5,7 +5,12 @@ declare(strict_types = 1);
|
|||||||
namespace Component\Collection\Util\Controller;
|
namespace Component\Collection\Util\Controller;
|
||||||
|
|
||||||
use App\Core\Controller;
|
use App\Core\Controller;
|
||||||
|
use Component\Feed\Feed;
|
||||||
|
|
||||||
class Collection extends Controller
|
class Collection extends Controller
|
||||||
{
|
{
|
||||||
|
public function query(string $query, ?string $language = null, ?Actor $actor = null)
|
||||||
|
{
|
||||||
|
return Feed::query($query, $this->int('page') ?? 1, $language, $actor);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,6 @@ use App\Util\Common;
|
|||||||
use App\Util\Exception\RedirectException;
|
use App\Util\Exception\RedirectException;
|
||||||
use Component\Collection\Util\Controller\FeedController;
|
use Component\Collection\Util\Controller\FeedController;
|
||||||
use Component\Conversation\Entity\ConversationMute;
|
use Component\Conversation\Entity\ConversationMute;
|
||||||
use Component\Feed\Feed;
|
|
||||||
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
|
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
|
|
||||||
@ -47,7 +46,7 @@ class Conversation extends FeedController
|
|||||||
*/
|
*/
|
||||||
public function showConversation(Request $request, int $conversation_id)
|
public function showConversation(Request $request, int $conversation_id)
|
||||||
{
|
{
|
||||||
$data = Feed::query(query: "note-conversation:{$conversation_id}", page: $this->int('p') ?? 1);
|
$data = $this->query(query: "note-conversation:{$conversation_id}");
|
||||||
$notes = $data['notes'];
|
$notes = $data['notes'];
|
||||||
return [
|
return [
|
||||||
'_template' => 'collection/notes.html.twig',
|
'_template' => 'collection/notes.html.twig',
|
||||||
|
@ -59,7 +59,7 @@ class Reply extends FeedController
|
|||||||
}
|
}
|
||||||
|
|
||||||
$conversation_id = $note->getConversationId();
|
$conversation_id = $note->getConversationId();
|
||||||
$data = Feed::query(query: "note-conversation:{$conversation_id}", page: $this->int('p') ?? 1);
|
$data = $this->query(query: "note-conversation:{$conversation_id}");
|
||||||
$notes = $data['notes'];
|
$notes = $data['notes'];
|
||||||
return [
|
return [
|
||||||
'_template' => 'collection/notes.html.twig',
|
'_template' => 'collection/notes.html.twig',
|
||||||
|
@ -38,7 +38,6 @@ namespace Component\Feed\Controller;
|
|||||||
use function App\Core\I18n\_m;
|
use function App\Core\I18n\_m;
|
||||||
use App\Util\Common;
|
use App\Util\Common;
|
||||||
use Component\Collection\Util\Controller\FeedController;
|
use Component\Collection\Util\Controller\FeedController;
|
||||||
use Component\Feed\Feed;
|
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
|
|
||||||
class Feeds extends FeedController
|
class Feeds extends FeedController
|
||||||
@ -48,9 +47,8 @@ class Feeds extends FeedController
|
|||||||
*/
|
*/
|
||||||
public function public(Request $request): array
|
public function public(Request $request): array
|
||||||
{
|
{
|
||||||
$data = Feed::query(
|
$data = $this->query(
|
||||||
query: 'note-local:true',
|
query: 'note-local:true',
|
||||||
page: $this->int('p'),
|
|
||||||
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
||||||
);
|
);
|
||||||
return [
|
return [
|
||||||
@ -67,9 +65,8 @@ class Feeds extends FeedController
|
|||||||
{
|
{
|
||||||
$user = Common::ensureLoggedIn();
|
$user = Common::ensureLoggedIn();
|
||||||
$actor = $user->getActor();
|
$actor = $user->getActor();
|
||||||
$data = Feed::query(
|
$data = $this->query(
|
||||||
query: 'note-from:subscribed-person,subscribed-group,subscribed-organization,subscribed-business',
|
query: 'note-from:subscribed-person,subscribed-group,subscribed-organization,subscribed-business',
|
||||||
page: $this->int('p'),
|
|
||||||
language: $actor->getTopLanguage()->getLocale(),
|
language: $actor->getTopLanguage()->getLocale(),
|
||||||
actor: $actor,
|
actor: $actor,
|
||||||
);
|
);
|
||||||
|
@ -38,7 +38,6 @@ use App\Core\DB\DB;
|
|||||||
use function App\Core\I18n\_m;
|
use function App\Core\I18n\_m;
|
||||||
use App\Util\Common;
|
use App\Util\Common;
|
||||||
use Component\Collection\Util\Controller\FeedController;
|
use Component\Collection\Util\Controller\FeedController;
|
||||||
use Component\Feed\Feed;
|
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
|
|
||||||
class Feeds extends FeedController
|
class Feeds extends FeedController
|
||||||
@ -52,9 +51,8 @@ class Feeds extends FeedController
|
|||||||
public function network(Request $request): array
|
public function network(Request $request): array
|
||||||
{
|
{
|
||||||
Common::ensureLoggedIn();
|
Common::ensureLoggedIn();
|
||||||
$data = Feed::query(
|
$data = $this->query(
|
||||||
query: 'note-local:false',
|
query: 'note-local:false',
|
||||||
page: $this->int('p'),
|
|
||||||
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
||||||
);
|
);
|
||||||
return [
|
return [
|
||||||
@ -101,9 +99,8 @@ class Feeds extends FeedController
|
|||||||
public function federated(Request $request): array
|
public function federated(Request $request): array
|
||||||
{
|
{
|
||||||
Common::ensureLoggedIn();
|
Common::ensureLoggedIn();
|
||||||
$data = Feed::query(
|
$data = $this->query(
|
||||||
query: '',
|
query: '',
|
||||||
page: $this->int('p'),
|
|
||||||
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
language: Common::actor()?->getTopLanguage()?->getLocale(),
|
||||||
);
|
);
|
||||||
return [
|
return [
|
||||||
|
@ -31,7 +31,6 @@ use App\Util\Exception\RedirectException;
|
|||||||
use App\Util\Form\FormFields;
|
use App\Util\Form\FormFields;
|
||||||
use App\Util\Formatting;
|
use App\Util\Formatting;
|
||||||
use Component\Collection\Util\Controller\FeedController;
|
use Component\Collection\Util\Controller\FeedController;
|
||||||
use Component\Feed\Feed;
|
|
||||||
use Component\Search as Comp;
|
use Component\Search as Comp;
|
||||||
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
|
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
|
||||||
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
|
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
|
||||||
@ -49,7 +48,7 @@ class Search extends FeedController
|
|||||||
$language = !\is_null($actor) ? $actor->getTopLanguage()->getLocale() : null;
|
$language = !\is_null($actor) ? $actor->getTopLanguage()->getLocale() : null;
|
||||||
$q = $this->string('q');
|
$q = $this->string('q');
|
||||||
|
|
||||||
$data = Feed::query(query: $q, page: $this->int('p'), language: $language);
|
$data = $this->query(query: $q, language: $language);
|
||||||
$notes = $data['notes'];
|
$notes = $data['notes'];
|
||||||
$actors = $data['actors'];
|
$actors = $data['actors'];
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user