Loading Classes/WE/SpreadsheetImport/FrontendMappingService.php +1 −0 Changes for Classes/WE/SpreadsheetImport/FrontendMappingService.php: 1 added line, 0 removed lines. Original line number Original line Diff line number Diff line Loading @@ -99,6 +99,7 @@ class FrontendMappingService { * @return array * @return array */ */ public function getMappingPreview($mapping, $record) { public function getMappingPreview($mapping, $record) { $record = max($record, 1); $previewObject = $this->spreadsheetImportService->getObjectByRow($record); $previewObject = $this->spreadsheetImportService->getObjectByRow($record); $preview = array(); $preview = array(); foreach ($mapping as $property => $columnMapping) { foreach ($mapping as $property => $columnMapping) { Loading Classes/WE/SpreadsheetImport/SpreadsheetImportService.php +25 −9 Changes for Classes/WE/SpreadsheetImport/SpreadsheetImportService.php: 25 added lines, 9 removed lines. Original line number Original line Diff line number Diff line Loading @@ -99,14 +99,22 @@ class SpreadsheetImportService { return $mappingPropertyAnnotations; return $mappingPropertyAnnotations; } } /** * @return array */ public function getTotalRecords() { $sheet = $this->getFileActiveSheet(); $highestColumn = $sheet->getHighestDataRow(); return $highestColumn - 1; } /** /** * @return array * @return array */ */ public function getSpreadsheetColumns() { public function getSpreadsheetColumns() { $columns = array(); $columns = array(); $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $sheet = $reader->getActiveSheet(); $highestColumn = $sheet->getHighestDataColumn(); $highestColumn = $sheet->getHighestDataColumn(); $row = $sheet->getRowIterator(1, 1)->current(); $row = $sheet->getRowIterator(1, 1)->current(); $cellIterator = $row->getCellIterator(); $cellIterator = $row->getCellIterator(); Loading @@ -130,9 +138,8 @@ class SpreadsheetImportService { $domain = $this->domain; $domain = $this->domain; $newObject = new $domain; $newObject = new $domain; // Plus one to skip the headings // Plus one to skip the headings $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $row = $sheet->getRowIterator($number + 1, $number + 1)->current(); $row = $reader->getActiveSheet()->getRowIterator($number + 1, $number + 1)->current(); $this->setObjectPropertiesByRow($newObject, $row); $this->setObjectPropertiesByRow($newObject, $row); return $newObject; return $newObject; } } Loading @@ -150,12 +157,11 @@ class SpreadsheetImportService { $objectRepository = $this->getDomainRepository(); $objectRepository = $this->getDomainRepository(); $objectValidator = $this->validatorResolver->getBaseValidatorConjunction($domain); $objectValidator = $this->validatorResolver->getBaseValidatorConjunction($domain); $identifierProperties = $this->getDomainMappingIdentifierProperties(); $identifierProperties = $this->getDomainMappingIdentifierProperties(); $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $numberOfRecordsToPersist = $this->settings['numberOfRecordsToPersist']; $numberOfRecordsToPersist = $this->settings['numberOfRecordsToPersist']; $i = 0; $i = 0; /** @var \PHPExcel_Worksheet_Row $row */ /** @var \PHPExcel_Worksheet_Row $row */ foreach ($reader->getActiveSheet()->getRowIterator(2) as $row) { foreach ($sheet->getRowIterator(2) as $row) { $object = $this->findObjectByIdentifierPropertiesPerRow($identifierProperties, $row); $object = $this->findObjectByIdentifierPropertiesPerRow($identifierProperties, $row); if (is_object($object)) { if (is_object($object)) { $objectIds[] = $this->persistenceManager->getIdentifierByObject($object); $objectIds[] = $this->persistenceManager->getIdentifierByObject($object); Loading Loading @@ -215,6 +221,16 @@ class SpreadsheetImportService { $this->spreadsheetImport->setTotalSkipped($totalSkipped); $this->spreadsheetImport->setTotalSkipped($totalSkipped); } } /** * @return \PHPExcel_Worksheet */ private function getFileActiveSheet() { $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $reader = \PHPExcel_IOFactory::load($file); $sheet = $reader->getActiveSheet(); return $sheet; } /** /** * @return \TYPO3\Flow\Persistence\RepositoryInterface * @return \TYPO3\Flow\Persistence\RepositoryInterface */ */ Loading Loading
Classes/WE/SpreadsheetImport/FrontendMappingService.php +1 −0 Changes for Classes/WE/SpreadsheetImport/FrontendMappingService.php: 1 added line, 0 removed lines. Original line number Original line Diff line number Diff line Loading @@ -99,6 +99,7 @@ class FrontendMappingService { * @return array * @return array */ */ public function getMappingPreview($mapping, $record) { public function getMappingPreview($mapping, $record) { $record = max($record, 1); $previewObject = $this->spreadsheetImportService->getObjectByRow($record); $previewObject = $this->spreadsheetImportService->getObjectByRow($record); $preview = array(); $preview = array(); foreach ($mapping as $property => $columnMapping) { foreach ($mapping as $property => $columnMapping) { Loading
Classes/WE/SpreadsheetImport/SpreadsheetImportService.php +25 −9 Changes for Classes/WE/SpreadsheetImport/SpreadsheetImportService.php: 25 added lines, 9 removed lines. Original line number Original line Diff line number Diff line Loading @@ -99,14 +99,22 @@ class SpreadsheetImportService { return $mappingPropertyAnnotations; return $mappingPropertyAnnotations; } } /** * @return array */ public function getTotalRecords() { $sheet = $this->getFileActiveSheet(); $highestColumn = $sheet->getHighestDataRow(); return $highestColumn - 1; } /** /** * @return array * @return array */ */ public function getSpreadsheetColumns() { public function getSpreadsheetColumns() { $columns = array(); $columns = array(); $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $sheet = $reader->getActiveSheet(); $highestColumn = $sheet->getHighestDataColumn(); $highestColumn = $sheet->getHighestDataColumn(); $row = $sheet->getRowIterator(1, 1)->current(); $row = $sheet->getRowIterator(1, 1)->current(); $cellIterator = $row->getCellIterator(); $cellIterator = $row->getCellIterator(); Loading @@ -130,9 +138,8 @@ class SpreadsheetImportService { $domain = $this->domain; $domain = $this->domain; $newObject = new $domain; $newObject = new $domain; // Plus one to skip the headings // Plus one to skip the headings $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $row = $sheet->getRowIterator($number + 1, $number + 1)->current(); $row = $reader->getActiveSheet()->getRowIterator($number + 1, $number + 1)->current(); $this->setObjectPropertiesByRow($newObject, $row); $this->setObjectPropertiesByRow($newObject, $row); return $newObject; return $newObject; } } Loading @@ -150,12 +157,11 @@ class SpreadsheetImportService { $objectRepository = $this->getDomainRepository(); $objectRepository = $this->getDomainRepository(); $objectValidator = $this->validatorResolver->getBaseValidatorConjunction($domain); $objectValidator = $this->validatorResolver->getBaseValidatorConjunction($domain); $identifierProperties = $this->getDomainMappingIdentifierProperties(); $identifierProperties = $this->getDomainMappingIdentifierProperties(); $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $sheet = $this->getFileActiveSheet(); $reader = \PHPExcel_IOFactory::load($file); $numberOfRecordsToPersist = $this->settings['numberOfRecordsToPersist']; $numberOfRecordsToPersist = $this->settings['numberOfRecordsToPersist']; $i = 0; $i = 0; /** @var \PHPExcel_Worksheet_Row $row */ /** @var \PHPExcel_Worksheet_Row $row */ foreach ($reader->getActiveSheet()->getRowIterator(2) as $row) { foreach ($sheet->getRowIterator(2) as $row) { $object = $this->findObjectByIdentifierPropertiesPerRow($identifierProperties, $row); $object = $this->findObjectByIdentifierPropertiesPerRow($identifierProperties, $row); if (is_object($object)) { if (is_object($object)) { $objectIds[] = $this->persistenceManager->getIdentifierByObject($object); $objectIds[] = $this->persistenceManager->getIdentifierByObject($object); Loading Loading @@ -215,6 +221,16 @@ class SpreadsheetImportService { $this->spreadsheetImport->setTotalSkipped($totalSkipped); $this->spreadsheetImport->setTotalSkipped($totalSkipped); } } /** * @return \PHPExcel_Worksheet */ private function getFileActiveSheet() { $file = $this->spreadsheetImport->getFile()->createTemporaryLocalCopy(); $reader = \PHPExcel_IOFactory::load($file); $sheet = $reader->getActiveSheet(); return $sheet; } /** /** * @return \TYPO3\Flow\Persistence\RepositoryInterface * @return \TYPO3\Flow\Persistence\RepositoryInterface */ */ Loading