PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 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.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / vendor / otgs / installer / includes / upgrade / InstallerPlugins.php
woocommerce-multilingual / vendor / otgs / installer / includes / upgrade Last commit date
AutoUpgrade.php 1 month ago IncludeAutoUpgrade.php 3 years ago InstallerPlugins.php 1 month ago class-otgs-installer-upgrade-response.php 1 month ago
InstallerPlugins.php
53 lines
1 <?php
2
3 namespace OTGS\Installer\Upgrade;
4
5 class InstallerPlugins {
6
7 private $installer;
8
9 private $installerPluginFinder;
10
11 private $_filteredInstallerPlugins;
12
13 public function __construct( \WP_Installer $installer, \OTGS_Installer_Plugin_Finder $installerPluginsFinder ) {
14 $this->installer = $installer;
15 $this->installerPluginFinder = $installerPluginsFinder;
16 }
17
18 public function getFilteredInstallerPlugins() {
19 return $this->filteredInstallerPlugins();
20 }
21
22 private function filteredInstallerPlugins() {
23 if ( null === $this->_filteredInstallerPlugins ) {
24 $this->_filteredInstallerPlugins = $this->filterInstallerPlugins();
25 }
26 return $this->_filteredInstallerPlugins;
27 }
28
29 private function filterInstallerPlugins() {
30 $filteredInstallerPlugins = [];
31 $installerPluginsFinder = $this->installerPluginFinder;
32
33 foreach ( $installerPluginsFinder->get_otgs_installed_plugins_by_repository() as $repositoryId => $installedRepositoryPlugins ) {
34 foreach ( $installedRepositoryPlugins as $installedRepositoryPlugin ) {
35 $pluginObj = $installerPluginsFinder->get_plugin( $installedRepositoryPlugin['slug'], $repositoryId );
36 if ( !$pluginObj || $pluginObj->get_external_repo() && $this->installer->plugin_is_registered( $pluginObj->get_external_repo(), $installedRepositoryPlugin['slug'] ) ) {
37 continue;
38 }
39
40 $filteredInstallerPlugins[ $repositoryId ][] = $installedRepositoryPlugin;
41 }
42 }
43
44 return $filteredInstallerPlugins;
45 }
46
47 public function getPluginData( $repositoryId, $pluginId ) {
48 return current( array_filter( $this->filteredInstallerPlugins()[ $repositoryId ], function ( $plugin ) use ( $pluginId ) {
49 return $plugin['id'] === $pluginId;
50 } ) );
51 }
52 }
53