Fix #910 : wrong file extension after substitution

This commit is contained in:
Romain Neutron
2012-09-27 12:20:04 +02:00
parent e06890b9a8
commit 686f8f59c5

View File

@@ -137,13 +137,20 @@ class Tools implements ControllerProviderInterface
$fileName = $file->getClientOriginalName(); $fileName = $file->getClientOriginalName();
$size = $file->getClientSize(); $size = $file->getClientSize();
$tempoFile = tempnam(sys_get_temp_dir(), 'substit');
unlink($tempoFile);
mkdir($tempoFile);
$tempoFile = $tempoFile . DIRECTORY_SEPARATOR . $fileName;
copy($file->getPathname(), $tempoFile);
try { try {
$record = new \record_adapter( $record = new \record_adapter(
$request->get('sbas_id') $request->get('sbas_id')
, $request->get('record_id') , $request->get('record_id')
); );
$media = $app['Core']['mediavorus']->guess($file); $media = $app['Core']['mediavorus']->guess(new \SplFileInfo($tempoFile));
$record->substitute_subdef('document', $media); $record->substitute_subdef('document', $media);
@@ -155,6 +162,10 @@ class Tools implements ControllerProviderInterface
} catch (\Exception $e) { } catch (\Exception $e) {
$errorMessage = $e->getMessage(); $errorMessage = $e->getMessage();
} }
unlink($tempoFile);
rmdir(dirname($tempoFile));
unlink($file->getPathname());
} else { } else {
$errorMessage = _('file is not valid'); $errorMessage = _('file is not valid');
} }