29 lines
893 B
PHP
29 lines
893 B
PHP
<?php
|
|
|
|
namespace Slovocast\Controller;
|
|
|
|
use Odan\Session\SessionInterface;
|
|
use Slovocast\Domain\Entity\User;
|
|
use Slovocast\Domain\Repository\Channel\ChannelRepositoryInterface;
|
|
use Slovocast\Domain\Repository\User\UserRepositoryInterface;
|
|
use Psr\Http\Message\ResponseInterface as Response;
|
|
|
|
class DashboardPage extends Controller
|
|
{
|
|
public function __construct(
|
|
protected UserRepositoryInterface $userRepository,
|
|
protected ChannelRepositoryInterface $channelRepository,
|
|
protected SessionInterface $session
|
|
) { }
|
|
|
|
public function handle(): Response
|
|
{
|
|
// get the user details
|
|
// get the channels
|
|
$userData = $this->session->get("user");
|
|
$user = User::fromArray($userData);
|
|
$channels = $this->channelRepository->getFromUser($user);
|
|
return $this->render('dashboard.twig', [ 'channel' => $channels ]);
|
|
}
|
|
}
|