Completed
Push — master ( 9d2265...dea319 )
by Aimeos
9s
created
src/Controller/Common/Product/Import/Csv/Processor/Product/Standard.php 2 patches
Spacing   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -43,10 +43,10 @@  discard block
 block discarded – undo
43 43
 	 * @param array $mapping Associative list of field position in CSV as key and domain item key as value
44 44
 	 * @param \Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object Decorated processor
45 45
 	 */
46
-	public function __construct( \Aimeos\MShop\Context\Item\Iface $context, array $mapping,
47
-		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object = null )
46
+	public function __construct(\Aimeos\MShop\Context\Item\Iface $context, array $mapping,
47
+		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object = null)
48 48
 	{
49
-		parent::__construct( $context, $mapping, $object );
49
+		parent::__construct($context, $mapping, $object);
50 50
 
51 51
 		/** controller/common/product/import/csv/processor/product/listtypes
52 52
 		 * Names of the product list types that are updated or removed
@@ -73,11 +73,11 @@  discard block
 block discarded – undo
73 73
 		 * @see controller/common/product/import/csv/processor/price/listtypes
74 74
 		 * @see controller/common/product/import/csv/processor/text/listtypes
75 75
 		 */
76
-		$default = array( 'default', 'suggestion' );
76
+		$default = array('default', 'suggestion');
77 77
 		$key = 'controller/common/product/import/csv/processor/product/listtypes';
78
-		$this->listTypes = $context->getConfig()->get( $key, $default );
78
+		$this->listTypes = $context->getConfig()->get($key, $default);
79 79
 
80
-		$this->cache = $this->getCache( 'product' );
80
+		$this->cache = $this->getCache('product');
81 81
 	}
82 82
 
83 83
 
@@ -88,13 +88,13 @@  discard block
 block discarded – undo
88 88
 	 * @param array $data List of CSV fields with position as key and data as value
89 89
 	 * @return array List of data which hasn't been imported
90 90
 	 */
91
-	public function process( \Aimeos\MShop\Product\Item\Iface $product, array $data )
91
+	public function process(\Aimeos\MShop\Product\Item\Iface $product, array $data)
92 92
 	{
93 93
 		$context = $this->getContext();
94
-		$manager = \Aimeos\MShop\Factory::createManager( $context, 'product' );
95
-		$separator = $context->getConfig()->get( 'controller/common/product/import/csv/separator', "\n" );
94
+		$manager = \Aimeos\MShop\Factory::createManager($context, 'product');
95
+		$separator = $context->getConfig()->get('controller/common/product/import/csv/separator', "\n");
96 96
 
97
-		$this->cache->set( $product );
97
+		$this->cache->set($product);
98 98
 
99 99
 		$manager->begin();
100 100
 
@@ -102,37 +102,37 @@  discard block
 block discarded – undo
102 102
 		{
103 103
 			$types = array();
104 104
 
105
-			foreach( $this->getMappedChunk( $data, $this->getMapping() ) as $list )
105
+			foreach ($this->getMappedChunk($data, $this->getMapping()) as $list)
106 106
 			{
107
-				if( $this->checkEntry( $list ) === false ) {
107
+				if ($this->checkEntry($list) === false) {
108 108
 					continue;
109 109
 				}
110 110
 
111 111
 				$listMap = array();
112
-				$type = ( isset( $list['product.lists.type'] ) ? $list['product.lists.type'] : 'default' );
112
+				$type = (isset($list['product.lists.type']) ? $list['product.lists.type'] : 'default');
113 113
 				$types[] = $type;
114 114
 
115
-				foreach( explode( $separator, $list['product.code'] ) as $code )
115
+				foreach (explode($separator, $list['product.code']) as $code)
116 116
 				{
117
-					if( ( $prodid = $this->cache->get( $code ) ) === null )
117
+					if (($prodid = $this->cache->get($code)) === null)
118 118
 					{
119 119
 						$msg = 'No product for code "%1$s" available when importing product with code "%2$s"';
120
-						throw new \Aimeos\Controller\Jobs\Exception( sprintf( $msg, $code, $product->getCode() ) );
120
+						throw new \Aimeos\Controller\Jobs\Exception(sprintf($msg, $code, $product->getCode()));
121 121
 					}
122 122
 
123 123
 					$listMap[$prodid] = $list;
124 124
 				}
125 125
 
126
-				$manager->updateListItems( $product, $listMap, 'product', $type );
126
+				$manager->updateListItems($product, $listMap, 'product', $type);
127 127
 			}
128 128
 
129
-			$this->deleteListItems( $product->getId(), $types );
129
+			$this->deleteListItems($product->getId(), $types);
130 130
 
131
-			$data = $this->getObject()->process( $product, $data );
131
+			$data = $this->getObject()->process($product, $data);
132 132
 
133 133
 			$manager->commit();
134 134
 		}
135
-		catch( \Exception $e )
135
+		catch (\Exception $e)
136 136
 		{
137 137
 			$manager->rollback();
138 138
 			throw $e;
@@ -148,10 +148,10 @@  discard block
 block discarded – undo
148 148
 	 * @param array $list Associative list of key/value pairs from the mapping
149 149
 	 * @return boolean True if valid, false if not
150 150
 	 */
151
-	protected function checkEntry( array $list )
151
+	protected function checkEntry(array $list)
152 152
 	{
153
-		if( !isset( $list['product.code'] ) || $list['product.code'] === '' || isset( $list['product.lists.type'] )
154
-			&& $this->listTypes !== null && !in_array( $list['product.lists.type'], (array) $this->listTypes )
153
+		if (!isset($list['product.code']) || $list['product.code'] === '' || isset($list['product.lists.type'])
154
+			&& $this->listTypes !== null && !in_array($list['product.lists.type'], (array) $this->listTypes)
155 155
 		) {
156 156
 			return false;
157 157
 		}
@@ -166,19 +166,19 @@  discard block
 block discarded – undo
166 166
 	 * @param string $prodId Unique product ID
167 167
 	 * @param array $types List of types that have been updated
168 168
 	 */
169
-	protected function deleteListItems( $prodId, array $types )
169
+	protected function deleteListItems($prodId, array $types)
170 170
 	{
171
-		$codes = array_diff( $this->listTypes, $types );
172
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'product/lists' );
171
+		$codes = array_diff($this->listTypes, $types);
172
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'product/lists');
173 173
 
174 174
 		$search = $manager->createSearch();
175 175
 		$expr = array(
176
-			$search->compare( '==', 'product.lists.parentid', $prodId ),
177
-			$search->compare( '==', 'product.lists.domain', 'product' ),
178
-			$search->compare( '==', 'product.lists.type.code', $codes ),
176
+			$search->compare('==', 'product.lists.parentid', $prodId),
177
+			$search->compare('==', 'product.lists.domain', 'product'),
178
+			$search->compare('==', 'product.lists.type.code', $codes),
179 179
 		);
180
-		$search->setConditions( $search->combine( '&&', $expr ) );
180
+		$search->setConditions($search->combine('&&', $expr));
181 181
 
182
-		$manager->deleteItems( array_keys( $manager->searchItems( $search ) ) );
182
+		$manager->deleteItems(array_keys($manager->searchItems($search)));
183 183
 	}
184 184
 }
Please login to merge, or discard this patch.
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -131,8 +131,7 @@
 block discarded – undo
131 131
 			$data = $this->getObject()->process( $product, $data );
132 132
 
133 133
 			$manager->commit();
134
-		}
135
-		catch( \Exception $e )
134
+		} catch( \Exception $e )
136 135
 		{
137 136
 			$manager->rollback();
138 137
 			throw $e;
Please login to merge, or discard this patch.
src/Controller/Common/Product/Import/Csv/Processor/Stock/Standard.php 2 patches
Spacing   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -42,12 +42,12 @@  discard block
 block discarded – undo
42 42
 	 * @param array $mapping Associative list of field position in CSV as key and domain item key as value
43 43
 	 * @param \Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object Decorated processor
44 44
 	 */
45
-	public function __construct( \Aimeos\MShop\Context\Item\Iface $context, array $mapping,
46
-		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object = null )
45
+	public function __construct(\Aimeos\MShop\Context\Item\Iface $context, array $mapping,
46
+		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $object = null)
47 47
 	{
48
-		parent::__construct( $context, $mapping, $object );
48
+		parent::__construct($context, $mapping, $object);
49 49
 
50
-		$this->cache = $this->getCache( 'stocktype' );
50
+		$this->cache = $this->getCache('stocktype');
51 51
 	}
52 52
 
53 53
 
@@ -58,53 +58,53 @@  discard block
 block discarded – undo
58 58
 	 * @param array $data List of CSV fields with position as key and data as value
59 59
 	 * @return array List of data which hasn't been imported
60 60
 	 */
61
-	public function process( \Aimeos\MShop\Product\Item\Iface $product, array $data )
61
+	public function process(\Aimeos\MShop\Product\Item\Iface $product, array $data)
62 62
 	{
63
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'stock' );
63
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'stock');
64 64
 		$manager->begin();
