Configured swagger-php for documentation at /docs, probably needs a refactor lol; paginated searchAlbums to fix limit bug with null filters.

This commit is contained in:
boris committed 2026-02-27 20:15:57 +00:00
1 parent 56dea097d6
commit c1b1c2f372
19 files changed
+840 -273

No files matched your search

+10 -11
View File
@@ -5,7 +5,6 @@ namespace App\Controller;
use App\Entity\User;
use App\Form\ProfileFormType;
use App\Repository\ReviewRepository;
use App\Repository\AlbumRepository;
use App\Service\UploadStorage;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
@@ -27,7 +26,7 @@ class AccountController extends AbstractController
* Summarizes the signed-in user's recent activity.
*/
#[Route('/dashboard', name: 'account_dashboard', methods: ['GET'])]
public function dashboard(ReviewRepository $reviews, AlbumRepository $albums): Response
public function dashboard(ReviewRepository $reviews): Response
{
/** @var User $user */
$user = $this->getUser();
@@ -36,10 +35,10 @@ class AccountController extends AbstractController
->select('COUNT(r.id)')
->where('r.author = :u')->setParameter('u', $user)
->getQuery()->getSingleScalarResult();
$albumCount = (int) $albums->createQueryBuilder('a')
->select('COUNT(a.id)')
->where('a.source = :src')->setParameter('src', 'user')
->andWhere('a.createdBy = :u')->setParameter('u', $user)
$albumCount = (int) $reviews->createQueryBuilder('r')
->select('COUNT(DISTINCT a.id)')
->innerJoin('r.album', 'a')
->where('r.author = :u')->setParameter('u', $user)
->getQuery()->getSingleScalarResult();
if ($this->isGranted('ROLE_ADMIN')) {
$userType = 'Admin';
@@ -53,10 +52,11 @@ class AccountController extends AbstractController
->orderBy('r.createdAt', 'DESC')
->setMaxResults(10)
->getQuery()->getResult();
$userAlbums = $albums->createQueryBuilder('a')
->where('a.source = :src')->setParameter('src', 'user')
->andWhere('a.createdBy = :u')->setParameter('u', $user)
->orderBy('a.createdAt', 'DESC')
$userAlbums = $reviews->createQueryBuilder('r')
->select('DISTINCT a')
->innerJoin('r.album', 'a')
->where('r.author = :u')->setParameter('u', $user)
->orderBy('r.createdAt', 'DESC')
->setMaxResults(10)
->getQuery()->getResult();
@@ -124,4 +124,3 @@ class AccountController extends AbstractController
}
}