Completed
Push — master ( 39e62d...45f0bf )
by Aimeos
01:53
created
controller/frontend/src/Controller/Frontend/Basket/Base.php 1 patch
Spacing   +147 added lines, -147 removed lines patch added patch discarded remove patch
@@ -31,52 +31,52 @@  discard block
 block discarded – undo
31 31
 	 * @param integer $quantity New product quantity
32 32
 	 * @return \Aimeos\MShop\Price\Item\Iface Price item with calculated price
33 33
 	 */
34
-	protected function calcPrice( \Aimeos\MShop\Order\Item\Base\Product\Iface $product, array $prices, $quantity )
34
+	protected function calcPrice(\Aimeos\MShop\Order\Item\Base\Product\Iface $product, array $prices, $quantity)
35 35
 	{
36 36
 		$context = $this->getContext();
37 37
 
38
-		if( empty( $prices ) )
38
+		if (empty($prices))
39 39
 		{
40
-			$manager = \Aimeos\MShop\Factory::createManager( $context, 'product' );
41
-			$prices = $manager->getItem( $product->getProductId(), array( 'price' ) )->getRefItems( 'price', 'default' );
40
+			$manager = \Aimeos\MShop\Factory::createManager($context, 'product');
41
+			$prices = $manager->getItem($product->getProductId(), array('price'))->getRefItems('price', 'default');
42 42
 		}
43 43
 
44 44
 
45
-		$priceManager = \Aimeos\MShop\Factory::createManager( $context, 'price' );
46
-		$price = $priceManager->getLowestPrice( $prices, $quantity );
45
+		$priceManager = \Aimeos\MShop\Factory::createManager($context, 'price');
46
+		$price = $priceManager->getLowestPrice($prices, $quantity);
47 47
 
48 48
 		// customers can pay what they would like to pay
49
-		if( ( $attr = $product->getAttributeItem( 'price', 'custom' ) ) !== null )
49
+		if (($attr = $product->getAttributeItem('price', 'custom')) !== null)
50 50
 		{
51 51
 			$amount = $attr->getValue();
52 52
 
53
-			if( preg_match( '/^[0-9]*(\.[0-9]+)?$/', $amount ) !== 1 || ((double) $amount) < 0.01 )
53
+			if (preg_match('/^[0-9]*(\.[0-9]+)?$/', $amount) !== 1 || ((double) $amount) < 0.01)
54 54
 			{
55
-				$msg = $context->getI18n()->dt( 'controller/frontend', 'Invalid price value "%1$s"' );
56
-				throw new \Aimeos\Controller\Frontend\Basket\Exception( sprintf( $msg, $amount ) );
55
+				$msg = $context->getI18n()->dt('controller/frontend', 'Invalid price value "%1$s"');
56
+				throw new \Aimeos\Controller\Frontend\Basket\Exception(sprintf($msg, $amount));
57 57
 			}
58 58
 
59
-			$price->setValue( $amount );
59
+			$price->setValue($amount);
60 60
 		}
61 61
 
62 62
 		$orderAttributes = $product->getAttributes();
63
-		$attrItems = $this->getAttributeItems( $orderAttributes );
63
+		$attrItems = $this->getAttributeItems($orderAttributes);
64 64
 
65 65
 		// add prices of (optional) attributes
66
-		foreach( $orderAttributes as $orderAttrItem )
66
+		foreach ($orderAttributes as $orderAttrItem)
67 67
 		{
68 68
 			$attrId = $orderAttrItem->getAttributeId();
69 69
 
70
-			if( isset( $attrItems[$attrId] )
71
-				&& ( $prices = $attrItems[$attrId]->getRefItems( 'price', 'default' ) ) !== []
70
+			if (isset($attrItems[$attrId])
71
+				&& ($prices = $attrItems[$attrId]->getRefItems('price', 'default')) !== []
72 72
 			) {
73
-				$attrPrice = $priceManager->getLowestPrice( $prices, $orderAttrItem->getQuantity() );
74
-				$price->addItem( $attrPrice, $orderAttrItem->getQuantity() );
73
+				$attrPrice = $priceManager->getLowestPrice($prices, $orderAttrItem->getQuantity());
74
+				$price->addItem($attrPrice, $orderAttrItem->getQuantity());
75 75
 			}
76 76
 		}
77 77
 
78 78
 		// remove product rebate of original price in favor to rebates granted for the order
79
-		$price->setRebate( '0.00' );
79
+		$price->setRebate('0.00');
80 80
 
81 81
 		return $price;
82 82
 	}
@@ -90,36 +90,36 @@  discard block
 block discarded – undo
90 90
 	 * @param array $refMap Associative list of list type codes as keys and lists of reference IDs as values
91 91
 	 * @throws \Aimeos\Controller\Frontend\Basket\Exception If one or more of the IDs are not associated
92 92
 	 */
93
-	protected function checkListRef( $prodId, $domain, array $refMap )
93
+	protected function checkListRef($prodId, $domain, array $refMap)
94 94
 	{
95
-		if( empty( $refMap ) ) {
95
+		if (empty($refMap)) {
96 96
 			return;
97 97
 		}
98 98
 
99 99
 		$context = $this->getContext();
100
-		$productManager = \Aimeos\MShop\Factory::createManager( $context, 'product' );
101
-		$search = $productManager->createSearch( true );
100
+		$productManager = \Aimeos\MShop\Factory::createManager($context, 'product');
101
+		$search = $productManager->createSearch(true);
102 102
 
103 103
 		$expr = array(
104
-			$search->compare( '==', 'product.id', $prodId ),
104
+			$search->compare('==', 'product.id', $prodId),
105 105
 			$search->getConditions(),
106 106
 		);
107 107
 
108
-		foreach( $refMap as $listType => $refIds )
108
+		foreach ($refMap as $listType => $refIds)
109 109
 		{
110
-			foreach( $refIds as $key => $refId )
110
+			foreach ($refIds as $key => $refId)
111 111
 			{
112
-				$cmpfunc = $search->createFunction( 'product:has', [$domain, $listType, (string) $refId] );
113
-				$expr[] = $search->compare( '!=', $cmpfunc, null );
112
+				$cmpfunc = $search->createFunction('product:has', [$domain, $listType, (string) $refId]);
113
+				$expr[] = $search->compare('!=', $cmpfunc, null);
114 114
 			}
115 115
 		}
116 116
 
117
-		$search->setConditions( $search->combine( '&&', $expr ) );
117
+		$search->setConditions($search->combine('&&', $expr));
118 118
 
119
-		if( count( $productManager->searchItems( $search, [] ) ) === 0 )
119
+		if (count($productManager->searchItems($search, [])) === 0)
120 120
 		{
121
-			$msg = $context->getI18n()->dt( 'controller/frontend', 'Invalid "%1$s" references for product with ID %2$s' );
122
-			throw new \Aimeos\Controller\Frontend\Basket\Exception( sprintf( $msg, $domain, json_encode( $prodId ) ) );
121
+			$msg = $context->getI18n()->dt('controller/frontend', 'Invalid "%1$s" references for product with ID %2$s');
122
+			throw new \Aimeos\Controller\Frontend\Basket\Exception(sprintf($msg, $domain, json_encode($prodId)));
123 123
 		}
124 124
 	}
125 125
 
@@ -130,40 +130,40 @@  discard block
 block discarded – undo
130 130
 	 * @param \Aimeos\MShop\Locale\Item\Iface $locale Locale object from current basket
131 131
 	 * @param string $type Basket type
132 132
 	 */
133
-	protected function checkLocale( \Aimeos\MShop\Locale\Item\Iface $locale, $type )
133
+	protected function checkLocale(\Aimeos\MShop\Locale\Item\Iface $locale, $type)
134 134
 	{
135 135
 		$errors = [];
136 136
 		$context = $this->getContext();
137 137
 		$session = $context->getSession();
138 138
 
139
-		$localeStr = $session->get( 'aimeos/basket/locale' );
139
+		$localeStr = $session->get('aimeos/basket/locale');
140 140
 		$localeKey = $locale->getSite()->getCode() . '|' . $locale->getLanguageId() . '|' . $locale->getCurrencyId();
141 141
 
142
-		if( $localeStr !== null && $localeStr !== $localeKey )
142
+		if ($localeStr !== null && $localeStr !== $localeKey)
143 143
 		{
144
-			$locParts = explode( '|', $localeStr );
145
-			$locSite = ( isset( $locParts[0] ) ? $locParts[0] : '' );
146
-			$locLanguage = ( isset( $locParts[1] ) ? $locParts[1] : '' );
147
-			$locCurrency = ( isset( $locParts[2] ) ? $locParts[2] : '' );
144
+			$locParts = explode('|', $localeStr);
145
+			$locSite = (isset($locParts[0]) ? $locParts[0] : '');
146
+			$locLanguage = (isset($locParts[1]) ? $locParts[1] : '');
147
+			$locCurrency = (isset($locParts[2]) ? $locParts[2] : '');
148 148
 
149
-			$localeManager = \Aimeos\MShop\Factory::createManager( $context, 'locale' );
150
-			$locale = $localeManager->bootstrap( $locSite, $locLanguage, $locCurrency, false );
149
+			$localeManager = \Aimeos\MShop\Factory::createManager($context, 'locale');
150
+			$locale = $localeManager->bootstrap($locSite, $locLanguage, $locCurrency, false);
151 151
 
152 152
 			$context = clone $context;
153
-			$context->setLocale( $locale );
153
+			$context->setLocale($locale);
154 154
 
155
-			$manager = \Aimeos\MShop\Factory::createManager( $context, 'order/base' );
156
-			$basket = $manager->getSession( $type );
155
+			$manager = \Aimeos\MShop\Factory::createManager($context, 'order/base');
156
+			$basket = $manager->getSession($type);
157 157
 
158
-			$this->copyAddresses( $basket, $errors, $localeKey );
159
-			$this->copyServices( $basket, $errors );
160
-			$this->copyProducts( $basket, $errors, $localeKey );
161
-			$this->copyCoupons( $basket, $errors, $localeKey );
158
+			$this->copyAddresses($basket, $errors, $localeKey);
159
+			$this->copyServices($basket, $errors);
160
+			$this->copyProducts($basket, $errors, $localeKey);
161
+			$this->copyCoupons($basket, $errors, $localeKey);
162 162
 
163
-			$manager->setSession( $basket, $type );
163
+			$manager->setSession($basket, $type);
164 164
 		}
165 165
 
166
-		$session->set( 'aimeos/basket/locale', $localeKey );
166
+		$session->set('aimeos/basket/locale', $localeKey);
167 167
 	}
168 168
 
169 169
 
@@ -175,22 +175,22 @@  discard block
 block discarded – undo
175 175
 	 * @param string $localeKey Unique identifier of the site, language and currency
176 176
 	 * @return array Associative list of errors occured
177 177
 	 */
178
-	protected function copyAddresses( \Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey )
178
+	protected function copyAddresses(\Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey)
179 179
 	{
180
-		foreach( $basket->getAddresses() as $type => $item )
180
+		foreach ($basket->getAddresses() as $type => $item)
181 181
 		{
182 182
 			try
183 183
 			{
184
-				$this->setAddress( $type, $item->toArray() );
185
-				$basket->deleteAddress( $type );
184
+				$this->setAddress($type, $item->toArray());
185
+				$basket->deleteAddress($type);
186 186
 			}
187
-			catch( \Exception $e )
187
+			catch (\Exception $e)
188 188
 			{
189 189
 				$logger = $this->getContext()->getLogger();
190 190
 				$errors['address'][$type] = $e->getMessage();
191 191
 
192 192
 				$str = 'Error migrating address with type "%1$s" in basket to locale "%2$s": %3$s';
193
-				$logger->log( sprintf( $str, $type, $localeKey, $e->getMessage() ), \Aimeos\MW\Logger\Base::INFO );
193
+				$logger->log(sprintf($str, $type, $localeKey, $e->getMessage()), \Aimeos\MW\Logger\Base::INFO);
194 194
 			}
195 195
 		}
196 196
 
@@ -206,22 +206,22 @@  discard block
 block discarded – undo
206 206
 	 * @param string $localeKey Unique identifier of the site, language and currency
207 207
 	 * @return array Associative list of errors occured
208 208
 	 */
209
-	protected function copyCoupons( \Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey )
209
+	protected function copyCoupons(\Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey)
210 210
 	{
211
-		foreach( $basket->getCoupons() as $code => $list )
211
+		foreach ($basket->getCoupons() as $code => $list)
212 212
 		{
213 213
 			try
214 214
 			{
215
-				$this->addCoupon( $code );
216
-				$basket->deleteCoupon( $code, true );
215
+				$this->addCoupon($code);
216
+				$basket->deleteCoupon($code, true);
217 217
 			}
218
-			catch( \Exception $e )
218
+			catch (\Exception $e)
219 219
 			{
220 220
 				$logger = $this->getContext()->getLogger();
221 221
 				$errors['coupon'][$code] = $e->getMessage();
222 222
 
223 223
 				$str = 'Error migrating coupon with code "%1$s" in basket to locale "%2$s": %3$s';
224
-				$logger->log( sprintf( $str, $code, $localeKey, $e->getMessage() ), \Aimeos\MW\Logger\Base::INFO );
224
+				$logger->log(sprintf($str, $code, $localeKey, $e->getMessage()), \Aimeos\MW\Logger\Base::INFO);
225 225
 			}
226 226
 		}
227 227
 
@@ -237,11 +237,11 @@  discard block
 block discarded – undo
237 237
 	 * @param string $localeKey Unique identifier of the site, language and currency
238 238
 	 * @return array Associative list of errors occured
239 239
 	 */
240
-	protected function copyProducts( \Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey )
240
+	protected function copyProducts(\Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors, $localeKey)
241 241
 	{
242
-		foreach( $basket->getProducts() as $pos => $product )
242
+		foreach ($basket->getProducts() as $pos => $product)
243 243
 		{
244
-			if( $product->getFlags() & \Aimeos\MShop\Order\Item\Base\Product\Base::FLAG_IMMUTABLE ) {
244
+			if ($product->getFlags() & \Aimeos\MShop\Order\Item\Base\Product\Base::FLAG_IMMUTABLE) {
245 245
 				continue;
246 246
 			}
247 247
 
@@ -249,9 +249,9 @@  discard block
 block discarded – undo
249 249
 			{
250 250
 				$variantIds = $configIds = $customIds = [];
251 251
 
252
-				foreach( $product->getAttributeItems() as $attrItem )
252
+				foreach ($product->getAttributeItems() as $attrItem)
253 253
 				{
254
-					switch( $attrItem->getType() )
254
+					switch ($attrItem->getType())
255 255
 					{
256 256
 						case 'variant': $variantIds[] = $attrItem->getAttributeId(); break;
257 257
 						case 'config': $configIds[$attrItem->getAttributeId()] = $attrItem->getQuantity(); break;
@@ -264,16 +264,16 @@  discard block
 block discarded – undo
264 264
 					$variantIds, $configIds, [], $customIds
265 265
 				);
266 266
 
267
-				$basket->deleteProduct( $pos );
267
+				$basket->deleteProduct($pos);
268 268
 			}
269
-			catch( \Exception $e )
269
+			catch (\Exception $e)
270 270
 			{
271 271
 				$code = $product->getProductCode();
272 272
 				$logger = $this->getContext()->getLogger();
273 273
 				$errors['product'][$pos] = $e->getMessage();
274 274
 
275 275
 				$str = 'Error migrating product with code "%1$s" in basket to locale "%2$s": %3$s';
276
-				$logger->log( sprintf( $str, $code, $localeKey, $e->getMessage() ), \Aimeos\MW\Logger\Base::INFO );
276
+				$logger->log(sprintf($str, $code, $localeKey, $e->getMessage()), \Aimeos\MW\Logger\Base::INFO);
277 277
 			}
278 278
 		}
279 279
 
@@ -288,24 +288,24 @@  discard block
 block discarded – undo
288 288
 	 * @param array $errors Associative list of previous errors
289 289
 	 * @return array Associative list of errors occured
290 290
 	 */
291
-	protected function copyServices( \Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors )
291
+	protected function copyServices(\Aimeos\MShop\Order\Item\Base\Iface $basket, array $errors)
292 292
 	{
293
-		foreach( $basket->getServices() as $type => $list )
293
+		foreach ($basket->getServices() as $type => $list)
294 294
 		{
295
-			foreach( $list as $item )
295
+			foreach ($list as $item)
296 296
 			{
297 297
 				try
298 298
 				{
299 299
 					$attributes = [];
300 300
 
301
-					foreach( $item->getAttributes() as $attrItem ) {
301
+					foreach ($item->getAttributes() as $attrItem) {
302 302
 						$attributes[$attrItem->getCode()] = $attrItem->getValue();
303 303
 					}
304 304
 
305
-					$this->addService( $type, $item->getServiceId(), $attributes );
306
-					$basket->deleteService( $type );
305
+					$this->addService($type, $item->getServiceId(), $attributes);
306
+					$basket->deleteService($type);
307 307
 				}
308
-				catch( \Exception $e ) { ; } // Don't notify the user as appropriate services can be added automatically
308
+				catch (\Exception $e) {; } // Don't notify the user as appropriate services can be added automatically
309 309
 			}
310 310
 		}
311 311
 
@@ -318,28 +318,28 @@  discard block
 block discarded – undo
318 318
 	 *
319 319
 	 * @param \Aimeos\MShop\Order\Item\Base\Iface $basket Basket object
320 320
 	 */
321
-	protected function createSubscriptions( \Aimeos\MShop\Order\Item\Base\Iface $basket )
321
+	protected function createSubscriptions(\Aimeos\MShop\Order\Item\Base\Iface $basket)
322 322
 	{
323
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'subscription' );
323
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'subscription');
324 324
 
325
-		foreach( $basket->getProducts() as $orderProduct )
325
+		foreach ($basket->getProducts() as $orderProduct)
326 326
 		{
327
-			if( ( $interval = $orderProduct->getAttribute( 'interval', 'config' ) ) !== null )
327
+			if (($interval = $orderProduct->getAttribute('interval', 'config')) !== null)
328 328
 			{
329 329
 				$item = $manager->createItem();
330
-				$item->setOrderBaseId( $basket->getId() );
331
-				$item->setOrderProductId( $orderProduct->getId() );
332
-				$item->setInterval( $interval );
333
-				$item->setStatus( 1 );
334
-
335
-				if( ( $end = $orderProduct->getAttribute( 'intervalend', 'custom' ) ) !== null
336
-					|| ( $end = $orderProduct->getAttribute( 'intervalend', 'config' ) ) !== null
337
-					|| ( $end = $orderProduct->getAttribute( 'intervalend', 'hidden' ) ) !== null
330
+				$item->setOrderBaseId($basket->getId());
331
+				$item->setOrderProductId($orderProduct->getId());
332
+				$item->setInterval($interval);
333
+				$item->setStatus(1);
334
+
335
+				if (($end = $orderProduct->getAttribute('intervalend', 'custom')) !== null
336
+					|| ($end = $orderProduct->getAttribute('intervalend', 'config')) !== null
337
+					|| ($end = $orderProduct->getAttribute('intervalend', 'hidden')) !== null
338 338
 				) {
339
-					$item->setDateEnd( $end );
339
+					$item->setDateEnd($end);
340 340
 				}
341 341
 
342
-				$manager->saveItem( $item, false );
342
+				$manager->saveItem($item, false);
343 343
 			}
344 344
 		}
345 345
 	}
@@ -353,32 +353,32 @@  discard block
 block discarded – undo
353 353
 	 * @return array List of items implementing \Aimeos\MShop\Attribute\Item\Iface
354 354
 	 * @throws \Aimeos\Controller\Frontend\Basket\Exception If the actual attribute number doesn't match the expected one
355 355
 	 */
356
-	protected function getAttributes( array $attributeIds, array $domains = array( 'price', 'text' ) )
356
+	protected function getAttributes(array $attributeIds, array $domains = array('price', 'text'))
357 357
 	{
358
-		if( empty( $attributeIds ) ) {
358
+		if (empty($attributeIds)) {
359 359
 			return [];
360 360
 		}
361 361
 
362
-		$attributeManager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'attribute' );
362
+		$attributeManager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'attribute');
363 363
 
364
-		$search = $attributeManager->createSearch( true );
364
+		$search = $attributeManager->createSearch(true);
365 365
 		$expr = array(
366
-			$search->compare( '==', 'attribute.id', $attributeIds ),
366
+			$search->compare('==', 'attribute.id', $attributeIds),
367 367
 			$search->getConditions(),
368 368
 		);
369
-		$search->setConditions( $search->combine( '&&', $expr ) );
370
-		$search->setSlice( 0, count( $attributeIds ) );
369
+		$search->setConditions($search->combine('&&', $expr));
370
+		$search->setSlice(0, count($attributeIds));
371 371
 
372
-		$attrItems = $attributeManager->searchItems( $search, $domains );
372
+		$attrItems = $attributeManager->searchItems($search, $domains);
373 373
 
374
-		if( count( $attrItems ) !== count( $attributeIds ) )
374
+		if (count($attrItems) !== count($attributeIds))
375 375
 		{
376 376
 			$i18n = $this->getContext()->getI18n();
377
-			$expected = implode( ',', $attributeIds );
378
-			$actual = implode( ',', array_keys( $attrItems ) );
379
-			$msg = $i18n->dt( 'controller/frontend', 'Available attribute IDs "%1$s" do not match the given attribute IDs "%2$s"' );
377
+			$expected = implode(',', $attributeIds);
378
+			$actual = implode(',', array_keys($attrItems));
379
+			$msg = $i18n->dt('controller/frontend', 'Available attribute IDs "%1$s" do not match the given attribute IDs "%2$s"');
380 380
 
381
-			throw new \Aimeos\Controller\Frontend\Basket\Exception( sprintf( $msg, $actual, $expected ) );
381
+			throw new \Aimeos\Controller\Frontend\Basket\Exception(sprintf($msg, $actual, $expected));
382 382
 		}
383 383
 
384 384
 		return $attrItems;
@@ -391,31 +391,31 @@  discard block
 block discarded – undo
391 391
 	 * @param \Aimeos\MShop\Order\Item\Base\Product\Attribute\Item[] $orderAttributes List of order product attribute items
392 392
 	 * @return \Aimeos\MShop\Attribute\Item\Iface[] Associative list of attribute IDs as key and attribute items as values
393 393
 	 */
394
-	protected function getAttributeItems( array $orderAttributes )
394
+	protected function getAttributeItems(array $orderAttributes)
395 395
 	{
396
-		if( empty( $orderAttributes ) ) {
396
+		if (empty($orderAttributes)) {
397 397
 			return [];
398 398
 		}
399 399
 
400
-		$attributeManager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'attribute' );
401
-		$search = $attributeManager->createSearch( true );
400
+		$attributeManager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'attribute');
401
+		$search = $attributeManager->createSearch(true);
402 402
 		$expr = [];
403 403
 
404
-		foreach( $orderAttributes as $item )
404
+		foreach ($orderAttributes as $item)
405 405
 		{
406 406
 			$tmp = array(
407
-				$search->compare( '==', 'attribute.domain', 'product' ),
408
-				$search->compare( '==', 'attribute.code', $item->getValue() ),
409
-				$search->compare( '==', 'attribute.type.domain', 'product' ),
410
-				$search->compare( '==', 'attribute.type.code', $item->getCode() ),
411
-				$search->compare( '>', 'attribute.type.status', 0 ),
407
+				$search->compare('==', 'attribute.domain', 'product'),
408
+				$search->compare('==', 'attribute.code', $item->getValue()),
409
+				$search->compare('==', 'attribute.type.domain', 'product'),
410
+				$search->compare('==', 'attribute.type.code', $item->getCode()),
411
+				$search->compare('>', 'attribute.type.status', 0),
412 412
 				$search->getConditions(),
413 413
 			);
414
-			$expr[] = $search->combine( '&&', $tmp );
414
+			$expr[] = $search->combine('&&', $tmp);
415 415
 		}
416 416
 
417
-		$search->setConditions( $search->combine( '||', $expr ) );
418
-		return $attributeManager->searchItems( $search, array( 'price' ) );
417
+		$search->setConditions($search->combine('||', $expr));
418
+		return $attributeManager->searchItems($search, array('price'));
419 419
 	}
420 420
 
421 421
 
@@ -428,24 +428,24 @@  discard block
 block discarded – undo
428 428
 	 * @param array $quantities Associative list of attribute IDs as keys and their quantities as values
429 429
 	 * @return array List of items implementing \Aimeos\MShop\Order\Item\Product\Attribute\Iface
430 430
 	 */
431
-	protected function getOrderProductAttributes( $type, array $ids, array $values = [], array $quantities = [] )
431
+	protected function getOrderProductAttributes($type, array $ids, array $values = [], array $quantities = [])
432 432
 	{
433
-		if( empty( $ids ) ) {
433
+		if (empty($ids)) {
434 434
 			return [];
435 435
 		}
436 436
 
437 437
 		$list = [];
438
-		$manager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'order/base/product/attribute' );
438
+		$manager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'order/base/product/attribute');
439 439
 
440
-		foreach( $this->getAttributes( $ids ) as $id => $attrItem )
440
+		foreach ($this->getAttributes($ids) as $id => $attrItem)
441 441
 		{
442 442
 			$item = $manager->createItem();
443
-			$item->copyFrom( $attrItem );
444
-			$item->setType( $type );
445
-			$item->setQuantity( isset( $quantities[$id] ) ? $quantities[$id] : 1 );
443
+			$item->copyFrom($attrItem);
444
+			$item->setType($type);
445
+			$item->setQuantity(isset($quantities[$id]) ? $quantities[$id] : 1);
446 446
 
447
-			if( isset( $values[$id] ) ) {
448
-				$item->setValue( $values[$id] );
447
+			if (isset($values[$id])) {
448
+				$item->setValue($values[$id]);
449 449
 			}
450 450
 
451 451
 			$list[] = $item;
@@ -462,23 +462,23 @@  discard block
 block discarded – undo
462 462
 	 * @param string $code Code of the list type
463 463
 	 * @return \Aimeos\MShop\Common\Item\Type\Iface List type item
464 464
 	 */
465
-	protected function getProductListTypeItem( $domain, $code )
465
+	protected function getProductListTypeItem($domain, $code)
466 466
 	{
467 467
 		$context = $this->getContext();
468 468
 
469
-		if( empty( $this->listTypeItems ) )
469
+		if (empty($this->listTypeItems))
470 470
 		{
471
-			$manager = \Aimeos\MShop\Factory::createManager( $context, 'product/lists/type' );
471
+			$manager = \Aimeos\MShop\Factory::createManager($context, 'product/lists/type');
472 472
 
473
-			foreach( $manager->searchItems( $manager->createSearch( true ) ) as $item ) {
474
-				$this->listTypeItems[ $item->getDomain() ][ $item->getCode() ] = $item;
473
+			foreach ($manager->searchItems($manager->createSearch(true)) as $item) {
474
+				$this->listTypeItems[$item->getDomain()][$item->getCode()] = $item;
475 475
 			}
476 476
 		}
477 477
 
478
-		if( !isset( $this->listTypeItems[$domain][$code] ) )
478
+		if (!isset($this->listTypeItems[$domain][$code]))
479 479
 		{
480
-			$msg = $context->getI18n()->dt( 'controller/frontend', 'List type for domain "%1$s" and code "%2$s" not found' );
481
-			throw new \Aimeos\Controller\Frontend\Basket\Exception( sprintf( $msg, $domain, $code ) );
480
+			$msg = $context->getI18n()->dt('controller/frontend', 'List type for domain "%1$s" and code "%2$s" not found');
481
+			throw new \Aimeos\Controller\Frontend\Basket\Exception(sprintf($msg, $domain, $code));
482 482
 		}
483 483
 
484 484
 		return $this->listTypeItems[$domain][$code];
@@ -493,35 +493,35 @@  discard block
 block discarded – undo
493 493
 	 * @param array $domains Names of the domain items that should be fetched too
494 494
 	 * @return array List of products matching the given attributes
495 495
 	 */
496
-	protected function getProductVariants( \Aimeos\MShop\Product\Item\Iface $productItem, array $variantAttributeIds,
497
-			array $domains = array( 'attribute', 'media', 'price', 'text' ) )
496
+	protected function getProductVariants(\Aimeos\MShop\Product\Item\Iface $productItem, array $variantAttributeIds,
497
+			array $domains = array('attribute', 'media', 'price', 'text'))
498 498
 	{
499 499
 		$subProductIds = [];
500
-		foreach( $productItem->getRefItems( 'product', 'default', 'default' ) as $item ) {
500
+		foreach ($productItem->getRefItems('product', 'default', 'default') as $item) {
501 501
 			$subProductIds[] = $item->getId();
502 502
 		}
503 503
 
504
-		if( count( $subProductIds ) === 0 ) {
504
+		if (count($subProductIds) === 0) {
505 505
 			return [];
506 506
 		}
507 507
 
508
-		$productManager = \Aimeos\MShop\Factory::createManager( $this->getContext(), 'product' );
509
-		$search = $productManager->createSearch( true );
508
+		$productManager = \Aimeos\MShop\Factory::createManager($this->getContext(), 'product');
509
+		$search = $productManager->createSearch(true);
510 510
 
511 511
 		$expr = array(
512
-			$search->compare( '==', 'product.id', $subProductIds ),
512
+			$search->compare('==', 'product.id', $subProductIds),
513 513
 			$search->getConditions(),
514 514
 		);
515 515
 
516
-		foreach( $variantAttributeIds as $id )
516
+		foreach ($variantAttributeIds as $id)
517 517
 		{
518
-			$cmpfunc = $search->createFunction( 'product:has', ['attribute', 'variant', (string) $id] );
519
-			$expr[] = $search->compare( '!=', $cmpfunc, null );
518
+			$cmpfunc = $search->createFunction('product:has', ['attribute', 'variant', (string) $id]);
519
+			$expr[] = $search->compare('!=', $cmpfunc, null);
520 520
 		}
521 521
 
522
-		$search->setConditions( $search->combine( '&&', $expr ) );
522
+		$search->setConditions($search->combine('&&', $expr));
523 523
 
524
-		return $productManager->searchItems( $search, $domains );
524
+		return $productManager->searchItems($search, $domains);
525 525
 	}
526 526
 
527 527
 
@@ -533,9 +533,9 @@  discard block
 block discarded – undo
533 533
 	 * @param mixed $default Default value if no value is available for the given name
534 534
 	 * @return mixed Value from the array or default value
535 535
 	 */
536
-	protected function getValue( array $values, $name, $default = null )
536
+	protected function getValue(array $values, $name, $default = null)
537 537
 	{
538
-		if( isset( $values[$name] ) ) {
538
+		if (isset($values[$name])) {
539 539
 			return $values[$name];
540 540
 		}
541 541
 
Please login to merge, or discard this patch.