Make snip public index available if not logged in
This commit is contained in:
@ -11,6 +11,10 @@ class HomeController extends AbstractController
|
||||
#[Route('/', name: 'home')]
|
||||
public function home(): Response
|
||||
{
|
||||
return $this->redirectToRoute('snip_index');
|
||||
if ($this->getUser()) {
|
||||
return $this->redirectToRoute('snip_index');
|
||||
} else {
|
||||
return $this->redirectToRoute('snip_public');
|
||||
}
|
||||
}
|
||||
}
|
@ -44,20 +44,26 @@ class SnipRepository extends ServiceEntityRepository
|
||||
{
|
||||
$qb = $this->createQueryBuilder('s');
|
||||
$qb->where('s.createdBy = :user')
|
||||
->setParameter('user', $user)
|
||||
->orderBy('s.createdAt', 'DESC');
|
||||
->setParameter('user', $user)
|
||||
->orderBy('s.createdAt', 'DESC')
|
||||
;
|
||||
|
||||
return $qb->getQuery()->getResult();
|
||||
}
|
||||
|
||||
public function findPublic(User $user): array
|
||||
public function findPublic(?User $user): array
|
||||
{
|
||||
$qb = $this->createQueryBuilder('s');
|
||||
$qb->where('s.public = :public')
|
||||
->andWhere('s.createdBy != :user')
|
||||
->setParameter('public', true)
|
||||
->setParameter('user', $user)
|
||||
->orderBy('s.createdAt', 'DESC');
|
||||
$qb = $this->createQueryBuilder('s')
|
||||
->where('s.public = :public')
|
||||
->setParameter('public', true)
|
||||
->orderBy('s.createdAt', 'DESC')
|
||||
;
|
||||
|
||||
if ($user) {
|
||||
$qb->andWhere('s.createdBy != :user')
|
||||
->setParameter('user', $user)
|
||||
;
|
||||
}
|
||||
|
||||
return $qb->getQuery()->getResult();
|
||||
}
|
||||
|
Reference in New Issue
Block a user