diff --git a/src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php b/src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php index d609995da..35ea454d2 100644 --- a/src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php +++ b/src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php @@ -31,12 +31,21 @@ use ChampsLibres\AsyncUploaderBundle\TempUrl\TempUrlOpenstackGenerator; use Jose\Component\Core\JWK; use Base64Url\Base64Url; +use Symfony\Component\HttpKernel\HttpKernelInterface; + // TODO à mettre dans services use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; class DocGeneratorTemplateController extends AbstractController { + protected $kernel; + + public function __construct(HttpKernelInterface $kernel) + { + $this->kernel = $kernel; + } + /** * @Route( * "{_locale}/doc/gen/generate/from/{template}/for/{entityClassName}/{entityId}", @@ -70,7 +79,7 @@ class DocGeneratorTemplateController extends AbstractController throw new \Exception("Error during Decrypt ", 1); } - $tmpfnameDeCrypted = tempnam(sys_get_temp_dir(), 'DECRYPT_DOC_TEMPLATE'); + $tmpfnameDeCrypted = tempnam($this->kernel->getCacheDir(), 'DECRYPT_DOC_TEMPLATE'); // plus ou moins if (!$handle = fopen($tmpfnameDeCrypted, 'a')) { echo "Cannot open file ($tmpfnameDeCrypted)"; @@ -105,7 +114,7 @@ class DocGeneratorTemplateController extends AbstractController $templateProcessor->cloneRowAndSetValues($cloneRowAndSetValues[0], $cloneRowAndSetValues[1]); } - $tmpfnameGenerated = tempnam(sys_get_temp_dir(), 'DOC_GENERATED'); + $tmpfnameGenerated = tempnam($this->kernel->getCacheDir(), 'DOC_GENERATED'); $templateProcessor->saveAs($tmpfnameGenerated); $fileContent = fopen($tmpfnameGenerated, 'rb'); // the generated file content diff --git a/src/Bundle/ChillDocGeneratorBundle/config/services.yaml b/src/Bundle/ChillDocGeneratorBundle/config/services.yaml index 6d87dbd25..6e66115fc 100644 --- a/src/Bundle/ChillDocGeneratorBundle/config/services.yaml +++ b/src/Bundle/ChillDocGeneratorBundle/config/services.yaml @@ -15,3 +15,8 @@ services: resource: '../Serializer/Normalizer/' tags: - { name: 'serializer.normalizer', priority: -152 } + + Chill\DocGeneratorBundle\Controller\: + resource: "../Controller" + autowire: true + autoconfigure: true