add route parameter for dirs

This commit is contained in:
Constantin Simonis 2024-12-05 10:50:12 +01:00
parent bf226d7e3f
commit 07a54729b1
Signed by: csimonis
GPG Key ID: 758DD9C506603183
2 changed files with 11 additions and 5 deletions

View File

@ -11,11 +11,17 @@ use Symfony\Component\Routing\Attribute\Route;
class HomeController extends AbstractController class HomeController extends AbstractController
{ {
#[Route(path: '/files', name: 'app_home', methods: [Request::METHOD_GET])] #[Route(
public function __invoke(FileSystemService $fileSystemService): Response path: '/files/{dirs?}',
name: 'app_home',
requirements: ['dirs' => '.+'],
defaults: ['dirs' => ''],
methods: [Request::METHOD_GET]
)]
public function __invoke(FileSystemService $fileSystemService, string $dirs): Response
{ {
return $this->render('home.html.twig', [ return $this->render('home.html.twig', [
'content' => $fileSystemService->getDirs(), 'content' => $fileSystemService->getDirs($dirs),
'fileForm' => $this->createForm(UploadFileForm::class), 'fileForm' => $this->createForm(UploadFileForm::class),
]); ]);
} }

View File

@ -20,10 +20,10 @@ class FileSystemService
/** /**
* @return DirContent[] * @return DirContent[]
*/ */
public function getDirs(): array public function getDirs(string $dirs): array
{ {
$finder = new Finder(); $finder = new Finder();
$finder->in($this->dir); $finder->in($this->dir . '/' . $dirs);
$contents = []; $contents = [];