PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.8.2
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.8.2
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 1 year ago UIAssetFetcher 3 months ago UIAssetMerger 5 months ago UIAsset.php 2 years ago UIAssetCacheBuster.php 7 months ago UIAssetCatalog.php 5 months ago UIAssetCatalogSorter.php 2 years ago UIAssetFetcher.php 1 year ago UIAssetMerger.php 1 year ago UIAssetMinifier.php 1 year ago
UIAssetCatalog.php
66 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\AssetManager;
10
11 class UIAssetCatalog
12 {
13 /**
14 * @var UIAsset[]
15 */
16 private $uiAssets = array();
17 /**
18 * @var UIAssetCatalogSorter
19 */
20 private $catalogSorter;
21 /**
22 * @var string[] Absolute file locations
23 */
24 private $existingAssetLocations = array();
25 /**
26 * @param UIAssetCatalogSorter $catalogSorter
27 */
28 public function __construct($catalogSorter)
29 {
30 $this->catalogSorter = $catalogSorter;
31 }
32 /**
33 * @param UIAsset $uiAsset
34 */
35 public function addUIAsset($uiAsset)
36 {
37 $location = $uiAsset->getAbsoluteLocation();
38 if (!$this->assetAlreadyInCatalog($location)) {
39 $this->existingAssetLocations[] = $location;
40 $this->uiAssets[] = $uiAsset;
41 }
42 }
43 /**
44 * @return UIAsset[]
45 */
46 public function getAssets()
47 {
48 return $this->uiAssets;
49 }
50 /**
51 * @return UIAssetCatalog
52 */
53 public function getSortedCatalog()
54 {
55 return $this->catalogSorter->sortUIAssetCatalog($this);
56 }
57 /**
58 * @param string $location
59 * @return boolean
60 */
61 private function assetAlreadyInCatalog($location)
62 {
63 return in_array($location, $this->existingAssetLocations);
64 }
65 }
66