Handling the progress sent from the frontend to the controller.
This commit is contained in:
@@ -8,7 +8,7 @@ use App\Form\BookType;
|
||||
use App\Form\FileType;
|
||||
use App\Form\SearchType;
|
||||
use App\Repository\BookRepository;
|
||||
use App\Service\FileService;
|
||||
use App\Service\ProgressService;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\HttpFoundation\File\UploadedFile;
|
||||
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||
@@ -29,7 +29,7 @@ class BookController extends AbstractController
|
||||
}
|
||||
|
||||
#[Route('/new', name: 'app_book_new', methods: ['GET', 'POST'])]
|
||||
public function new(Request $request, BookRepository $bookRepository, FileService $fileService): Response
|
||||
public function new(Request $request, BookRepository $bookRepository, ProgressService $fileService): Response
|
||||
{
|
||||
$book = new Book();
|
||||
$form = $this->createForm(BookType::class, $book);
|
||||
@@ -95,7 +95,7 @@ class BookController extends AbstractController
|
||||
public function show(
|
||||
Book $book,
|
||||
Request $request,
|
||||
FileService $fileService
|
||||
ProgressService $fileService
|
||||
): Response {
|
||||
$fileForm = $this->createForm(FileType::class);
|
||||
$fileForm->handleRequest($request);
|
||||
@@ -124,7 +124,7 @@ class BookController extends AbstractController
|
||||
Request $request,
|
||||
Book $book,
|
||||
BookRepository $bookRepository,
|
||||
FileService $fileService
|
||||
ProgressService $fileService
|
||||
): Response {
|
||||
$form = $this->createForm(BookType::class, $book);
|
||||
$form->handleRequest($request);
|
||||
@@ -162,7 +162,7 @@ class BookController extends AbstractController
|
||||
Request $request,
|
||||
Book $book,
|
||||
BookRepository $bookRepository,
|
||||
FileService $fileService
|
||||
ProgressService $fileService
|
||||
): Response {
|
||||
if ($this->isCsrfTokenValid('delete' . $book->getId(), $request->request->get('_token'))) {
|
||||
$fileService->removeFiles($book->getFiles());
|
||||
|
||||
@@ -2,13 +2,10 @@
|
||||
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Entity\Book;
|
||||
use App\Entity\File;
|
||||
use App\Repository\FileRepository;
|
||||
use App\Service\FileService;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\Filesystem\Filesystem;
|
||||
use Symfony\Component\HttpFoundation\BinaryFileResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
|
||||
24
src/Controller/ProgressController.php
Normal file
24
src/Controller/ProgressController.php
Normal file
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Service\ProgressService;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
|
||||
#[Route('/progress')]
|
||||
class ProgressController extends AbstractController
|
||||
{
|
||||
#[Route('/update', name: 'app_progress_update', methods: ['POST'])]
|
||||
public function index(Request $request, ProgressService $progressService): JsonResponse
|
||||
{
|
||||
$data = $request->toArray();
|
||||
$progress = $progressService->updateProgress($data['bookId'], $data['progress']);
|
||||
return $this->json([
|
||||
'bookId' => $progress->getBook()->getId(),
|
||||
'progress' => $progress->getPages(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user