Completed
Push — master ( 913402...2b342c )
by Mark
16:33
created
code/helpers/FacetHelper.php 4 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -322,7 +322,7 @@  discard block
 block discarded – undo
322 322
 
323 323
 	/**
324 324
 	 * NOTE: this will break if applied to something that's not a SiteTree subclass.
325
-	 * @param DataList|PaginatedList $matches
325
+	 * @param SS_List $matches
326 326
 	 * @param array $facet
327 327
 	 * @param int $typeID
328 328
 	 */
@@ -359,7 +359,7 @@  discard block
 block discarded – undo
359 359
 
360 360
 	/**
361 361
 	 * Builds facets from all attributes present in the data set.
362
-	 * @param DataList|PaginatedList $matches
362
+	 * @param SS_List $matches
363 363
 	 * @return array
364 364
 	 */
365 365
 	protected function buildAllAttributeFacets($matches) {
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
 	 * @param DataObject|string $sing - just a singleton object we can get information off of
60 60
 	 * @return DataList
61 61
 	 */
62
-	public function addFiltersToDataList($list, array $filters, $sing=null) {
62
+	public function addFiltersToDataList($list, array $filters, $sing = null) {
63 63
 		if (!$sing) $sing = singleton($list->dataClass());
64 64
 		if (is_string($sing)) $sing = singleton($sing);
65 65
 
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
 			}
149 149
 
150 150
 			if (empty($facets[$field]['Source'])) $facets[$field]['Source'] = $field;
151
-			if (empty($facets[$field]['Type']))  $facets[$field]['Type']  = ShopSearch::FACET_TYPE_LINK;
151
+			if (empty($facets[$field]['Type']))  $facets[$field]['Type'] = ShopSearch::FACET_TYPE_LINK;
152 152
 
153 153
 			if (empty($facets[$field]['Values'])) {
154 154
 				$facets[$field]['Values'] = array();
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
 	 * @param bool $autoFacetAttributes [optional]
198 198
 	 * @return ArrayList
199 199
 	 */
200
-	public function buildFacets(SS_List $matches, array $facetSpec, $autoFacetAttributes=false) {
200
+	public function buildFacets(SS_List $matches, array $facetSpec, $autoFacetAttributes = false) {
201 201
 		$facets = $this->expandFacetSpec($facetSpec);
202 202
 		if (!$autoFacetAttributes && (empty($facets) || !$matches || !$matches->count())) return new ArrayList();
203 203
 		$fasterMethod = (bool)$this->config()->faster_faceting;
@@ -340,9 +340,9 @@  discard block
 block discarded – undo
340 340
 		$q = $q->setSelect(array())
341 341
 			->selectField('"ProductAttributeValue"."ID"', 'Value')
342 342
 			->selectField('"ProductAttributeValue"."Value"', 'Label')
343
-			->selectField('count(distinct '.$baseTable.'."ID")', 'Count')
343
+			->selectField('count(distinct ' . $baseTable . '."ID")', 'Count')
344 344
 			->selectField('"ProductAttributeValue"."Sort"')
345
-			->addInnerJoin('Product_StaticAttributeValues', $baseTable.'."ID" = "Product_StaticAttributeValues"."ProductID"')
345
+			->addInnerJoin('Product_StaticAttributeValues', $baseTable . '."ID" = "Product_StaticAttributeValues"."ProductID"')
346 346
 			->addInnerJoin('ProductAttributeValue', '"Product_StaticAttributeValues"."ProductAttributeValueID" = "ProductAttributeValue"."ID"')
347 347
 			->addWhere(sprintf("\"ProductAttributeValue\".\"TypeID\" = '%d'", $typeID))
348 348
 			->setOrderBy('"ProductAttributeValue"."Sort"', 'ASC')
@@ -352,7 +352,7 @@  discard block
 block discarded – undo
352 352
 
353 353
 		$facet['Values'] = array();
354 354
 		foreach ($q as $row) {
355
-			$facet['Values'][ $row['Value'] ] = new ArrayData($row);
355
+			$facet['Values'][$row['Value']] = new ArrayData($row);
356 356
 		}
357 357
 	}
358 358
 
@@ -374,11 +374,11 @@  discard block
 block discarded – undo
374 374
 			->selectField('"ProductAttributeType"."Label"', 'TypeLabel')
375 375
 			->selectField('"ProductAttributeValue"."ID"', 'Value')
376 376
 			->selectField('"ProductAttributeValue"."Value"', 'Label')
377
-			->selectField('count(distinct '.$baseTable.'."ID")', 'Count')
377
+			->selectField('count(distinct ' . $baseTable . '."ID")', 'Count')
378 378
 			->selectField('"ProductAttributeValue"."Sort"')
379
-			->addInnerJoin('Product_StaticAttributeTypes', $baseTable.'."ID" = "Product_StaticAttributeTypes"."ProductID"')
379
+			->addInnerJoin('Product_StaticAttributeTypes', $baseTable . '."ID" = "Product_StaticAttributeTypes"."ProductID"')
380 380
 			->addInnerJoin('ProductAttributeType', '"Product_StaticAttributeTypes"."ProductAttributeTypeID" = "ProductAttributeType"."ID"')
381
-			->addInnerJoin('Product_StaticAttributeValues', $baseTable.'."ID" = "Product_StaticAttributeValues"."ProductID"')
381
+			->addInnerJoin('Product_StaticAttributeValues', $baseTable . '."ID" = "Product_StaticAttributeValues"."ProductID"')
382 382
 			->addInnerJoin('ProductAttributeValue', '"Product_StaticAttributeValues"."ProductAttributeValueID" = "ProductAttributeValue"."ID"'
383 383
 			    . ' AND "ProductAttributeValue"."TypeID" = "ProductAttributeType"."ID"')
384 384
 			->setOrderBy(array(
@@ -395,11 +395,11 @@  discard block
 block discarded – undo
395 395
 		$curFacet = null;
396 396
 		foreach ($q as $row) {
397 397
 			if ($curType != $row['TypeID']) {
398
-				if ($curType > 0) $facets['ATT'.$curType] = $curFacet;
398
+				if ($curType > 0) $facets['ATT' . $curType] = $curFacet;
399 399
 				$curType = $row['TypeID'];
400 400
 				$curFacet = array(
401 401
 					'Label'  => $row['TypeLabel'],
402
-					'Source' => 'ATT'.$curType,
402
+					'Source' => 'ATT' . $curType,
403 403
 					'Type'   => ShopSearch::FACET_TYPE_LINK,
404 404
 					'Values' => array(),
405 405
 				);
@@ -407,10 +407,10 @@  discard block
 block discarded – undo
407 407
 
408 408
 			unset($row['TypeID']);
409 409
 			unset($row['TypeLabel']);
410
-			$curFacet['Values'][ $row['Value'] ] = new ArrayData($row);
410
+			$curFacet['Values'][$row['Value']] = new ArrayData($row);
411 411
 		}
412 412
 
413
-		if ($curType > 0) $facets['ATT'.$curType] = $curFacet;
413
+		if ($curType > 0) $facets['ATT' . $curType] = $curFacet;
414 414
 		return $facets;
415 415
 	}
416 416
 
@@ -532,7 +532,7 @@  discard block
 block discarded – undo
532 532
 	 * @param bool      $filterOnlyLeaves [optional]
533 533
 	 * @return bool - true if any of the children are true, false if all children are false
534 534
 	 */
535
-	protected function updateCheckboxFacetState(ArrayList $values, array $filterVals, $filterOnlyLeaves=false) {
535
+	protected function updateCheckboxFacetState(ArrayList $values, array $filterVals, $filterOnlyLeaves = false) {
536 536
 		$out = false;
537 537
 
538 538
 		foreach ($values as $value) {
@@ -576,14 +576,14 @@  discard block
 block discarded – undo
576 576
 
577 577
 					// Look for the most recent parent that matches the beginning of this one
578 578
 					while (count($parentStack) > 0) {
579
-						$curParent = $parentStack[ count($parentStack)-1 ];
579
+						$curParent = $parentStack[count($parentStack) - 1];
580 580
 						if (strpos($value->Label, $curParent->FullLabel) === 0) {
581 581
 							if (!isset($curParent->Children)) $curParent->Children = new ArrayList();
582 582
 
583 583
 							// Modify the name so we only show the last component
584 584
 							$value->FullLabel = $value->Label;
585 585
 							$p = strrpos($value->Label, $facet->HierarchyDivider);
586
-							if ($p > -1) $value->Label = trim( substr($value->Label, $p + 1) );
586
+							if ($p > -1) $value->Label = trim(substr($value->Label, $p + 1));
587 587
 
588 588
 							$curParent->Children->push($value);
589 589
 							break;
Please login to merge, or discard this patch.
Braces   +99 added lines, -33 removed lines patch added patch discarded remove patch
@@ -41,12 +41,18 @@  discard block
 block discarded – undo
41 41
 	 * @return array
42 42
 	 */
43 43
 	public function scrubFilters($filters) {
44
-		if (!is_array($filters)) $filters = array();
44
+		if (!is_array($filters)) {
45
+			$filters = array();
46
+		}
45 47
 
46 48
 		foreach ($filters as $k => $v) {
47
-			if (empty($v)) unset($filters[$k]);
49
+			if (empty($v)) {
50
+				unset($filters[$k]);
51
+			}
48 52
 			// this allows you to send an array as a comma-separated list, which is easier on the query string length
49
-			if (is_string($v) && strpos($v, 'LIST~') === 0) $filters[$k] = explode(',', substr($v, 5));
53
+			if (is_string($v) && strpos($v, 'LIST~') === 0) {
54
+				$filters[$k] = explode(',', substr($v, 5));
55
+			}
50 56
 		}
51 57
 
52 58
 		return $filters;
@@ -60,8 +66,12 @@  discard block
 block discarded – undo
60 66
 	 * @return DataList
61 67
 	 */
62 68
 	public function addFiltersToDataList($list, array $filters, $sing=null) {
63
-		if (!$sing) $sing = singleton($list->dataClass());
64
-		if (is_string($sing)) $sing = singleton($sing);
69
+		if (!$sing) {
70
+			$sing = singleton($list->dataClass());
71
+		}
72
+		if (is_string($sing)) {
73
+			$sing = singleton($sing);
74
+		}
65 75
 
66 76
 		if (!empty($filters)) {
67 77
 			foreach ($filters as $filterField => $filterVal) {
@@ -105,7 +115,9 @@  discard block
 block discarded – undo
105 115
 				// Lists have to be handled a little differently
106 116
 				$f = $rec->getVFIFieldName($filterField) . ':PartialMatch';
107 117
 				if (is_array($filterVal)) {
108
-					foreach ($filterVal as &$val) $val = '|' . $val . '|';
118
+					foreach ($filterVal as &$val) {
119
+						$val = '|' . $val . '|';
120
+					}
109 121
 					return array($f => $filterVal);
110 122
 				} else {
111 123
 					return array($f => '|' . $filterVal . '|');
@@ -137,7 +149,9 @@  discard block
 block discarded – undo
137 149
 	 * @return array
138 150
 	 */
139 151
 	public function expandFacetSpec(array $facetSpec) {
140
-		if (is_null($facetSpec)) return array();
152
+		if (is_null($facetSpec)) {
153
+			return array();
154
+		}
141 155
 		$facets = array();
142 156
 
143 157
 		foreach ($facetSpec as $field => $label) {
@@ -147,14 +161,20 @@  discard block
 block discarded – undo
147 161
 				$facets[$field] = array('Label' => $label);
148 162
 			}
149 163
 
150
-			if (empty($facets[$field]['Source'])) $facets[$field]['Source'] = $field;
151
-			if (empty($facets[$field]['Type']))  $facets[$field]['Type']  = ShopSearch::FACET_TYPE_LINK;
164
+			if (empty($facets[$field]['Source'])) {
165
+				$facets[$field]['Source'] = $field;
166
+			}
167
+			if (empty($facets[$field]['Type'])) {
168
+				$facets[$field]['Type']  = ShopSearch::FACET_TYPE_LINK;
169
+			}
152 170
 
153 171
 			if (empty($facets[$field]['Values'])) {
154 172
 				$facets[$field]['Values'] = array();
155 173
 			} else {
156 174
 				$vals = $facets[$field]['Values'];
157
-				if (is_string($vals)) $vals = eval('return ' . $vals . ';');
175
+				if (is_string($vals)) {
176
+					$vals = eval('return ' . $vals . ';');
177
+				}
158 178
 				$facets[$field]['Values'] = array();
159 179
 				foreach ($vals as $val => $lbl) {
160 180
 					$facets[$field]['Values'][$val] = new ArrayData(array(
@@ -199,7 +219,9 @@  discard block
 block discarded – undo
199 219
 	 */
200 220
 	public function buildFacets(SS_List $matches, array $facetSpec, $autoFacetAttributes=false) {
201 221
 		$facets = $this->expandFacetSpec($facetSpec);
202
-		if (!$autoFacetAttributes && (empty($facets) || !$matches || !$matches->count())) return new ArrayList();
222
+		if (!$autoFacetAttributes && (empty($facets) || !$matches || !$matches->count())) {
223
+			return new ArrayList();
224
+		}
203 225
 		$fasterMethod = (bool)$this->config()->faster_faceting;
204 226
 
205 227
 		// fill them in
@@ -212,8 +234,12 @@  discard block
 block discarded – undo
212 234
 			// NOTE: using this method range and checkbox facets don't get counts
213 235
 			if ($fasterMethod && $facet['Type'] != ShopSearch::FACET_TYPE_LINK) {
214 236
 				if ($facet['Type'] == ShopSearch::FACET_TYPE_RANGE) {
215
-					if (isset($facet['RangeMin'])) $facet['MinValue'] = $facet['RangeMin'];
216
-					if (isset($facet['RangeMax'])) $facet['MaxValue'] = $facet['RangeMax'];
237
+					if (isset($facet['RangeMin'])) {
238
+						$facet['MinValue'] = $facet['RangeMin'];
239
+					}
240
+					if (isset($facet['RangeMax'])) {
241
+						$facet['MaxValue'] = $facet['RangeMax'];
242
+					}
217 243
 				}
218 244
 
219 245
 				continue;
@@ -222,25 +248,37 @@  discard block
 block discarded – undo
222 248
 			foreach ($matches as $rec) {
223 249
 				// If it's a range facet, set up the min/max
224 250
 				if ($facet['Type'] == ShopSearch::FACET_TYPE_RANGE) {
225
-					if (isset($facet['RangeMin'])) $facet['MinValue'] = $facet['RangeMin'];
226
-					if (isset($facet['RangeMax'])) $facet['MaxValue'] = $facet['RangeMax'];
251
+					if (isset($facet['RangeMin'])) {
252
+						$facet['MinValue'] = $facet['RangeMin'];
253
+					}
254
+					if (isset($facet['RangeMax'])) {
255
+						$facet['MaxValue'] = $facet['RangeMax'];
256
+					}
227 257
 				}
228 258
 
229 259
 				// If the field is accessible via normal methods, including
230 260
 				// a user-defined getter, prefer that
231 261
 				$fieldValue = $rec->relObject($field);
232
-				if (is_null($fieldValue) && $rec->hasMethod($meth = "get{$field}")) $fieldValue = $rec->$meth();
262
+				if (is_null($fieldValue) && $rec->hasMethod($meth = "get{$field}")) {
263
+					$fieldValue = $rec->$meth();
264
+				}
233 265
 
234 266
 				// If not, look for a VFI field
235
-				if (!$fieldValue && $rec->hasExtension('VirtualFieldIndex')) $fieldValue = $rec->getVFI($field);
267
+				if (!$fieldValue && $rec->hasExtension('VirtualFieldIndex')) {
268
+					$fieldValue = $rec->getVFI($field);
269
+				}
236 270
 
237 271
 				// If we found something, process it
238 272
 				if (!empty($fieldValue)) {
239 273
 					// normalize so that it's iterable
240
-					if (!is_array($fieldValue) && !$fieldValue instanceof SS_List) $fieldValue = array($fieldValue);
274
+					if (!is_array($fieldValue) && !$fieldValue instanceof SS_List) {
275
+						$fieldValue = array($fieldValue);
276
+					}
241 277
 
242 278
 					foreach ($fieldValue as $obj) {
243
-						if (empty($obj)) continue;
279
+						if (empty($obj)) {
280
+							continue;
281
+						}
244 282
 
245 283
 						// figure out the right label
246 284
 						if (is_object($obj) && $obj->hasMethod('Nice')) {
@@ -311,7 +349,9 @@  discard block
 block discarded – undo
311 349
 		$out = new ArrayList();
312 350
 		$sortValues = self::config()->sort_facet_values;
313 351
 		foreach ($facets as $f) {
314
-			if ($sortValues) ksort($f['Values']);
352
+			if ($sortValues) {
353
+				ksort($f['Values']);
354
+			}
315 355
 			$f['Values'] = new ArrayList($f['Values']);
316 356
 			$out->push(new ArrayData($f));
317 357
 		}
@@ -335,7 +375,9 @@  discard block
 block discarded – undo
335 375
 		}
336 376
 
337 377
 		$baseTable = $q->getFrom();
338
-		if (is_array($baseTable)) $baseTable = reset($baseTable);
378
+		if (is_array($baseTable)) {
379
+			$baseTable = reset($baseTable);
380
+		}
339 381
 
340 382
 		$q = $q->setSelect(array())
341 383
 			->selectField('"ProductAttributeValue"."ID"', 'Value')
@@ -367,7 +409,9 @@  discard block
 block discarded – undo
367 409
 
368 410
 		// this is the easiest way to get SiteTree vs SiteTree_Live
369 411
 		$baseTable = $q->getFrom();
370
-		if (is_array($baseTable)) $baseTable = reset($baseTable);
412
+		if (is_array($baseTable)) {
413
+			$baseTable = reset($baseTable);
414
+		}
371 415
 
372 416
 		$q = $q->setSelect(array())
373 417
 			->selectField('"ProductAttributeType"."ID"', 'TypeID')
@@ -395,7 +439,9 @@  discard block
 block discarded – undo
395 439
 		$curFacet = null;
396 440
 		foreach ($q as $row) {
397 441
 			if ($curType != $row['TypeID']) {
398
-				if ($curType > 0) $facets['ATT'.$curType] = $curFacet;
442
+				if ($curType > 0) {
443
+					$facets['ATT'.$curType] = $curFacet;
444
+				}
399 445
 				$curType = $row['TypeID'];
400 446
 				$curFacet = array(
401 447
 					'Label'  => $row['TypeLabel'],
@@ -410,7 +456,9 @@  discard block
 block discarded – undo
410 456
 			$curFacet['Values'][ $row['Value'] ] = new ArrayData($row);
411 457
 		}
412 458
 
413
-		if ($curType > 0) $facets['ATT'.$curType] = $curFacet;
459
+		if ($curType > 0) {
460
+			$facets['ATT'.$curType] = $curFacet;
461
+		}
414 462
 		return $facets;
415 463
 	}
416 464
 
@@ -432,7 +480,9 @@  discard block
 block discarded – undo
432 480
 			switch ($facet->Type) {
433 481
 				case ShopSearch::FACET_TYPE_RANGE:
434 482
 					$params = array_merge($baseParams, array());
435
-					if (!isset($params[$qs_f])) $params[$qs_f] = array();
483
+					if (!isset($params[$qs_f])) {
484
+						$params[$qs_f] = array();
485
+					}
436 486
 					$params[$qs_f][$facet->Source] = 'RANGEFACETVALUE';
437 487
 					$params[$qs_t] = $facet->Label . ': RANGEFACETLABEL';
438 488
 					$facet->Link = $baseLink . '?' . http_build_query($params);
@@ -453,7 +503,9 @@  discard block
 block discarded – undo
453 503
 						$params = array_merge($baseParams, array());
454 504
 
455 505
 						// add the filter for this value
456
-						if (!isset($params[$qs_f])) $params[$qs_f] = array();
506
+						if (!isset($params[$qs_f])) {
507
+							$params[$qs_f] = array();
508
+						}
457 509
 						if ($facet->Type == ShopSearch::FACET_TYPE_CHECKBOX) {
458 510
 							unset($params[$qs_f][$facet->Source]); // this will be figured out via javascript
459 511
 							$params[$qs_t] = ($value->Active ? 'Remove ' : '') . $facet->Label . ': ' . $value->Label;
@@ -481,7 +533,9 @@  discard block
 block discarded – undo
481 533
 
482 534
 		foreach ($children as $child) {
483 535
 			$out[$child->Value] = $child->Value;
484
-			if (!empty($child->Children)) $out += $this->getRecursiveChildValues($child->Children);
536
+			if (!empty($child->Children)) {
537
+				$out += $this->getRecursiveChildValues($child->Children);
538
+			}
485 539
 		}
486 540
 
487 541
 		return $out;
@@ -507,7 +561,9 @@  discard block
 block discarded – undo
507 561
 					}
508 562
 				} else {
509 563
 					$filterVals = $filters[$facet->Source];
510
-					if (!is_array($filterVals)) $filterVals = array($filterVals);
564
+					if (!is_array($filterVals)) {
565
+						$filterVals = array($filterVals);
566
+					}
511 567
 					$this->updateCheckboxFacetState(
512 568
 						!empty($facet->NestedValues) ? $facet->NestedValues : $facet->Values,
513 569
 						$filterVals,
@@ -541,7 +597,9 @@  discard block
 block discarded – undo
541 597
 					// This wouldn't be normal, but even if it's not a leaf, we want to handle
542 598
 					// the case where a filter might be set for this node. It should still show up correctly.
543 599
 					$value->Active = true;
544
-					foreach ($value->Children as $c) $c->Active = true;
600
+					foreach ($value->Children as $c) {
601
+						$c->Active = true;
602
+					}
545 603
 					// TODO: handle more than one level of recursion here
546 604
 				} else {
547 605
 					$value->Active = $this->updateCheckboxFacetState($value->Children, $filterVals, $filterOnlyLeaves);
@@ -550,7 +608,9 @@  discard block
 block discarded – undo
550 608
 				$value->Active = in_array($value->Value, $filterVals);
551 609
 			}
552 610
 
553
-			if ($value->Active) $out = true;
611
+			if ($value->Active) {
612
+				$out = true;
613
+			}
554 614
 		}
555 615
 
556 616
 		return $out;
@@ -571,19 +631,25 @@  discard block
 block discarded – undo
571 631
 				$parentStack = array();
572 632
 
573 633
 				foreach ($facet->Values as $value) {
574
-					if (empty($value->Label)) continue;
634
+					if (empty($value->Label)) {
635
+						continue;
636
+					}
575 637
 					$value->FullLabel = $value->Label;
576 638
 
577 639
 					// Look for the most recent parent that matches the beginning of this one
578 640
 					while (count($parentStack) > 0) {
579 641
 						$curParent = $parentStack[ count($parentStack)-1 ];
580 642
 						if (strpos($value->Label, $curParent->FullLabel) === 0) {
581
-							if (!isset($curParent->Children)) $curParent->Children = new ArrayList();
643
+							if (!isset($curParent->Children)) {
644
+								$curParent->Children = new ArrayList();
645
+							}
582 646
 
583 647
 							// Modify the name so we only show the last component
584 648
 							$value->FullLabel = $value->Label;
585 649
 							$p = strrpos($value->Label, $facet->HierarchyDivider);
586
-							if ($p > -1) $value->Label = trim( substr($value->Label, $p + 1) );
650
+							if ($p > -1) {
651
+								$value->Label = trim( substr($value->Label, $p + 1) );
652
+							}
587 653
 
588 654
 							$curParent->Children->push($value);
589 655
 							break;
Please login to merge, or discard this patch.
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -380,7 +380,7 @@
 block discarded – undo
380 380
 			->addInnerJoin('ProductAttributeType', '"Product_StaticAttributeTypes"."ProductAttributeTypeID" = "ProductAttributeType"."ID"')
381 381
 			->addInnerJoin('Product_StaticAttributeValues', $baseTable.'."ID" = "Product_StaticAttributeValues"."ProductID"')
382 382
 			->addInnerJoin('ProductAttributeValue', '"Product_StaticAttributeValues"."ProductAttributeValueID" = "ProductAttributeValue"."ID"'
383
-			    . ' AND "ProductAttributeValue"."TypeID" = "ProductAttributeType"."ID"')
383
+				. ' AND "ProductAttributeValue"."TypeID" = "ProductAttributeType"."ID"')
384 384
 			->setOrderBy(array(
385 385
 				'"ProductAttributeType"."Label"' => 'ASC',
386 386
 				'"ProductAttributeValue"."Sort"' => 'ASC',
Please login to merge, or discard this patch.
code/helpers/HasStaticAttributes.php 4 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -49,7 +49,7 @@
 block discarded – undo
49 49
 
50 50
 	/**
51 51
 	 * @param $typeID
52
-	 * @return callable
52
+	 * @return Closure
53 53
 	 */
54 54
 	protected function getValuesClosure($typeID) {
55 55
 		return function() use ($typeID) {
Please login to merge, or discard this patch.
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -1,14 +1,14 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Extension for Product that allows static attributes in the same way
4
- * they're used for variations. I'm separating this out because it will
5
- * probably be useful in other projects.
6
- *
7
- * @author Mark Guinn <[email protected]>
8
- * @date 01.21.2014
9
- * @package Daywind
10
- * @subpackage extensions
11
- */
3
+	 * Extension for Product that allows static attributes in the same way
4
+	 * they're used for variations. I'm separating this out because it will
5
+	 * probably be useful in other projects.
6
+	 *
7
+	 * @author Mark Guinn <[email protected]>
8
+	 * @date 01.21.2014
9
+	 * @package Daywind
10
+	 * @subpackage extensions
11
+	 */
12 12
 class HasStaticAttributes extends DataExtension
13 13
 {
14 14
 	private static $many_many = array(
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -38,8 +38,8 @@  discard block
 block discarded – undo
38 38
 
39 39
 			$newValReq = RequiredFields::create('Value');
40 40
 
41
-			$valuesField = HasStaticAttributes_CheckboxSetField::create('StaticAttributeValues-'.$type->ID, $type->Title, $source());
42
-			$valuesField->setValue( $this->owner->StaticAttributeValues()->filter('TypeID', $type->ID)->getIDList() );
41
+			$valuesField = HasStaticAttributes_CheckboxSetField::create('StaticAttributeValues-' . $type->ID, $type->Title, $source());
42
+			$valuesField->setValue($this->owner->StaticAttributeValues()->filter('TypeID', $type->ID)->getIDList());
43 43
 			$valuesField->useAddNew('ProductAttributeValue', $source, $newValFields, $newValReq);
44 44
 
45 45
 			$fields->addFieldToTab('Root.Attributes', $valuesField);
@@ -141,8 +141,8 @@  discard block
 block discarded – undo
141 141
 		// make a list of id's that should be there
142 142
 		$idList = array();
143 143
 		if (!empty($this->value) && is_array($this->value)) {
144
-			foreach($this->value as $id => $bool) {
145
-				if($bool) {
144
+			foreach ($this->value as $id => $bool) {
145
+				if ($bool) {
146 146
 					$idList[$id] = $id;
147 147
 				}
148 148
 			}
Please login to merge, or discard this patch.
Braces   +21 added lines, -7 removed lines patch added patch discarded remove patch
@@ -70,7 +70,9 @@  discard block
 block discarded – undo
70 70
 		}
71 71
 
72 72
 		foreach ($this->owner->StaticAttributeValues() as $val) {
73
-			if (!isset($list[$val->TypeID])) continue;
73
+			if (!isset($list[$val->TypeID])) {
74
+				continue;
75
+			}
74 76
 			$list[$val->TypeID]->ActiveValues->push($val);
75 77
 		}
76 78
 
@@ -86,7 +88,9 @@  discard block
 block discarded – undo
86 88
 			$defaultAttributes = Config::inst()->get($this->owner->ClassName, 'default_attributes');
87 89
 			if (!empty($defaultAttributes)) {
88 90
 				$types = $this->owner->StaticAttributeTypes();
89
-				foreach ($defaultAttributes as $typeID) $types->add($typeID);
91
+				foreach ($defaultAttributes as $typeID) {
92
+					$types->add($typeID);
93
+				}
90 94
 			}
91 95
 		}
92 96
 	}
@@ -131,11 +135,17 @@  discard block
 block discarded – undo
131 135
 	 */
132 136
 	public function saveInto(DataObjectInterface $record) {
133 137
 		$fieldname  = $this->getFieldName();
134
-		if (empty($fieldname)) return;
138
+		if (empty($fieldname)) {
139
+			return;
140
+		}
135 141
 		$typeID     = $this->getAttributeTypeID();
136
-		if (empty($typeID)) return;
142
+		if (empty($typeID)) {
143
+			return;
144
+		}
137 145
 		$relation   = $record->$fieldname();
138
-		if (!$relation) return;
146
+		if (!$relation) {
147
+			return;
148
+		}
139 149
 		$relation   = $relation->filter('TypeID', $typeID);
140 150
 
141 151
 		// make a list of id's that should be there
@@ -160,10 +170,14 @@  discard block
 block discarded – undo
160 170
 		}
161 171
 
162 172
 		// add
163
-		foreach ($idList as $id) $relation->add($id);
173
+		foreach ($idList as $id) {
174
+			$relation->add($id);
175
+		}
164 176
 
165 177
 		// remove
166
-		foreach ($toDelete as $id) $relation->removeByID($id);
178
+		foreach ($toDelete as $id) {
179
+			$relation->removeByID($id);
180
+		}
167 181
 	}
168 182
 
169 183
 
Please login to merge, or discard this patch.
code/helpers/VirtualFieldIndex.php 4 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -214,7 +214,7 @@
 block discarded – undo
214 214
 	}
215 215
 
216 216
 	/**
217
-	 * @param $name
217
+	 * @param string $name
218 218
 	 * @return string
219 219
 	 */
220 220
 	public function getVFIFieldName($name) {
Please login to merge, or discard this patch.
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -57,14 +57,14 @@
 block discarded – undo
57 57
 
58 58
 	public static $disable_building = false;
59 59
 
60
-    /**
61
-     * @return array
62
-     */
63
-    public static function get_classes_with_vfi() {
64
-        $vfi_def = Config::inst()->get('VirtualFieldIndex', 'vfi_spec');
65
-        if (!$vfi_def || !is_array($vfi_def)) return array();
66
-        return array_keys($vfi_def);
67
-    }
60
+	/**
61
+	 * @return array
62
+	 */
63
+	public static function get_classes_with_vfi() {
64
+		$vfi_def = Config::inst()->get('VirtualFieldIndex', 'vfi_spec');
65
+		if (!$vfi_def || !is_array($vfi_def)) return array();
66
+		return array_keys($vfi_def);
67
+	}
68 68
 
69 69
 	/**
70 70
 	 * Define extra db fields and indexes.
Please login to merge, or discard this patch.
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -143,7 +143,7 @@  discard block
 block discarded – undo
143 143
 	 *
144 144
 	 * @param string $class [optional] - if not given all indexes will be rebuilt
145 145
 	 */
146
-	public static function build($class='') {
146
+	public static function build($class = '') {
147 147
 		if ($class) {
148 148
 			$list   = DataObject::get($class);
149 149
 			$count  = $list->count();
@@ -168,12 +168,12 @@  discard block
 block discarded – undo
168 168
 			$val    = $this->getVFI($field, true);
169 169
 
170 170
 			if ($spec['Type'] == self::TYPE_LIST) {
171
-				if (is_object($val)) $val = $val->toArray();    // this would be an ArrayList or DataList
172
-				if (!is_array($val)) $val = array($val);        // this would be a scalar value
171
+				if (is_object($val)) $val = $val->toArray(); // this would be an ArrayList or DataList
172
+				if (!is_array($val)) $val = array($val); // this would be a scalar value
173 173
 				$val = self::encode_list($val);
174 174
 			} else {
175
-				if (is_array($val))  $val = (string)$val[0];    // if they give us an array, just take the first value
176
-				if (is_object($val)) $val = (string)$val->first();  // if a SS_List, take the first as well
175
+				if (is_array($val))  $val = (string)$val[0]; // if they give us an array, just take the first value
176
+				if (is_object($val)) $val = (string)$val->first(); // if a SS_List, take the first as well
177 177
 			}
178 178
 
179 179
 			if (Config::inst()->get('VirtualFieldIndex', 'fast_writes_enabled')) {
@@ -242,7 +242,7 @@  discard block
 block discarded – undo
242 242
 	 * @param bool   $forceIDs [optional] - if true, it will return an ID even if the norm is to return a DataObject
243 243
 	 * @return string|array|SS_List
244 244
 	 */
245
-	public function getVFI($field, $fromSource=false, $forceIDs=false) {
245
+	public function getVFI($field, $fromSource = false, $forceIDs = false) {
246 246
 		$spec = $this->getVFISpec($field);
247 247
 		if (!$spec) return null;
248 248
 		if ($fromSource) {
@@ -306,11 +306,11 @@  discard block
 block discarded – undo
306 306
 	 * @param bool   $forceIDs [optional] - if true encoded objects will not be returned as objects but as id's
307 307
 	 * @return array
308 308
 	 */
309
-	protected static function decode_list($val, $forceIDs=false) {
309
+	protected static function decode_list($val, $forceIDs = false) {
310 310
 		if ($val[0] == '>') {
311 311
 			$firstBar = strpos($val, '|');
312 312
 			if ($firstBar < 3) return array();
313
-			$className = substr($val, 1, $firstBar-1);
313
+			$className = substr($val, 1, $firstBar - 1);
314 314
 			$ids = explode('|', trim(substr($val, $firstBar), '|'));
315 315
 			return $forceIDs ? $ids : DataObject::get($className)->filter('ID', $ids)->toArray();
316 316
 		} else {
@@ -345,7 +345,7 @@  discard block
 block discarded – undo
345 345
 					// Select db object
346 346
 					$component = $dbObject;
347 347
 				} else {
348
-					user_error("$relation is not a relation/field on ".get_class($component), E_USER_ERROR);
348
+					user_error("$relation is not a relation/field on " . get_class($component), E_USER_ERROR);
349 349
 				}
350 350
 			}
351 351
 		}
Please login to merge, or discard this patch.
Braces   +49 added lines, -15 removed lines patch added patch discarded remove patch
@@ -62,7 +62,9 @@  discard block
 block discarded – undo
62 62
      */
63 63
     public static function get_classes_with_vfi() {
64 64
         $vfi_def = Config::inst()->get('VirtualFieldIndex', 'vfi_spec');
65
-        if (!$vfi_def || !is_array($vfi_def)) return array();
65
+        if (!$vfi_def || !is_array($vfi_def)) {
66
+        	return array();
67
+        }
66 68
         return array_keys($vfi_def);
67 69
     }
68 70
 
@@ -75,7 +77,9 @@  discard block
 block discarded – undo
75 77
 	 */
76 78
 	public static function get_extra_config($class, $extension, $args) {
77 79
 		$vfi_def = self::get_vfi_spec($class);
78
-		if (!$vfi_def || !is_array($vfi_def)) return array();
80
+		if (!$vfi_def || !is_array($vfi_def)) {
81
+			return array();
82
+		}
79 83
 
80 84
 		$out = array(
81 85
 			'db'        => array(),
@@ -99,7 +103,9 @@  discard block
 block discarded – undo
99 103
 	 */
100 104
 	public static function get_vfi_spec($class) {
101 105
 		$vfi_master = Config::inst()->get('VirtualFieldIndex', 'vfi_spec');
102
-		if (!$vfi_master || !is_array($vfi_master)) return array();
106
+		if (!$vfi_master || !is_array($vfi_master)) {
107
+			return array();
108
+		}
103 109
 
104 110
 		// merge in all the vfi's from ancestors as well
105 111
 		$vfi_def = array();
@@ -109,7 +115,9 @@  discard block
 block discarded – undo
109 115
 				$vfi_def = $vfi_master[$c] + $vfi_def;
110 116
 			}
111 117
 		}
112
-		if (empty($vfi_def)) return array();
118
+		if (empty($vfi_def)) {
119
+			return array();
120
+		}
113 121
 
114 122
 		// convert shorthand to longhand
115 123
 		foreach ($vfi_def as $k => $v) {
@@ -129,8 +137,12 @@  discard block
 block discarded – undo
129 137
 					'Source'    => $v,
130 138
 				);
131 139
 			} else {
132
-				if (!isset($v['Type'])) $vfi_def[$k]['Type'] = is_array($v['Source']) ? self::TYPE_LIST : self::TYPE_SIMPLE;
133
-				if (!isset($v['DependsOn'])) $vfi_def[$k]['DependsOn'] = self::DEPENDS_ALL;
140
+				if (!isset($v['Type'])) {
141
+					$vfi_def[$k]['Type'] = is_array($v['Source']) ? self::TYPE_LIST : self::TYPE_SIMPLE;
142
+				}
143
+				if (!isset($v['DependsOn'])) {
144
+					$vfi_def[$k]['DependsOn'] = self::DEPENDS_ALL;
145
+				}
134 146
 			}
135 147
 		}
136 148
 
@@ -150,10 +162,14 @@  discard block
 block discarded – undo
150 162
 			for ($i = 0; $i < $count; $i += 10) {
151 163
 				$chunk = $list->limit(10, $i);
152 164
 //				if (Controller::curr() instanceof TaskRunner) echo "Processing VFI #$i...\n";
153
-				foreach ($chunk as $rec) $rec->rebuildVFI();
165
+				foreach ($chunk as $rec) {
166
+					$rec->rebuildVFI();
167
+				}
154 168
 			}
155 169
 		} else {
156
-			foreach (self::get_classes_with_vfi() as $c) self::build($c);
170
+			foreach (self::get_classes_with_vfi() as $c) {
171
+				self::build($c);
172
+			}
157 173
 		}
158 174
 	}
159 175
 
@@ -168,12 +184,24 @@  discard block
 block discarded – undo
168 184
 			$val    = $this->getVFI($field, true);
169 185
 
170 186
 			if ($spec['Type'] == self::TYPE_LIST) {
171
-				if (is_object($val)) $val = $val->toArray();    // this would be an ArrayList or DataList
172
-				if (!is_array($val)) $val = array($val);        // this would be a scalar value
187
+				if (is_object($val)) {
188
+					$val = $val->toArray();
189
+				}
190
+				// this would be an ArrayList or DataList
191
+				if (!is_array($val)) {
192
+					$val = array($val);
193
+				}
194
+				// this would be a scalar value
173 195
 				$val = self::encode_list($val);
174 196
 			} else {
175
-				if (is_array($val))  $val = (string)$val[0];    // if they give us an array, just take the first value
176
-				if (is_object($val)) $val = (string)$val->first();  // if a SS_List, take the first as well
197
+				if (is_array($val)) {
198
+					$val = (string)$val[0];
199
+				}
200
+				// if they give us an array, just take the first value
201
+				if (is_object($val)) {
202
+					$val = (string)$val->first();
203
+				}
204
+				// if a SS_List, take the first as well
177 205
 			}
178 206
 
179 207
 			if (Config::inst()->get('VirtualFieldIndex', 'fast_writes_enabled')) {
@@ -244,7 +272,9 @@  discard block
 block discarded – undo
244 272
 	 */
245 273
 	public function getVFI($field, $fromSource=false, $forceIDs=false) {
246 274
 		$spec = $this->getVFISpec($field);
247
-		if (!$spec) return null;
275
+		if (!$spec) {
276
+			return null;
277
+		}
248 278
 		if ($fromSource) {
249 279
 			if (is_array($spec['Source'])) {
250 280
 				$out = array();
@@ -291,7 +321,9 @@  discard block
 block discarded – undo
291 321
 		// If we've got objects, encode them a little differently
292 322
 		if (count($list) > 0 && is_object($list[0])) {
293 323
 			$ids = array();
294
-			foreach ($list as $rec) $ids[] = $rec->ID;
324
+			foreach ($list as $rec) {
325
+				$ids[] = $rec->ID;
326
+			}
295 327
 			$val = '>' . $list[0]->ClassName . '|' . implode('|', $ids) . '|';
296 328
 		} else {
297 329
 			$val = '|' . implode('|', $list) . '|';
@@ -309,7 +341,9 @@  discard block
 block discarded – undo
309 341
 	protected static function decode_list($val, $forceIDs=false) {
310 342
 		if ($val[0] == '>') {
311 343
 			$firstBar = strpos($val, '|');
312
-			if ($firstBar < 3) return array();
344
+			if ($firstBar < 3) {
345
+				return array();
346
+			}
313 347
 			$className = substr($val, 1, $firstBar-1);
314 348
 			$ids = explode('|', trim(substr($val, $firstBar), '|'));
315 349
 			return $forceIDs ? $ids : DataObject::get($className)->filter('ID', $ids)->toArray();
Please login to merge, or discard this patch.
code/ShopSearch.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -248,7 +248,7 @@
 block discarded – undo
248 248
 
249 249
 	/**
250 250
 	 * @param string $str
251
-	 * @return SS_Query
251
+	 * @return SQLQuery
252 252
 	 */
253 253
 	public function getSuggestQuery($str='') {
254 254
 		$hasResults = 'CASE WHEN max("SearchLog"."NumResults") > 0 THEN 1 ELSE 0 END';
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -171,12 +171,12 @@  discard block
 block discarded – undo
171 171
 	 * @param int $limit [optional]
172 172
 	 * @return ArrayData
173 173
 	 */
174
-	public function search(array $vars, $logSearch=true, $useFacets=true, $start=-1, $limit=-1) {
174
+	public function search(array $vars, $logSearch = true, $useFacets = true, $start = -1, $limit = -1) {
175 175
 		$qs_q   = $this->config()->get('qs_query');
176 176
 		$qs_f   = $this->config()->get('qs_filters');
177 177
 		$qs_ps  = $this->config()->get('qs_parent_search');
178 178
 		$qs_t   = $this->config()->get('qs_title');
179
-		$qs_sort= $this->config()->get('qs_sort');
179
+		$qs_sort = $this->config()->get('qs_sort');
180 180
 		if ($limit < 0) $limit  = $this->config()->get('page_size');
181 181
 		if ($start < 0) $start  = !empty($vars['start']) ? (int)$vars['start'] : 0; // as far as i can see, fulltextsearch hard codes 'start'
182 182
 		$facets = $useFacets ? $this->config()->get('facets') : array();
@@ -187,7 +187,7 @@  discard block
 block discarded – undo
187 187
 		$sortOptions = $this->config()->get('sort_options');
188 188
 		$sort        = !empty($vars[$qs_sort]) ? $vars[$qs_sort] : '';
189 189
 		if (!isset($sortOptions[$sort])) {
190
-			$sort    = current(array_keys($sortOptions));
190
+			$sort = current(array_keys($sortOptions));
191 191
 		}
192 192
 
193 193
 		// figure out and scrub the filters
@@ -198,7 +198,7 @@  discard block
 block discarded – undo
198 198
 		if ($keywordRegex = $this->config()->get('keyword_filter_regex')) {
199 199
 			$keywords = preg_replace($keywordRegex, '', $keywords);
200 200
 		}
201
-		$results  = self::adapter()->searchFromVars($keywords, $filters, $facets, $start, $limit, $sort);
201
+		$results = self::adapter()->searchFromVars($keywords, $filters, $facets, $start, $limit, $sort);
202 202
 
203 203
 		// massage the results a bit
204 204
 		if (!empty($keywords) && !$results->hasValue('Query')) $results->Query = $keywords;
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
 	 * @param string $str
251 251
 	 * @return SS_Query
252 252
 	 */
253
-	public function getSuggestQuery($str='') {
253
+	public function getSuggestQuery($str = '') {
254 254
 		$hasResults = 'CASE WHEN max("SearchLog"."NumResults") > 0 THEN 1 ELSE 0 END';
255 255
 		$searchCount = 'count(distinct "SearchLog"."ID")';
256 256
 		$q = new SQLQuery();
@@ -281,7 +281,7 @@  discard block
 block discarded – undo
281 281
 	 * @param string $str
282 282
 	 * @return array
283 283
 	 */
284
-	public function suggest($str='') {
284
+	public function suggest($str = '') {
285 285
 		$adapter = self::adapter();
286 286
 		if ($adapter->hasMethod('suggest')) {
287 287
 			return $adapter->suggest($str);
@@ -327,7 +327,7 @@  discard block
 block discarded – undo
327 327
 				? $results['products']->getTotalItems()
328 328
 				: $results['products']->count();
329 329
 
330
-			$products   = array();
330
+			$products = array();
331 331
 			foreach ($results['products'] as $prod) {
332 332
 				if (!$prod || !$prod->exists()) continue;
333 333
 				$img = $prod->hasMethod('ProductImage') ? $prod->ProductImage() : $prod->Image();
Please login to merge, or discard this patch.
Braces   +25 added lines, -8 removed lines patch added patch discarded remove patch
@@ -177,11 +177,20 @@  discard block
 block discarded – undo
177 177
 		$qs_ps  = $this->config()->get('qs_parent_search');
178 178
 		$qs_t   = $this->config()->get('qs_title');
179 179
 		$qs_sort= $this->config()->get('qs_sort');
180
-		if ($limit < 0) $limit  = $this->config()->get('page_size');
181
-		if ($start < 0) $start  = !empty($vars['start']) ? (int)$vars['start'] : 0; // as far as i can see, fulltextsearch hard codes 'start'
180
+		if ($limit < 0) {
181
+			$limit  = $this->config()->get('page_size');
182
+		}
183
+		if ($start < 0) {
184
+			$start  = !empty($vars['start']) ? (int)$vars['start'] : 0;
185
+		}
186
+		// as far as i can see, fulltextsearch hard codes 'start'
182 187
 		$facets = $useFacets ? $this->config()->get('facets') : array();
183
-		if (!is_array($facets)) $facets = array();
184
-		if (empty($limit)) $limit = -1;
188
+		if (!is_array($facets)) {
189
+			$facets = array();
190
+		}
191
+		if (empty($limit)) {
192
+			$limit = -1;
193
+		}
185 194
 
186 195
 		// figure out and scrub the sort
187 196
 		$sortOptions = $this->config()->get('sort_options');
@@ -201,9 +210,15 @@  discard block
 block discarded – undo
201 210
 		$results  = self::adapter()->searchFromVars($keywords, $filters, $facets, $start, $limit, $sort);
202 211
 
203 212
 		// massage the results a bit
204
-		if (!empty($keywords) && !$results->hasValue('Query')) $results->Query = $keywords;
205
-		if (!empty($filters) && !$results->hasValue('Filters')) $results->Filters = new ArrayData($filters);
206
-		if (!$results->hasValue('Sort')) $results->Sort = $sort;
213
+		if (!empty($keywords) && !$results->hasValue('Query')) {
214
+			$results->Query = $keywords;
215
+		}
216
+		if (!empty($filters) && !$results->hasValue('Filters')) {
217
+			$results->Filters = new ArrayData($filters);
218
+		}
219
+		if (!$results->hasValue('Sort')) {
220
+			$results->Sort = $sort;
221
+		}
207 222
 		if (!$results->hasValue('TotalMatches')) {
208 223
 			$results->TotalMatches = $results->Matches->hasMethod('getTotalItems')
209 224
 				? $results->Matches->getTotalItems()
@@ -329,7 +344,9 @@  discard block
 block discarded – undo
329 344
 
330 345
 			$products   = array();
331 346
 			foreach ($results['products'] as $prod) {
332
-				if (!$prod || !$prod->exists()) continue;
347
+				if (!$prod || !$prod->exists()) {
348
+					continue;
349
+				}
333 350
 				$img = $prod->hasMethod('ProductImage') ? $prod->ProductImage() : $prod->Image();
334 351
 				$thumb = ($img && $img->exists()) ? $img->getThumbnail() : null;
335 352
 
Please login to merge, or discard this patch.
code/ShopSearchControllerExtension.php 2 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -20,7 +20,7 @@
 block discarded – undo
20 20
 
21 21
 	/**
22 22
 	 * @param SS_HTTPRequest $req
23
-	 * @return string
23
+	 * @return SS_HTTPResponse
24 24
 	 */
25 25
 	public function search_suggest(SS_HTTPRequest $req) {
26 26
 		/** @var SS_HTTPResponse $response */
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -30,7 +30,7 @@  discard block
 block discarded – undo
30 30
 		// convert the search results into usable json for search-as-you-type
31 31
 		if (ShopSearch::config()->search_as_you_type_enabled) {
32 32
 			$searchVars = $req->requestVars();
33
-			$searchVars[ ShopSearch::config()->qs_query ] = $searchVars['term'];
33
+			$searchVars[ShopSearch::config()->qs_query] = $searchVars['term'];
34 34
 			unset($searchVars['term']);
35 35
 			$results = ShopSearch::inst()->suggestWithResults($searchVars);
36 36
 		} else {
@@ -56,7 +56,7 @@  discard block
 block discarded – undo
56 56
 	 */
57 57
 	public function onAfterInit() {
58 58
 		$req = $this->owner->getRequest();
59
-		$src = $req->requestVar( Config::inst()->get('ShopSearch', 'qs_source') );
59
+		$src = $req->requestVar(Config::inst()->get('ShopSearch', 'qs_source'));
60 60
 		if ($src) {
61 61
 			$qs_q   = Config::inst()->get('ShopSearch', 'qs_query');
62 62
 			$qs_f   = Config::inst()->get('ShopSearch', 'qs_filters');
Please login to merge, or discard this patch.
code/ShopSearchAdapter.php 2 patches
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -1,11 +1,11 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Interface for shop search drivers.
4
- *
5
- * @author Mark Guinn <[email protected]>
6
- * @date 09.03.2013
7
- * @package shop_search
8
- */
3
+	 * Interface for shop search drivers.
4
+	 *
5
+	 * @author Mark Guinn <[email protected]>
6
+	 * @date 09.03.2013
7
+	 * @package shop_search
8
+	 */
9 9
 interface ShopSearchAdapter
10 10
 {
11 11
 	/**
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -17,5 +17,5 @@
 block discarded – undo
17 17
 	 * @param string $sort [optional]
18 18
 	 * @return ArrayData - must contain at least 'Matches' with an list of data objects that match the search
19 19
 	 */
20
-	function searchFromVars($keywords, array $filters=array(), array $facetSpec=array(), $start=-1, $limit=-1, $sort='');
20
+	function searchFromVars($keywords, array $filters = array(), array $facetSpec = array(), $start = -1, $limit = -1, $sort = '');
21 21
 }
Please login to merge, or discard this patch.
code/ShopSearchAjax.php 1 patch
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -17,7 +17,9 @@
 block discarded – undo
17 17
 	 */
18 18
 	public function updateSearchResultsResponse(&$request, &$response, $results, $data) {
19 19
 		if ($request->isAjax() && $this->owner->hasExtension('AjaxControllerExtension')) {
20
-			if (!$response) $response = $this->owner->getAjaxResponse();
20
+			if (!$response) {
21
+				$response = $this->owner->getAjaxResponse();
22
+			}
21 23
 			$response->addRenderContext('RESULTS', $results);
22 24
 			$response->pushRegion('SearchResults', $results);
23 25
 			$response->pushRegion('SearchHeader', $results);
Please login to merge, or discard this patch.
code/ShopSearchForm.php 3 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -38,7 +38,7 @@
 block discarded – undo
38 38
 
39 39
 			$emptyString = self::config()->category_empty_string;
40 40
 			if ($emptyString !== 'NONE') {
41
-				$catField->setEmptyString(_t('ShopSearch.'.$emptyString, $emptyString));
41
+				$catField->setEmptyString(_t('ShopSearch.' . $emptyString, $emptyString));
42 42
 			}
43 43
 
44 44
 			$fields->push($catField);
Please login to merge, or discard this patch.
Braces   +6 added lines, -2 removed lines patch added patch discarded remove patch
@@ -29,7 +29,9 @@  discard block
 block discarded – undo
29 29
 	function __construct($controller, $method, $suggestURL = '') {
30 30
 		$searchField = TextField::create('q', '');
31 31
 		$searchField->setAttribute('placeholder', _t('ShopSearch.SEARCH', 'Search'));
32
-		if ($suggestURL) $searchField->setAttribute('data-suggest-url', $suggestURL);
32
+		if ($suggestURL) {
33
+			$searchField->setAttribute('data-suggest-url', $suggestURL);
34
+		}
33 35
 
34 36
 		$fields = FieldList::create($searchField);
35 37
 		if (!self::config()->disable_category_dropdown) {
@@ -48,7 +50,9 @@  discard block
 block discarded – undo
48 50
 
49 51
 		$this->setFormMethod('GET');
50 52
 		$this->disableSecurityToken();
51
-		if ($c = self::config()->css_classes) $this->addExtraClass($c);
53
+		if ($c = self::config()->css_classes) {
54
+			$this->addExtraClass($c);
55
+		}
52 56
 
53 57
 		Requirements::css(SHOP_SEARCH_FOLDER . '/css/ShopSearch.css');
54 58
 
Please login to merge, or discard this patch.
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -1,11 +1,11 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Form object for shop search.
4
- *
5
- * @author Mark Guinn <[email protected]>
6
- * @date 09.23.2013
7
- * @package shop_search
8
- */
3
+	 * Form object for shop search.
4
+	 *
5
+	 * @author Mark Guinn <[email protected]>
6
+	 * @date 09.23.2013
7
+	 * @package shop_search
8
+	 */
9 9
 class ShopSearchForm extends Form
10 10
 {
11 11
 	/** @var bool - setting this to true will remove the category dropdwon from the form */
Please login to merge, or discard this patch.
code/adapters/ShopSearchMysql.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -18,7 +18,7 @@  discard block
 block discarded – undo
18 18
 	 * @param string $sort [optional]
19 19
 	 * @return ArrayData
20 20
 	 */
21
-	function searchFromVars($keywords, array $filters=array(), array $facetSpec=array(), $start=-1, $limit=-1, $sort='') {
21
+	function searchFromVars($keywords, array $filters = array(), array $facetSpec = array(), $start = -1, $limit = -1, $sort = '') {
22 22
 		$searchable = ShopSearch::get_searchable_classes();
23 23
 		$matches = new ArrayList;
24 24
 
@@ -32,13 +32,13 @@  discard block
 block discarded – undo
32 32
 			$filter = array();
33 33
 
34 34
 			// Use parametrized query if SilverStripe >= 3.2
35
-			if(SHOP_SEARCH_IS_SS32){
36
-				foreach($keywordFields as $indexFields){
35
+			if (SHOP_SEARCH_IS_SS32) {
36
+				foreach ($keywordFields as $indexFields) {
37 37
 					$filter[] = array("MATCH ($indexFields) AGAINST (?)" => $keywords);
38 38
 				}
39 39
 				$list = $list->whereAny($filter);
40 40
 			} else {
41
-				foreach($keywordFields as $indexFields){
41
+				foreach ($keywordFields as $indexFields) {
42 42
 					$filter[] = sprintf("MATCH ($indexFields) AGAINST ('%s')", Convert::raw2sql($keywords));
43 43
 				}
44 44
 				// join all the filters with an "OR" statement
@@ -78,7 +78,7 @@  discard block
 block discarded – undo
78 78
 			}
79 79
 		}
80 80
 
81
-		if(count($indexList) === 0){
81
+		if (count($indexList) === 0) {
82 82
 			throw new Exception("Class $className does not appear to have any fulltext indexes");
83 83
 		}
84 84
 
Please login to merge, or discard this patch.
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -1,12 +1,12 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Adapter that will use MySQL's full text search features.
4
- *
5
- * @author Mark Guinn <[email protected]>
6
- * @date 11.13.2013
7
- * @package shop_search
8
- * @subpackage adapters
9
- */
3
+	 * Adapter that will use MySQL's full text search features.
4
+	 *
5
+	 * @author Mark Guinn <[email protected]>
6
+	 * @date 11.13.2013
7
+	 * @package shop_search
8
+	 * @subpackage adapters
9
+	 */
10 10
 class ShopSearchMysql extends Object implements ShopSearchAdapter
11 11
 {
12 12
 	/**
Please login to merge, or discard this patch.