Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Marketplace/Controller.php')
-rw-r--r--plugins/Marketplace/Controller.php17
1 files changed, 15 insertions, 2 deletions
diff --git a/plugins/Marketplace/Controller.php b/plugins/Marketplace/Controller.php
index 986ee5cf9a..418c39dc42 100644
--- a/plugins/Marketplace/Controller.php
+++ b/plugins/Marketplace/Controller.php
@@ -271,6 +271,7 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
$view->isPluginsAdminEnabled = CorePluginsAdmin::isPluginsAdminEnabled();
$view->isAutoUpdatePossible = SettingsPiwik::isAutoUpdatePossible();
$view->isAutoUpdateEnabled = SettingsPiwik::isAutoUpdateEnabled();
+ $view->isPluginUploadEnabled = CorePluginsAdmin::isPluginUploadEnabled();
return $view->render();
}
@@ -317,17 +318,27 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
for ($i = 0; $i <= 10; $i++) {
foreach ($paidPlugins as $index => $paidPlugin) {
+ if (empty($paidPlugin)) {
+ continue;
+ }
+
$pluginName = $paidPlugin['name'];
if ($this->pluginManager->isPluginActivated($pluginName)) {
- unset($paidPlugins[$index]);
+ // we do not use unset since it might skip a plugin afterwards when removing index
+ $paidPlugins[$index] = null;
+ continue;
+ }
+
+ if (!$this->pluginManager->isPluginInFilesystem($pluginName)) {
+ $paidPlugins[$index] = null;
continue;
}
if (empty($paidPlugin['require'])
|| !$dependency->hasDependencyToDisabledPlugin($paidPlugin['require'])) {
- unset($paidPlugins[$index]);
+ $paidPlugins[$index] = null;
try {
$this->pluginManager->activatePlugin($pluginName);
@@ -340,6 +351,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
}
}
}
+
+ $paidPlugins = array_filter($paidPlugins);
}
if ($hasErrors) {