65 65
 
66 66
 		try
67 67
 		{
68
-			$map = $this->getMappedChunk( $data, $this->getMapping() );
69
-			$items = $this->getStockItems( $product->getCode() );
68
+			$map = $this->getMappedChunk($data, $this->getMapping());
69
+			$items = $this->getStockItems($product->getCode());
70 70
 
71
-			foreach( $map as $pos => $list )
71
+			foreach ($map as $pos => $list)
72 72
 			{
73
-				if( !array_key_exists( 'stock.stocklevel', $list ) ) {
73
+				if (!array_key_exists('stock.stocklevel', $list)) {
74 74
 					continue;
75 75
 				}
76 76
 
77
-				$stockType = ( isset( $list['stock.type'] ) ? $list['stock.type'] : 'default' );
77
+				$stockType = (isset($list['stock.type']) ? $list['stock.type'] : 'default');
78 78
 
79
-				if( !isset( $list['stock.typeid'] ) ) {
80
-					$list['stock.typeid'] = $this->cache->get( $stockType );
79
+				if (!isset($list['stock.typeid'])) {
80
+					$list['stock.typeid'] = $this->cache->get($stockType);
81 81
 				}
82 82
 
83
-				if( isset( $list['stock.dateback'] ) && $list['stock.dateback'] === '' ) {
83
+				if (isset($list['stock.dateback']) && $list['stock.dateback'] === '') {
84 84
 					$list['stock.dateback'] = null;
85 85
 				}
86 86
 
87
-				if( $list['stock.stocklevel'] === '' ) {
87
+				if ($list['stock.stocklevel'] === '') {
88 88
 					$list['stock.stocklevel'] = null;
89 89
 				}
90 90
 
91 91
 				$list['stock.productcode'] = $product->getCode();
92 92
 
93
-				if( ( $item = array_pop( $items ) ) === null ) {
93
+				if (($item = array_pop($items)) === null) {
94 94
 					$item = $manager->createItem();
95 95
 				}
96 96
 
97
-				$item->fromArray( $list );
98
-				$manager->saveItem( $item );
97
+				$item->fromArray($list);
98
+				$manager->saveItem($item);
99 99
 			}
100 100
 
101
-			$manager->deleteItems( array_keys( $items ) );
101
+			$manager->deleteItems(array_keys($items));
102 102
 
103
-			$data = $this->getObject()->process( $product, $data );
103
+			$data = $this->getObject()->process($product, $data);
104 104
 
105 105
 			$manager->commit();
106 106
 		}
107
-		catch( \Exception $e )
107
+		catch (\Exception $e)
108 108
 		{
109 109
 			$manager->rollback();
110 110
 			throw $e;
@@ -120,13 +120,13 @@  discard block
 block discarded – undo
120 120
 	 * @param string $code Unique product code
121 121
 	 * @return \Aimeos\MShop\Stock\Item\Iface[] Associative list of stock items
122 122
 	 */
123
-	protected function getStockItems( $code )
123
+	protected function getStockItems($code)
124 124
 	{
125
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'stock' );
125
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'stock');
126 126
 
127 127
 		$search = $manager->createSearch();
128
-		$search->setConditions( $search->compare( '==', 'stock.productcode', $code ) );
128
+		$search->setConditions($search->compare('==', 'stock.productcode', $code));
129 129
 
130
-		return $manager->searchItems( $search );
130
+		return $manager->searchItems($search);
131 131
 	}
132 132
 }
Please login to merge, or discard this patch.
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -131,8 +131,7 @@
 block discarded – undo
131 131
 			$data = $this->getObject()->process( $product, $data );
132 132
 
133 133
 			$manager->commit();
134
-		}
135
-		catch( \Exception $e )
134
+		} catch( \Exception $e )
136 135
 		{
137 136
 			$manager->rollback();
138 137
 			throw $e;
Please login to merge, or discard this patch.
controller/common/src/Controller/Common/Product/Import/Csv/Base.php 1 patch
Spacing   +58 added lines, -58 removed lines patch added patch discarded remove patch
@@ -30,14 +30,14 @@  discard block
 block discarded – undo
30 30
 	 * @param array $data Associative list of product codes and lists of CSV field indexes and their data
31 31
 	 * @return array Associative list of CSV field indexes and their converted data
32 32
 	 */
33
-	protected function convertData( array $convlist, array $data )
33
+	protected function convertData(array $convlist, array $data)
34 34
 	{
35
-		foreach( $convlist as $idx => $converter )
35
+		foreach ($convlist as $idx => $converter)
36 36
 		{
37
-			foreach( $data as $code => $list )
37
+			foreach ($data as $code => $list)
38 38
 			{
39
-				if( isset( $list[$idx] ) ) {
40
-					$data[$code][$idx] = $converter->translate( $list[$idx] );
39
+				if (isset($list[$idx])) {
40
+					$data[$code][$idx] = $converter->translate($list[$idx]);
41 41
 				}
42 42
 			}
43 43
 		}
@@ -53,38 +53,38 @@  discard block
 block discarded – undo
53 53
 	 * @param string|null Name of the cache implementation
54 54
 	 * @return \Aimeos\Controller\Common\Product\Import\Csv\Cache\Iface Cache object
55 55
 	 */
56
-	protected function getCache( $type, $name = null )
56
+	protected function getCache($type, $name = null)
57 57
 	{
58 58
 		$context = $this->getContext();
59 59
 		$config = $context->getConfig();
60 60
 		$iface = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Cache\\Iface';
61 61
 
62
-		if( ctype_alnum( $type ) === false )
62
+		if (ctype_alnum($type) === false)
63 63
 		{
64 64
 			$classname = is_string($name) ? '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Cache\\' . $type : '<not a string>';
65
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Invalid characters in class name "%1$s"', $classname ) );
65
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('Invalid characters in class name "%1$s"', $classname));
66 66
 		}
67 67
 
68
-		if( $name === null ) {
69
-			$name = $config->get( 'controller/common/product/import/csv/cache/' . $type . '/name', 'Standard' );
68
+		if ($name === null) {
69
+			$name = $config->get('controller/common/product/import/csv/cache/' . $type . '/name', 'Standard');
70 70
 		}
71 71
 
72
-		if( ctype_alnum( $name ) === false )
72
+		if (ctype_alnum($name) === false)
73 73
 		{
74 74
 			$classname = is_string($name) ? '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Cache\\' . $type . '\\' . $name : '<not a string>';
75
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Invalid characters in class name "%1$s"', $classname ) );
75
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('Invalid characters in class name "%1$s"', $classname));
76 76
 		}
77 77
 
78
-		$classname = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Cache\\' . ucfirst( $type ) . '\\' . $name;
78
+		$classname = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Cache\\' . ucfirst($type) . '\\' . $name;
79 79
 
80
-		if( class_exists( $classname ) === false ) {
81
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Class "%1$s" not found', $classname ) );
80
+		if (class_exists($classname) === false) {
81
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('Class "%1$s" not found', $classname));
82 82
 		}
83 83
 
84
-		$object = new $classname( $context );
84
+		$object = new $classname($context);
85 85
 
86
-		if( !( $object instanceof $iface ) ) {
87
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Class "%1$s" does not implement interface "%2$s"', $classname, $iface ) );
86
+		if (!($object instanceof $iface)) {
87
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('Class "%1$s" does not implement interface "%2$s"', $classname, $iface));
88 88
 		}
89 89
 
90 90
 		return $object;
@@ -97,12 +97,12 @@  discard block
 block discarded – undo
97 97
 	 * @param array $convmap List of converter names for the values at the position in the CSV file
98 98
 	 * @return array Associative list of positions and converter objects
99 99
 	 */
100
-	protected function getConverterList( array $convmap )
100
+	protected function getConverterList(array $convmap)
101 101
 	{
102 102
 		$convlist = array();
103 103
 
104
-		foreach( $convmap as $idx => $name ) {
105
-			$convlist[$idx] = \Aimeos\MW\Convert\Factory::createConverter( $name );
104
+		foreach ($convmap as $idx => $name) {
105
+			$convlist[$idx] = \Aimeos\MW\Convert\Factory::createConverter($name);
106 106
 		}
107 107
 
108 108
 		return $convlist;
@@ -117,15 +117,15 @@  discard block
 block discarded – undo
117 117
 	 * @param integer $codePos Column position which contains the unique product code (starting from 0)
118 118
 	 * @return array List of arrays with product codes as keys and list of values from the CSV file
119 119
 	 */
120
-	protected function getData( \Aimeos\MW\Container\Content\Iface $content, $maxcnt, $codePos )
120
+	protected function getData(\Aimeos\MW\Container\Content\Iface $content, $maxcnt, $codePos)
121 121
 	{
122 122
 		$count = 0;
123 123
 		$data = array();
124 124
 
125
-		while( $content->valid() && $count++ < $maxcnt )
125
+		while ($content->valid() && $count++ < $maxcnt)
126 126
 		{
127 127
 			$row = $content->current();
128
-			$data[ $row[$codePos] ] = $row;
128
+			$data[$row[$codePos]] = $row;
129 129
 			$content->next();
130 130
 		}
131 131
 
@@ -222,21 +222,21 @@  discard block
 block discarded – undo
222 222
 	 * @param array $mapping List of domain item keys with the CSV field position as key
223 223
 	 * @return array List of associative arrays containing the chunked properties
224 224
 	 */
225
-	protected function getMappedChunk( array &$data, array $mapping )
225
+	protected function getMappedChunk(array &$data, array $mapping)
226 226
 	{
227 227
 		$idx = 0;
228 228
 		$map = array();
229 229
 
230
-		foreach( $mapping as $pos => $key )
230
+		foreach ($mapping as $pos => $key)
231 231
 		{
232
-			if( isset( $map[$idx][$key] ) ) {
232
+			if (isset($map[$idx][$key])) {
233 233
 				$idx++;
234 234
 			}
235 235
 
236
-			if( isset( $data[$pos] ) )
236
+			if (isset($data[$pos]))
237 237
 			{
238 238
 				$map[$idx][$key] = $data[$pos];
239
-				unset( $data[$pos] );
239
+				unset($data[$pos]);
240 240
 			}
241 241
 		}
242 242
 
@@ -250,39 +250,39 @@  discard block
 block discarded – undo
250 250
 	 * @param array $mappings Associative list of processor types as keys and index/data mappings as values
251 251
 	 * @return \Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface Processor object
252 252
 	 */
253
-	protected function getProcessors( array $mappings )
253
+	protected function getProcessors(array $mappings)
254 254
 	{
255 255
 		$context = $this->getContext();
256 256
 		$config = $context->getConfig();
257 257
 		$iface = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Processor\\Iface';
258
-		$object = new \Aimeos\Controller\Common\Product\Import\Csv\Processor\Done( $context, array() );
258
+		$object = new \Aimeos\Controller\Common\Product\Import\Csv\Processor\Done($context, array());
259 259
 
260
-		foreach( $mappings as $type => $mapping )
260
+		foreach ($mappings as $type => $mapping)
261 261
 		{
262
-			if( ctype_alnum( $type ) === false )
262
+			if (ctype_alnum($type) === false)
263 263
 			{
264 264
 				$classname = is_string($type) ? '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Processor\\' . $type : '<not a string>';
265
-				throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Invalid characters in class name "%1$s"', $classname ) );
265
+				throw new \Aimeos\Controller\Jobs\Exception(sprintf('Invalid characters in class name "%1$s"', $classname));
266 266
 			}
267 267
 
268
-			$name = $config->get( 'controller/common/product/import/csv/processor/' . $type . '/name', 'Standard' );
268
+			$name = $config->get('controller/common/product/import/csv/processor/' . $type . '/name', 'Standard');
269 269
 
270
-			if( ctype_alnum( $name ) === false )
270
+			if (ctype_alnum($name) === false)
271 271
 			{
272 272
 				$classname = is_string($name) ? '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Processor\\' . $type . '\\' . $name : '<not a string>';
273
-				throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Invalid characters in class name "%1$s"', $classname ) );
273
+				throw new \Aimeos\Controller\Jobs\Exception(sprintf('Invalid characters in class name "%1$s"', $classname));
274 274
 			}
275 275
 
276
-			$classname = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Processor\\' . ucfirst( $type ) . '\\' . $name;
276
+			$classname = '\\Aimeos\\Controller\\Common\\Product\\Import\\Csv\\Processor\\' . ucfirst($type) . '\\' . $name;
277 277
 
278
-			if( class_exists( $classname ) === false ) {
279
-				throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Class "%1$s" not found', $classname ) );
278
+			if (class_exists($classname) === false) {
279
+				throw new \Aimeos\Controller\Jobs\Exception(sprintf('Class "%1$s" not found', $classname));
280 280
 			}
281 281
 
282
-			$object = new $classname( $context, $mapping, $object );
282
+			$object = new $classname($context, $mapping, $object);
283 283
 
284
-			if( !( $object instanceof $iface ) ) {
285
-				throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Class "%1$s" does not implement interface "%2$s"', $classname, $iface ) );
284
+			if (!($object instanceof $iface)) {
285
+				throw new \Aimeos\Controller\Jobs\Exception(sprintf('Class "%1$s" does not implement interface "%2$s"', $classname, $iface));
286 286
 			}
287 287
 		}
288 288
 
@@ -297,17 +297,17 @@  discard block
 block discarded – undo
297 297
 	 * @param array $domains List of domains whose items should be fetched too
298 298
 	 * @return array Associative list of product codes as key and product items as value
299 299
 	 */
300
-	protected function getProducts( array $codes, array $domains )
300
+	protected function getProducts(array $codes, array $domains)
301 301
 	{
302 302
 		$result = array();
303
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'product' );
303
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'product');
304 304
 
305 305
 		$search = $manager->createSearch();
306
-		$search->setConditions( $search->compare( '==', 'product.code', $codes ) );
307
-		$search->setSlice( 0, count( $codes ) );
306
+		$search->setConditions($search->compare('==', 'product.code', $codes));
307
+		$search->setSlice(0, count($codes));
308 308
 
309
-		foreach( $manager->searchItems( $search, $domains ) as $item ) {
310
-			$result[ $item->getCode() ] = $item;
309
+		foreach ($manager->searchItems($search, $domains) as $item) {
310
+			$result[$item->getCode()] = $item;
311 311
 		}
312 312
 
313 313
 		return $result;
@@ -322,23 +322,23 @@  discard block
 block discarded – undo
322 322
 	 * @param string $code Unique code of the type item
323 323
 	 * @return string Unique ID of the type item
324 324
 	 */
325
-	protected function getTypeId( $path, $domain, $code )
325
+	protected function getTypeId($path, $domain, $code)
326 326
 	{
327
-		if( !isset( self::$types[$path][$domain] ) )
327
+		if (!isset(self::$types[$path][$domain]))
328 328
 		{
329
-			$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), $path );
330
-			$key = str_replace( '/', '.', $path );
329
+			$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), $path);
330
+			$key = str_replace('/', '.', $path);
331 331
 
332 332
 			$search = $manager->createSearch();
333
-			$search->setConditions( $search->compare( '==', $key . '.domain', $domain ) );
333
+			$search->setConditions($search->compare('==', $key . '.domain', $domain));
334 334
 
335
-			foreach( $manager->searchItems( $search ) as $id => $item ) {
336
-				self::$types[$path][$domain][ $item->getCode() ] = $id;
335
+			foreach ($manager->searchItems($search) as $id => $item) {
336
+				self::$types[$path][$domain][$item->getCode()] = $id;
337 337
 			}
338 338
 		}
339 339
 
340
-		if( !isset( self::$types[$path][$domain][$code] ) ) {
341
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'No type item for "%1$s/%2$s" in "%3$s" found', $domain, $code, $path ) );
340
+		if (!isset(self::$types[$path][$domain][$code])) {
341
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('No type item for "%1$s/%2$s" in "%3$s" found', $domain, $code, $path));
342 342
 		}
343 343
 
344 344
 		return self::$types[$path][$domain][$code];
Please login to merge, or discard this patch.
controller/jobs/src/Controller/Jobs/Product/Import/Csv/Standard.php 2 patches
Spacing   +69 added lines, -69 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 	 */
29 29
 	public function getName()
30 30
 	{
31
-		return $this->getContext()->getI18n()->dt( 'controller/jobs', 'Product import CSV' );
31
+		return $this->getContext()->getI18n()->dt('controller/jobs', 'Product import CSV');
32 32
 	}
33 33
 
34 34
 
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 	 */
40 40
 	public function getDescription()
41 41
 	{
42
-		return $this->getContext()->getI18n()->dt( 'controller/jobs', 'Imports new and updates existing products from CSV files' );
42
+		return $this->getContext()->getI18n()->dt('controller/jobs', 'Imports new and updates existing products from CSV files');
43 43
 	}
44 44
 
45 45
 
@@ -54,7 +54,7 @@  discard block
 block discarded – undo
54 54
 		$context = $this->getContext();
55 55
 		$config = $context->getConfig();
56 56
 		$logger = $context->getLogger();
57
-		$domains = array( 'attribute', 'media', 'price', 'product', 'text' );
57
+		$domains = array('attribute', 'media', 'price', 'product', 'text');
58 58
 		$mappings = $this->getDefaultMapping();
59 59
 
60 60
 
@@ -74,7 +74,7 @@  discard block
 block discarded – undo
74 74
 		 * @see controller/common/product/import/csv/converter
75 75
 		 * @see controller/common/product/import/csv/max-size
76 76
 		 */
77
-		$domains = $config->get( 'controller/common/product/import/csv/domains', $domains );
77
+		$domains = $config->get('controller/common/product/import/csv/domains', $domains);
78 78
 
79 79
 		/** controller/jobs/product/import/csv/domains
80 80
 		 * List of item domain names that should be retrieved along with the product items
@@ -94,7 +94,7 @@  discard block
 block discarded – undo
94 94
 		 * @see controller/jobs/product/import/csv/backup
95 95
 		 * @see controller/common/product/import/csv/max-size
96 96
 		 */
97
-		$domains = $config->get( 'controller/jobs/product/import/csv/domains', $domains );
97
+		$domains = $config->get('controller/jobs/product/import/csv/domains', $domains);
98 98
 
99 99
 
100 100
 		/** controller/common/product/import/csv/mapping
@@ -122,7 +122,7 @@  discard block
 block discarded – undo
122 122
 		 * @see controller/common/product/import/csv/converter
123 123
 		 * @see controller/common/product/import/csv/max-size
124 124
 		 */
125
-		$mappings = $config->get( 'controller/common/product/import/csv/mapping', $mappings );
125
+		$mappings = $config->get('controller/common/product/import/csv/mapping', $mappings);
126 126
 
127 127
 		/** controller/jobs/product/import/csv/mapping
128 128
 		 * List of mappings between the position in the CSV file and item keys
@@ -142,7 +142,7 @@  discard block
 block discarded – undo
142 142
 		 * @see controller/jobs/product/import/csv/backup
143 143
 		 * @see controller/common/product/import/csv/max-size
144 144
 		 */
145
-		$mappings = $config->get( 'controller/jobs/product/import/csv/mapping', $mappings );
145
+		$mappings = $config->get('controller/jobs/product/import/csv/mapping', $mappings);
146 146
 
147 147
 
148 148
 		/** controller/common/product/import/csv/converter
@@ -184,7 +184,7 @@  discard block
 block discarded – undo
184 184
 		 * @see controller/common/product/import/csv/mapping
185 185
 		 * @see controller/common/product/import/csv/max-size
186 186
 		 */
187
-		$converters = $config->get( 'controller/common/product/import/csv/converter', array() );
187
+		$converters = $config->get('controller/common/product/import/csv/converter', array());
188 188
 
189 189
 		/** controller/jobs/product/import/csv/converter
190 190
 		 * List of converter names for the values at the position in the CSV file
@@ -204,7 +204,7 @@  discard block
 block discarded – undo
204 204
 		 * @see controller/jobs/product/import/csv/backup
205 205
 		 * @see controller/common/product/import/csv/max-size
206 206
 		 */
207
-		$converters = $config->get( 'controller/jobs/product/import/csv/converter', $converters );
207
+		$converters = $config->get('controller/jobs/product/import/csv/converter', $converters);
208 208
 
209 209
 
210 210
 		/** controller/common/product/import/csv/max-size
@@ -224,7 +224,7 @@  discard block
 block discarded – undo
224 224
 		 * @see controller/common/product/import/csv/mapping
225 225
 		 * @see controller/common/product/import/csv/converter
226 226
 		 */
227
-		$maxcnt = (int) $config->get( 'controller/common/product/import/csv/max-size', 1000 );
227
+		$maxcnt = (int) $config->get('controller/common/product/import/csv/max-size', 1000);
228 228
 
229 229
 
230 230
 		/** controller/jobs/product/import/csv/skip-lines
@@ -246,7 +246,7 @@  discard block
 block discarded – undo
246 246
 		 * @see controller/jobs/product/import/csv/backup
247 247
 		 * @see controller/common/product/import/csv/max-size
248 248
 		 */
249
-		$skiplines = (int) $config->get( 'controller/jobs/product/import/csv/skip-lines', 0 );
249
+		$skiplines = (int) $config->get('controller/jobs/product/import/csv/skip-lines', 0);
250 250
 
251 251
 
252 252
 		/** controller/jobs/product/import/csv/strict
@@ -270,7 +270,7 @@  discard block
 block discarded – undo
270 270
 		 * @see controller/jobs/product/import/csv/backup
271 271
 		 * @see controller/common/product/import/csv/max-size
272 272
 		 */
273
-		$strict = (bool) $config->get( 'controller/jobs/product/import/csv/strict', true );
273
+		$strict = (bool) $config->get('controller/jobs/product/import/csv/strict', true);
274 274
 
275 275
 
276 276
 		/** controller/jobs/product/import/csv/backup
@@ -303,74 +303,74 @@  discard block
 block discarded – undo
303 303
 		 * @see controller/jobs/product/import/csv/strict
304 304
 		 * @see controller/common/product/import/csv/max-size
305 305
 		 */
306
-		$backup = $config->get( 'controller/jobs/product/import/csv/backup' );
306
+		$backup = $config->get('controller/jobs/product/import/csv/backup');
307 307
 
308 308
 
309
-		if( !isset( $mappings['item'] ) || !is_array( $mappings['item'] ) )
309
+		if (!isset($mappings['item']) || !is_array($mappings['item']))
310 310
 		{
311
-			$msg = sprintf( 'Required mapping key "%1$s" is missing or contains no array', 'item' );
312
-			throw new \Aimeos\Controller\Jobs\Exception( $msg );
311
+			$msg = sprintf('Required mapping key "%1$s" is missing or contains no array', 'item');
312
+			throw new \Aimeos\Controller\Jobs\Exception($msg);
313 313
 		}
314 314
 
315 315
 		try
316 316
 		{
317 317
 			$procMappings = $mappings;
318
-			unset( $procMappings['item'] );
318
+			unset($procMappings['item']);
319 319
 
320
-			$codePos = $this->getCodePosition( $mappings['item'] );
321
-			$convlist = $this->getConverterList( $converters );
322
-			$processor = $this->getProcessors( $procMappings );
320
+			$codePos = $this->getCodePosition($mappings['item']);
321
+			$convlist = $this->getConverterList($converters);
322
+			$processor = $this->getProcessors($procMappings);
323 323
 			$container = $this->getContainer();
324 324
 			$path = $container->getName();
325 325
 
326
-			$msg = sprintf( 'Started product import from "%1$s" (%2$s)', $path, __CLASS__ );
327
-			$logger->log( $msg, \Aimeos\MW\Logger\Base::NOTICE );
326
+			$msg = sprintf('Started product import from "%1$s" (%2$s)', $path, __CLASS__);
327
+			$logger->log($msg, \Aimeos\MW\Logger\Base::NOTICE);
328 328
 
329
-			foreach( $container as $content )
329
+			foreach ($container as $content)
330 330
 			{
331 331
 				$name = $content->getName();
332 332
 
333
-				for( $i = 0; $i < $skiplines; $i++ ) {
333
+				for ($i = 0; $i < $skiplines; $i++) {
334 334
 					$content->next();
335 335
 				}
336 336
 
337
-				while( ( $data = $this->getData( $content, $maxcnt, $codePos ) ) !== array() )
337
+				while (($data = $this->getData($content, $maxcnt, $codePos)) !== array())
338 338
 				{
339
-					$data = $this->convertData( $convlist, $data );
340
-					$products = $this->getProducts( array_keys( $data ), $domains );
341
-					$errcnt = $this->import( $products, $data, $mappings['item'], $processor, $strict );
342
-					$chunkcnt = count( $data );
339
+					$data = $this->convertData($convlist, $data);
340
+					$products = $this->getProducts(array_keys($data), $domains);
341
+					$errcnt = $this->import($products, $data, $mappings['item'], $processor, $strict);
342
+					$chunkcnt = count($data);
343 343
 
344 344
 					$msg = 'Imported product lines from "%1$s": %2$d/%3$d (%4$s)';
345
-					$logger->log( sprintf( $msg, $name, $chunkcnt - $errcnt, $chunkcnt, __CLASS__ ), \Aimeos\MW\Logger\Base::NOTICE );
345
+					$logger->log(sprintf($msg, $name, $chunkcnt - $errcnt, $chunkcnt, __CLASS__), \Aimeos\MW\Logger\Base::NOTICE);
346 346
 
347 347
 					$errors += $errcnt;
348 348
 					$total += $chunkcnt;
349
-					unset( $products, $data );
349
+					unset($products, $data);
350 350
 				}
351 351
 			}
352 352
 
353 353
 			$container->close();
354 354
 		}
355
-		catch( \Exception $e )
355
+		catch (\Exception $e)
356 356
 		{
357
-			$logger->log( 'Product import error: ' . $e->getMessage() );
358
-			$logger->log( $e->getTraceAsString() );
357
+			$logger->log('Product import error: ' . $e->getMessage());
358
+			$logger->log($e->getTraceAsString());
359 359
 
360
-			throw new \Aimeos\Controller\Jobs\Exception( $e->getMessage() );
360
+			throw new \Aimeos\Controller\Jobs\Exception($e->getMessage());
361 361
 		}
362 362
 
363 363
 		$msg = 'Finished product import from "%1$s": %2$d successful, %3$s errors, %4$s total (%5$s)';
364
-		$logger->log( sprintf( $msg, $path, $total - $errors, $errors, $total, __CLASS__ ), \Aimeos\MW\Logger\Base::NOTICE );
364
+		$logger->log(sprintf($msg, $path, $total - $errors, $errors, $total, __CLASS__), \Aimeos\MW\Logger\Base::NOTICE);
365 365
 
366
-		if( $errors > 0 )
366
+		if ($errors > 0)
367 367
 		{
368
-			$msg = sprintf( 'Invalid product lines in "%1$s": %2$d/%3$d', $path, $errors, $total );
369
-			throw new \Aimeos\Controller\Jobs\Exception( $msg );
368
+			$msg = sprintf('Invalid product lines in "%1$s": %2$d/%3$d', $path, $errors, $total);
369
+			throw new \Aimeos\Controller\Jobs\Exception($msg);
370 370
 		}
371 371
 
372
-		if( !empty( $backup ) && @rename( $path, strftime( $backup ) ) === false ) {
373
-			throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'Unable to move imported file' ) );
372
+		if (!empty($backup) && @rename($path, strftime($backup)) === false) {
373
+			throw new \Aimeos\Controller\Jobs\Exception(sprintf('Unable to move imported file'));
374 374
 		}
375 375
 	}
376 376
 
@@ -382,16 +382,16 @@  discard block
 block discarded – undo
382 382
 	 * @return integer Position of the "product.code" column
383 383
 	 * @throws \Aimeos\Controller\Jobs\Exception If no mapping for "product.code" is found
384 384
 	 */
385
-	protected function getCodePosition( array $mapping )
385
+	protected function getCodePosition(array $mapping)
386 386
 	{
387
-		foreach( $mapping as $pos => $key )
387
+		foreach ($mapping as $pos => $key)
388 388
 		{
389
-			if( $key === 'product.code' ) {
389
+			if ($key === 'product.code') {
390 390
 				return $pos;
391 391
 			}
392 392
 		}
393 393
 
394
-		throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'No "product.code" column in CSV mapping found' ) );
394
+		throw new \Aimeos\Controller\Jobs\Exception(sprintf('No "product.code" column in CSV mapping found'));
395 395
 	}
396 396
 
397 397
 
@@ -426,7 +426,7 @@  discard block
 block discarded – undo
426 426
 		 * @see controller/jobs/product/import/csv/container/content
427 427
 		 * @see controller/jobs/product/import/csv/container/options
428 428
 		 */
429
-		$location = $config->get( 'controller/jobs/product/import/csv/location', '.' );
429
+		$location = $config->get('controller/jobs/product/import/csv/location', '.');
430 430
 
431 431
 		/** controller/jobs/product/import/csv/container/type
432 432
 		 * Nave of the container type to read the data from
@@ -449,7 +449,7 @@  discard block
 block discarded – undo
449 449
 		 * @see controller/jobs/product/import/csv/container/content
450 450
 		 * @see controller/jobs/product/import/csv/container/options
451 451
 		 */
452
-		$container = $config->get( 'controller/jobs/product/import/csv/container/type', 'Directory' );
452
+		$container = $config->get('controller/jobs/product/import/csv/container/type', 'Directory');
453 453
 
454 454
 		/** controller/jobs/product/import/csv/container/content
455 455
 		 * Name of the content type inside the container to read the data from
@@ -470,7 +470,7 @@  discard block
 block discarded – undo
470 470
 		 * @see controller/jobs/product/import/csv/container/type
471 471
 		 * @see controller/jobs/product/import/csv/container/options
472 472
 		 */
473
-		$content = $config->get( 'controller/jobs/product/import/csv/container/content', 'CSV' );
473
+		$content = $config->get('controller/jobs/product/import/csv/container/content', 'CSV');
474 474
 
475 475
 		/** controller/jobs/product/import/csv/container/options
476 476
 		 * List of file container options for the product import files
@@ -488,9 +488,9 @@  discard block
 block discarded – undo
488 488
 		 * @see controller/jobs/product/import/csv/container/content
489 489
 		 * @see controller/jobs/product/import/csv/container/type
490 490
 		 */
491
-		$options = $config->get( 'controller/jobs/product/import/csv/container/options', array() );
491
+		$options = $config->get('controller/jobs/product/import/csv/container/options', array());
492 492
 
493
-		return \Aimeos\MW\Container\Factory::getContainer( $location, $container, $content, $options );
493
+		return \Aimeos\MW\Container\Factory::getContainer($location, $container, $content, $options);
494 494
 	}
495 495
 
496 496
 
@@ -505,54 +505,54 @@  discard block
 block discarded – undo
505 505
 	 * @return integer Number of products that couldn't be imported
506 506
 	 * @throws \Aimeos\Controller\Jobs\Exception
507 507
 	 */
508
-	protected function import( array $products, array $data, array $mapping,
509
-		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $processor, $strict )
508
+	protected function import(array $products, array $data, array $mapping,
509
+		\Aimeos\Controller\Common\Product\Import\Csv\Processor\Iface $processor, $strict)
510 510
 	{
511 511
 		$errors = 0;
512 512
 		$context = $this->getContext();
513
-		$manager = \Aimeos\MShop\Factory::createManager( $context, 'product' );
513
+		$manager = \Aimeos\MShop\Factory::createManager($context, 'product');
514 514
 
515
-		foreach( $data as $code => $list )
515
+		foreach ($data as $code => $list)
516 516
 		{
517 517
 			$manager->begin();
518 518
 
519 519
 			try
520 520
 			{
521
-				if( isset( $products[$code] ) ) {
521
+				if (isset($products[$code])) {
522 522
 					$product = $products[$code];
523 523
 				} else {
524 524
 					$product = $manager->createItem();
525 525
 				}
526 526
 
527
-				$map = $this->getMappedChunk( $list, $mapping );
527
+				$map = $this->getMappedChunk($list, $mapping);
528 528
 
529
-				if( isset( $map[0] ) )
529
+				if (isset($map[0]))
530 530
 				{
531 531
 					$map = $map[0]; // there can only be one chunk for the base product data
532 532
 
533
-					$typecode = ( isset( $map['product.type'] ) ? $map['product.type'] : 'default' );
534
-					$map['product.typeid'] = $this->getTypeId( 'product/type', 'product', $typecode );
533
+					$typecode = (isset($map['product.type']) ? $map['product.type'] : 'default');
534
+					$map['product.typeid'] = $this->getTypeId('product/type', 'product', $typecode);
535 535
 
536
-					$product->fromArray( $this->addItemDefaults( $map ) );
537
-					$manager->saveItem( $product );
536
+					$product->fromArray($this->addItemDefaults($map));
537
+					$manager->saveItem($product);
538 538
 
539
-					$list = $processor->process( $product, $list );
539
+					$list = $processor->process($product, $list);
540 540
 				}
541 541
 
542 542
 				$manager->commit();
543 543
 			}
544
-			catch( \Exception $e )
544
+			catch (\Exception $e)
545 545
 			{
546 546
 				$manager->rollback();
547 547
 
548
-				$msg = sprintf( 'Unable to import product with code "%1$s": %2$s', $code, $e->getMessage() );
549
-				$context->getLogger()->log( $msg );
548
+				$msg = sprintf('Unable to import product with code "%1$s": %2$s', $code, $e->getMessage());
549
+				$context->getLogger()->log($msg);
550 550
 
551 551
 				$errors++;
552 552
 			}
553 553
 
554
-			if( $strict && !empty( $list ) ) {
555
-				$context->getLogger()->log( 'Not imported: ' . print_r( $list, true ) );
554
+			if ($strict && !empty($list)) {
555
+				$context->getLogger()->log('Not imported: ' . print_r($list, true));
556 556
 			}
557 557
 		}
558 558
 
@@ -566,9 +566,9 @@  discard block
 block discarded – undo
566 566
 	 * @param array $list Associative list of domain item keys and their values, e.g. "product.status" => 1
567 567
 	 * @return array Given associative list enriched by default values if they were not already set
568 568
 	 */
569
-	protected function addItemDefaults( array $list )
569
+	protected function addItemDefaults(array $list)
570 570
 	{
571
-		if( !isset( $list['product.status'] ) ) {
571
+		if (!isset($list['product.status'])) {
572 572
 			$list['product.status'] = 1;
573 573
 		}
574 574
 
Please login to merge, or discard this patch.
Braces   +2 added lines, -4 removed lines patch added patch discarded remove patch
@@ -351,8 +351,7 @@  discard block
 block discarded – undo
351 351
 			}
352 352
 
353 353
 			$container->close();
354
-		}
355
-		catch( \Exception $e )
354
+		} catch( \Exception $e )
356 355
 		{
357 356
 			$logger->log( 'Product import error: ' . $e->getMessage() );
358 357
 			$logger->log( $e->getTraceAsString() );
@@ -540,8 +539,7 @@  discard block
 block discarded – undo
540 539
 				}
541 540
 
542 541
 				$manager->commit();
543
-			}
544
-			catch( \Exception $e )
542
+			} catch( \Exception $e )
545 543
 			{
546 544
 				$manager->rollback();
547 545
 
Please login to merge, or discard this patch.