svg
This commit is contained in:
@ -3,7 +3,9 @@
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Service\FileService;
|
||||
use Oneup\UploaderBundle\Uploader\Response\ResponseInterface;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\HttpFoundation\File\UploadedFile;
|
||||
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
@ -45,11 +47,44 @@ class FileController extends AbstractController
|
||||
}
|
||||
}
|
||||
|
||||
#[Route('/user/file/{domain}/{id}/uploadmodal', name: 'app_files_uploadmodal', methods: ['GET'])]
|
||||
public function upload(string $domain, int $id, Request $request): Response
|
||||
#[Route('/user/uploadmodal/{domain}/{id}', name: 'app_files_uploadmodal', methods: ['GET'])]
|
||||
public function uploadmodal(string $domain, int $id, Request $request): Response
|
||||
{
|
||||
$relativePath = $request->query->get('path', '');
|
||||
|
||||
return $this->render('file\upload.html.twig', [
|
||||
'useheader' => false,
|
||||
'usemenu' => false,
|
||||
'usesidebar' => false,
|
||||
'endpoint' => 'file',
|
||||
'domain' => $domain,
|
||||
'id' => $id,
|
||||
'path' => $relativePath,
|
||||
]);
|
||||
}
|
||||
|
||||
#[Route('/user/uploadfile', name: 'app_files_uploadfile', methods: ['POST'])]
|
||||
public function upload(Request $request): Response|ResponseInterface
|
||||
{
|
||||
/** @var UploadedFile $file */
|
||||
$file = $request->files->get('file');
|
||||
$domain = $request->query->get('domain');
|
||||
$id = $request->query->get('id');
|
||||
$relativePath = $request->query->get('path', '');
|
||||
|
||||
if (!$file || !$domain || !$id) {
|
||||
return new Response('Invalid parameters', 400);
|
||||
}
|
||||
|
||||
$baseDir = $this->getParameter('kernel.project_dir').'/uploads/'.$domain.'/'.$id.'/'.ltrim($relativePath, '/');
|
||||
|
||||
if (!is_dir($baseDir)) {
|
||||
mkdir($baseDir, 0775, true);
|
||||
}
|
||||
|
||||
$originalName = $file->getClientOriginalName();
|
||||
$file->move($baseDir, $originalName);
|
||||
|
||||
return new JsonResponse(['success' => true]);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user