PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.0.3
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.0.3
5.13.0 5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / AssetManager / UIAssetCatalog.php
matomo / app / core / AssetManager Last commit date
UIAsset 2 years ago UIAssetFetcher 2 years ago UIAssetMerger 2 years ago UIAsset.php 2 years ago UIAssetCacheBuster.php 2 years ago UIAssetCatalog.php 2 years ago UIAssetCatalogSorter.php 2 years ago UIAssetFetcher.php 2 years ago UIAssetMerger.php 2 years ago UIAssetMinifier.php 2 years ago
UIAssetCatalog.php
67 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 *
9 */
10 namespace Piwik\AssetManager;
11
12 class UIAssetCatalog
13 {
14 /**
15 * @var UIAsset[]
16 */
17 private $uiAssets = array();
18 /**
19 * @var UIAssetCatalogSorter
20 */
21 private $catalogSorter;
22 /**
23 * @var string[] Absolute file locations
24 */
25 private $existingAssetLocations = array();
26 /**
27 * @param UIAssetCatalogSorter $catalogSorter
28 */
29 public function __construct($catalogSorter)
30 {
31 $this->catalogSorter = $catalogSorter;
32 }
33 /**
34 * @param UIAsset $uiAsset
35 */
36 public function addUIAsset($uiAsset)
37 {
38 $location = $uiAsset->getAbsoluteLocation();
39 if (!$this->assetAlreadyInCatalog($location)) {
40 $this->existingAssetLocations[] = $location;
41 $this->uiAssets[] = $uiAsset;
42 }
43 }
44 /**
45 * @return UIAsset[]
46 */
47 public function getAssets()
48 {
49 return $this->uiAssets;
50 }
51 /**
52 * @return UIAssetCatalog
53 */
54 public function getSortedCatalog()
55 {
56 return $this->catalogSorter->sortUIAssetCatalog($this);
57 }
58 /**
59 * @param UIAsset $uiAsset
60 * @return boolean
61 */
62 private function assetAlreadyInCatalog($location)
63 {
64 return in_array($location, $this->existingAssetLocations);
65 }
66 }
67