Fix video pagination

This commit is contained in:
Jill Stingray 2020-06-24 15:25:43 +00:00
parent 55e8412025
commit 65cd0e93df
2 changed files with 6 additions and 7 deletions

View file

@ -37,13 +37,12 @@ class Videos
function getByUser(User $user, int $page = 1, ?int $perPage = NULL): \Traversable
{
$perPage = $perPage ?? OPENVK_DEFAULT_PER_PAGE;
foreach($this->videos->where("owner", $user->getId())->page($page, $perPage) as $video)
if(!$video->deleted)
yield new Video($video);
foreach($this->videos->where("owner", $user->getId())->where("deleted", 0)->page($page, $perPage) as $video)
yield new Video($video);
}
function getUserVideosCount(User $user): int
{
return sizeof($this->videos->where("owner", $user->getId()));
return sizeof($this->videos->where("owner", $user->getId())->where("deleted", 0));
}
}

View file

@ -24,13 +24,13 @@ final class VideosPresenter extends OpenVKPresenter
if(!$user) $this->notFound();
$this->template->user = $user;
$this->template->videos = $this->videos->getByUser($user, $this->queryParam("p") ?? 1);
$this->template->videos = $this->videos->getByUser($user, (int) ($this->queryParam("p") ?? 1));
$this->template->count = $this->videos->getUserVideosCount($user);
$this->template->paginatorConf = (object) [
"count" => $this->template->count,
"page" => $this->queryParam("p") ?? 1,
"page" => (int) ($this->queryParam("p") ?? 1),
"amount" => NULL,
"perPage" => OPENVK_DEFAULT_PER_PAGE,
"perPage" => 7,
];
}