Commit 4397a4a9 authored by Eric Pommateau's avatar Eric Pommateau

Merge branch '1111-probleme-de-nom-des-fichiers-envoye-de-pastell-a-s2low' into 'master'

Resolve "Problème de nom des fichiers envoyé de Pastell à S2low"

Closes #1111

See merge request libriciel/pole-plate-formes/pastell/pastell!546
parents fb69dd9b 6e8643b0
Pipeline #10311 failed with stages
......@@ -9,6 +9,10 @@
- Possibilité (limité) d'envoyer des bordereaux SEDA 2.1
## Évolutions
- Le caractère `-` des noms de fichier n'est plus remplacé par `_` lors de l'envoi d'un PES au tdt #1111
# [3.0.6] - 2020-06-01
## Correction
......
......@@ -289,7 +289,7 @@ class S2low extends TdtConnecteur
$this->verifyForwardCertificate();
$file_path = $fichierHelios->filepath;
$file_name = $fichierHelios->filename;
$file_name = preg_replace("#[^a-zA-Z0-9._ ]#", "_", $file_name);
$file_name = $this->getHeliosEnveloppeFileName($file_name);
$this->curlWrapper->addPostFile('enveloppe', $file_path, $file_name);
$result = $this->exec(self::URL_POST_HELIOS);
......@@ -318,7 +318,7 @@ class S2low extends TdtConnecteur
$this->verifyForwardCertificate();
$file_path = $donneesFormulaire->getFilePath('fichier_pes_signe');
$file_name = $donneesFormulaire->get('fichier_pes_signe');
$file_name = preg_replace("#[^a-zA-Z0-9._ ]#", "_", $file_name[0]);
$file_name = $this->getHeliosEnveloppeFileName($file_name[0]);
$this->curlWrapper->addPostFile('enveloppe', $file_path, $file_name);
$result = $this->exec(self::URL_POST_HELIOS);
......@@ -336,6 +336,11 @@ class S2low extends TdtConnecteur
throw new S2lowException("Erreur lors de l'envoi du PES : " . $xml->{'message'});
}
public function getHeliosEnveloppeFileName(?string $name): string
{
return preg_replace("#[^a-zA-Z0-9._\- ]#", "_", $name);
}
private function getIsEnAttente()
{
......
......@@ -98,4 +98,10 @@ class S2lowTest extends PastellTestCase
$donneesFormulaire->getFileContent('fichier_pes')
);
}
public function testPesFilenameSentToS2low()
{
$s2low = $this->getS2low("<import><resultat>OK</resultat></import>");
$this->assertSame("test-file_name.pdf", $s2low->getHeliosEnveloppeFileName('test-file_name.pdf'));
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment