Skip to content

Commit 9d70af2

Browse files
Applied PR suggestions
1 parent 8fd1d0e commit 9d70af2

File tree

1 file changed

+12
-25
lines changed

1 file changed

+12
-25
lines changed

API/TemplateMetadata.php

+12-25
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ class TemplateMetadata
2323
public function formatTemplates($templates)
2424
{
2525
$byCategory = [];
26-
$analyticsCategory = [];
2726
foreach ($templates as $template) {
2827
if (is_array($template)) {
2928
$tagArray = $template;
@@ -32,16 +31,7 @@ public function formatTemplates($templates)
3231
}
3332

3433
$category = $tagArray['category'];
35-
if ($category === Piwik::translate('TagManager_CategoryAnalytics')) {
36-
if (!isset($analyticsCategory['types'])) {
37-
$analyticsCategory = [
38-
'name' => $category,
39-
'types' => []
40-
];
41-
}
42-
$analyticsCategory['types'][] = $tagArray;
43-
continue;
44-
} elseif (!isset($byCategory[$category])) {
34+
if (!isset($byCategory[$category])) {
4535
$byCategory[$category] = [
4636
'name' => $category,
4737
'types' => []
@@ -63,26 +53,23 @@ public function formatTemplates($templates)
6353
return strnatcmp($catA['name'], $catB['name']);
6454
});
6555

66-
$this->sortByOrder($byCategory);
67-
if (!empty($analyticsCategory)) {
68-
$analyticsCategory = [$analyticsCategory];
69-
$this->sortByOrder($analyticsCategory);
70-
71-
return array_merge($analyticsCategory, $byCategory);
72-
}
73-
74-
return $byCategory;
75-
}
76-
77-
private function sortByOrder(&$categories)
78-
{
79-
foreach ($categories as &$category) {
56+
foreach ($byCategory as &$category) {
8057
usort($category['types'], function ($tagA, $tagB) {
8158
if ($tagA['order'] == $tagB['order']) {
8259
return strnatcmp($tagA['name'], $tagB['name']);
8360
}
8461
return $tagA['order'] - $tagB['order'];
8562
});
8663
}
64+
65+
$analyticsCategoryName = Piwik::translate('TagManager_CategoryAnalytics');
66+
$analyticsCategoryIndex = array_search($analyticsCategoryName, array_column($byCategory, 'name'));
67+
if (!empty($byCategory[$analyticsCategoryIndex])) {
68+
$analyticsCategory = $byCategory[$analyticsCategoryIndex];
69+
unset($byCategory[$analyticsCategoryIndex]);
70+
$byCategory = array_merge([$analyticsCategory], $byCategory);
71+
}
72+
73+
return $byCategory;
8774
}
8875
}

0 commit comments

Comments
 (0)