From abde3799d5f7385daf676602f0ea499e865d2b71 Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Mon, 21 Jul 2014 16:46:08 +0200 Subject: [PATCH] =?UTF-8?q?Fix=20columns=20diff=20finding=20=09modifi?= =?UTF-8?q?=C3=A9:=20=20=20=20=20=20=20=20=20core/lib/Thelia/ImportExport/?= =?UTF-8?q?Import/ImportHandler.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Thelia/ImportExport/Import/ImportHandler.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/core/lib/Thelia/ImportExport/Import/ImportHandler.php b/core/lib/Thelia/ImportExport/Import/ImportHandler.php index a1193a7eb..67d7d9b34 100644 --- a/core/lib/Thelia/ImportExport/Import/ImportHandler.php +++ b/core/lib/Thelia/ImportExport/Import/ImportHandler.php @@ -43,12 +43,22 @@ abstract class ImportHandler extends AbstractHandler protected function checkMandatoryColumns(array $row) { $mandatoryColumns = $this->getMandatoryColumns(); - if ($mandatoryColumns != $keys = array_keys($row)) { + sort($mandatoryColumns); + + $diff = []; + + foreach ($mandatoryColumns as $name) { + if (!isset($row[$name]) || empty($row[$name])) { + $diff[] = $name; + } + } + + if (!empty($diff)) { throw new \UnexpectedValueException( $this->translator->trans( "The following columns are missing: %columns", [ - "%columns" => implode(", ", array_diff($keys, $mandatoryColumns)), + "%columns" => implode(", ", $diff), ] ) );