Skip to content
Snippets Groups Projects
Commit 22848e15 authored by Адлан Шамавов's avatar Адлан Шамавов
Browse files

fix

parent 4535963a
No related branches found
No related tags found
1 merge request!8Ptps controller 8
...@@ -22,3 +22,6 @@ services: ...@@ -22,3 +22,6 @@ services:
# add more service definitions when explicit configuration is needed # add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones # please note that last definitions always *replace* previous ones
App\Service\FileUploader:
arguments:
$targetDirectory: '%kernel.project_dir%/public/files/'
\ No newline at end of file
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
namespace App\Controller; namespace App\Controller;
use App\Action\Functions; use App\Action\Functions;
use App\Service\FileUploader;
use App\Requests\{ use App\Requests\{
SortPriceRequest, SortPriceRequest,
SearchRequest, SearchRequest,
...@@ -12,6 +13,7 @@ use App\Requests\{ ...@@ -12,6 +13,7 @@ use App\Requests\{
}; };
use DateTimeImmutable; use DateTimeImmutable;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Attribute\Route; use Symfony\Component\Routing\Attribute\Route;
...@@ -104,10 +106,11 @@ class HomeController extends AbstractController ...@@ -104,10 +106,11 @@ class HomeController extends AbstractController
} }
#[Route('/readLogFile', name: 'readLogFile')] #[Route('/readLogFile', name: 'readLogFile')]
public function readLogFile(Request $request): Response public function readLogFile(Request $request, FileUploader $fileUploader): Response
{ {
$filePath = $this->getParameter('kernel.project_dir') . "/public/files/"; $file = $request->files->get('file');
$text = $this->functions->readLogFile($filePath . $fileName); $fileName = $fileUploader->upload($file);
$text = $this->functions->readLogFile($fileName);
$response = new JsonResponse($text); $response = new JsonResponse($text);
$response->setEncodingOptions(JSON_UNESCAPED_UNICODE); $response->setEncodingOptions(JSON_UNESCAPED_UNICODE);
return $response; return $response;
......
<?php
namespace App\Service;
use Symfony\Component\HttpFoundation\File\Exception\FileException;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class FileUploader
{
private $targetDirectory;
public function __construct($targetDirectory)
{
$this->targetDirectory = $targetDirectory;
}
public function upload(UploadedFile $file)
{
$fileName = pathinfo($file->getClientOriginalName(), PATHINFO_FILENAME) .'.'. $file->guessExtension();
try {
$file->move($this->getTargetDirectory(), $fileName);
} catch (FileException $e) {
throw new FileException($e->getMessage());
}
return $this->getTargetDirectory() . $fileName;
}
public function getTargetDirectory()
{
return $this->targetDirectory;
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment