From 522c29309ce704334f757e27083e3307821b32c4 Mon Sep 17 00:00:00 2001 From: pbarroca <pbarroca@afi-sa.fr> Date: Mon, 23 Apr 2018 14:43:15 +0200 Subject: [PATCH] dev #73934 : fix RT --- library/Class/Cosmogramme/FileParser.php | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/library/Class/Cosmogramme/FileParser.php b/library/Class/Cosmogramme/FileParser.php index f509589ddd3..8f29f0670a1 100644 --- a/library/Class/Cosmogramme/FileParser.php +++ b/library/Class/Cosmogramme/FileParser.php @@ -31,7 +31,7 @@ abstract class Class_Cosmogramme_FileParser { Class_IntProfilDonnees::FORMAT_TABBED_ASCII => 'Ascii_Tab', Class_IntProfilDonnees::FORMAT_SEMI_COLON_ASCII => 'Ascii_Comma', Class_IntProfilDonnees::FORMAT_PIPED_ASCII => 'Ascii_Pipe', - Class_IntProfilDonnees::FORMAT_XML => 'Xml', + Class_IntProfilDonnees::FORMAT_XML => 'XmlPatrons', Class_IntProfilDonnees::FORMAT_CSV => 'Csv', Class_IntProfilDonnees::FORMAT_MARC21 => 'Marc', Class_IntProfilDonnees::FORMAT_AVENIO => 'Ascii_Tab', @@ -58,7 +58,7 @@ abstract class Class_Cosmogramme_FileParser { $this->_profil = $profil; $fileSystem = $this->getFileSystem(); - ; + if (false === ($this->_file_handle = @$fileSystem->fopen($file, 'rb'))) return; @@ -200,17 +200,6 @@ class Class_Cosmogramme_FileParser_Xml extends Class_Cosmogramme_FileParser { protected $_xml_separator; - public function __construct($file, $position, $profil) { - parent::__construct($file, $position, $profil); - - $data = $this->_profil->getAttributs(); - $attributs = unserialize($data); - - if (array_key_exists(5, $attributs) - && array_key_exists('xml_balise_abonne', $attributs[5])) - $this->_xml_separator = $attributs[5]['xml_balise_abonne']; - } - public function isValid() { return parent::isValid() && $this->_xml_separator; @@ -256,14 +245,19 @@ class Class_Cosmogramme_FileParser_Xml extends Class_Cosmogramme_FileParser { } -class Class_Cosmogramme_FileParser_OaiDC extends Class_Cosmogramme_FileParser_Xml { +class Class_Cosmogramme_FileParser_XmlPatrons extends Class_Cosmogramme_FileParser_Xml { public function __construct($file, $position, $profil) { parent::__construct($file, $position, $profil); - $this->_xml_separator = 'record'; + $this->_xml_separator = $profil->getXmlPatronField(); } } +class Class_Cosmogramme_FileParser_OaiDC extends Class_Cosmogramme_FileParser_Xml { + protected $_xml_separator = 'record'; +} + + class Class_Cosmogramme_FileParser_Csv extends Class_Cosmogramme_FileParser_Ascii { protected $_separator = ','; } \ No newline at end of file -- GitLab