diff --git a/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php b/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php index 21e0fe338..220de27bd 100644 --- a/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php +++ b/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php @@ -20,7 +20,7 @@ use Thelia\Core\Translation\Translator; */ class ArchiveBuilderManager { - protected $archiveCreators = array(); + protected $archiveBuilders = array(); protected $environment; @@ -37,7 +37,7 @@ class ArchiveBuilderManager if (null !== $archiveCreator) { $archiveCreator->setEnvironment($this->environment); - $this->archiveCreators[$archiveCreator->getName()] = $archiveCreator; + $this->archiveBuilders[$archiveCreator->getName()] = $archiveCreator; } return $this; @@ -50,18 +50,11 @@ class ArchiveBuilderManager */ public function delete($name) { - if (!array_key_exists($name, $this->archiveCreators)) { - throw new \OutOfBoundsException( - Translator::getInstance()->trans( - "The archive creator %name doesn't exist", - [ - "%name" => $name - ] - ) - ); + if (!array_key_exists($name, $this->archiveBuilders)) { + $this->throwOutOfBounds($name); } - unset($this->archiveCreators[$name]); + unset($this->archiveBuilders[$name]); return $this; } @@ -71,6 +64,27 @@ class ArchiveBuilderManager */ public function getAll() { - return $this->archiveCreators; + return $this->archiveBuilders; + } + + public function get($name) + { + if (!array_key_exists($name, $this->archiveBuilders)) { + $this->throwOutOfBounds($name); + } + + return $this->archiveBuilders[$name]; + } + + protected function throwOutOfBounds($name) + { + throw new \OutOfBoundsException( + Translator::getInstance()->trans( + "The archive creator %name doesn't exist", + [ + "%name" => $name + ] + ) + ); } } diff --git a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterData.php b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterData.php index 689ad0ba6..a74ecef90 100644 --- a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterData.php +++ b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterData.php @@ -11,6 +11,8 @@ /*************************************************************************************/ namespace Thelia\Core\FileFormat\Formatter; +use Propel\Runtime\ActiveQuery\ModelCriteria; +use Thelia\Core\Translation\Translator; /** * Class FormatterData @@ -19,5 +21,28 @@ namespace Thelia\Core\FileFormat\Formatter; */ class FormatterData { + /** @var array */ + protected $data; + /** @var Translator */ + protected $translator; + + public function __construct() + { + $this->translator = Translator::getInstance(); + } + + public function loadModelCriteria(ModelCriteria $criteria) + { + + $propelData = + $criteria + ->find() + ; + + if (empty($propelData)) { + return null; + } + + } } diff --git a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php index b8e5d5d66..4035927ae 100644 --- a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php +++ b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php @@ -44,14 +44,7 @@ class FormatterManager public function delete($name) { if (!array_key_exists($name, $this->formatters)) { - throw new \OutOfBoundsException( - Translator::getInstance()->trans( - "The formatter %name doesn't exist", - [ - "%name" => $name - ] - ) - ); + $this->throwOutOfBounds($name); } unset($this->formatters[$name]); @@ -59,6 +52,15 @@ class FormatterManager return $this; } + public function get($name) + { + if (!array_key_exists($name, $this->formatters)) { + $this->throwOutOfBounds($name); + } + + return $this->formatters[$name]; + } + /** * @return array[AbstractFormatter] */ @@ -66,4 +68,20 @@ class FormatterManager { return $this->formatters; } + + /** + * @param $name + * @throws \OutOfBoundsException + */ + protected function throwOutOfBounds($name) + { + throw new \OutOfBoundsException( + Translator::getInstance()->trans( + "The formatter %name doesn't exist", + [ + "%name" => $name + ] + ) + ); + } } diff --git a/core/lib/Thelia/Tools/FileDownload/FileDownloader.php b/core/lib/Thelia/Tools/FileDownload/FileDownloader.php index be8b8f53a..2f77226cf 100644 --- a/core/lib/Thelia/Tools/FileDownload/FileDownloader.php +++ b/core/lib/Thelia/Tools/FileDownload/FileDownloader.php @@ -45,8 +45,8 @@ class FileDownloader implements FileDownloaderInterface } /** - * @param string $url - * @param string $pathToStore + * @param string $url + * @param string $pathToStore * @throws \Thelia\Exception\FileNotFoundException * @throws \ErrorException * @throws \HttpUrlException @@ -125,7 +125,7 @@ class FileDownloader implements FileDownloaderInterface */ $file = @fopen($pathToStore, "w"); - if($file === false) { + if ($file === false) { $translatedErrorMessage = $this->translator->trans( "Failed to open a writing stream on the file: %file", [ @@ -140,4 +140,4 @@ class FileDownloader implements FileDownloaderInterface fputs($file, $response); fclose($file); } -} \ No newline at end of file +} diff --git a/core/lib/Thelia/Tools/FileDownload/FileDownloaderAwareTrait.php b/core/lib/Thelia/Tools/FileDownload/FileDownloaderAwareTrait.php index e9b99d73d..78347bdd9 100644 --- a/core/lib/Thelia/Tools/FileDownload/FileDownloaderAwareTrait.php +++ b/core/lib/Thelia/Tools/FileDownload/FileDownloaderAwareTrait.php @@ -35,7 +35,7 @@ trait FileDownloaderAwareTrait } /** - * @param FileDownloaderInterface $fileDownloader + * @param FileDownloaderInterface $fileDownloader * @return $this */ public function setFileDownloader(FileDownloaderInterface $fileDownloader) @@ -44,4 +44,4 @@ trait FileDownloaderAwareTrait return $this; } -} \ No newline at end of file +} diff --git a/core/lib/Thelia/Tools/FileDownload/FileDownloaderInterface.php b/core/lib/Thelia/Tools/FileDownload/FileDownloaderInterface.php index bdfebb5f9..4c29daf29 100644 --- a/core/lib/Thelia/Tools/FileDownload/FileDownloaderInterface.php +++ b/core/lib/Thelia/Tools/FileDownload/FileDownloaderInterface.php @@ -14,7 +14,6 @@ namespace Thelia\Tools\FileDownload; use Psr\Log\LoggerInterface; use Symfony\Component\Translation\Translator; - /** * Class FileDownloader * @package Thelia\Tools\FileDownload @@ -23,8 +22,8 @@ use Symfony\Component\Translation\Translator; interface FileDownloaderInterface { /** - * @param string $url - * @param string $pathToStore + * @param string $url + * @param string $pathToStore * @throws \Thelia\Exception\FileNotFoundException * @throws \ErrorException * @throws \HttpUrlException @@ -41,4 +40,4 @@ interface FileDownloaderInterface * Returns an hydrated instance */ public static function getInstance(); -} \ No newline at end of file +}