Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions | Protected Member Functions
Sorting Class Reference
Inheritance diagram for Sorting:
AbstractMapper MapperInterface

Public Member Functions

 map (array $data)
 

Protected Member Functions

 _processConfig ($data)
 
 _cmp ($elementA, $elementB)
 
- Protected Member Functions inherited from AbstractMapper
 _hasValue ($key, $target)
 

Detailed Description

@api

Since
100.0.2

Definition at line 16 of file Sorting.php.

Member Function Documentation

◆ _cmp()

_cmp (   $elementA,
  $elementB 
)
protected

Compare elements

Parameters
array$elementA
array$elementB
Returns
int

Definition at line 54 of file Sorting.php.

55  {
56  $sortIndexA = 0;
57  if ($this->_hasValue('sortOrder', $elementA)) {
58  $sortIndexA = (float)$elementA['sortOrder'];
59  }
60  $sortIndexB = 0;
61  if ($this->_hasValue('sortOrder', $elementB)) {
62  $sortIndexB = (float)$elementB['sortOrder'];
63  }
64 
65  if ($sortIndexA == $sortIndexB) {
66  return 0;
67  }
68 
69  return $sortIndexA < $sortIndexB ? -1 : 1;
70  }

◆ _processConfig()

_processConfig (   $data)
protected
Parameters
array$data
Returns
array

Definition at line 36 of file Sorting.php.

37  {
38  foreach ($data as &$item) {
39  if ($this->_hasValue('children', $item)) {
40  $item['children'] = $this->_processConfig($item['children']);
41  }
42  }
43  uasort($data, [$this, '_cmp']);
44  return $data;
45  }

◆ map()

map ( array  $data)

Apply map

Parameters
array$data
Returns
array

Implements MapperInterface.

Definition at line 24 of file Sorting.php.

25  {
26  foreach ($data['config']['system'] as &$element) {
27  $element = $this->_processConfig($element);
28  }
29  return $data;
30  }
$element
Definition: element.phtml:12

The documentation for this class was generated from the following file: