private function createPluginsOrThemesView($template, $themesOnly) { Piwik::checkUserHasSuperUserAccess(); $view = $this->configureView('@CorePluginsAdmin/' . $template); $view->updateNonce = Nonce::getNonce(MarketplaceController::UPDATE_NONCE); $view->activateNonce = Nonce::getNonce(static::ACTIVATE_NONCE); $view->uninstallNonce = Nonce::getNonce(static::UNINSTALL_NONCE); $view->deactivateNonce = Nonce::getNonce(static::DEACTIVATE_NONCE); $view->pluginsInfo = $this->getPluginsInfo($themesOnly); $users = Request::processRequest('UsersManager.getUsers'); $view->otherUsersCount = count($users) - 1; $view->themeEnabled = $this->pluginManager->getThemeEnabled()->getPluginName(); $view->pluginNamesHavingSettings = array_keys($this->settingsProvider->getAllSystemSettings()); $view->isMarketplaceEnabled = Marketplace::isMarketplaceEnabled(); $view->isPluginsAdminEnabled = CorePluginsAdmin::isPluginsAdminEnabled(); $view->pluginsHavingUpdate = array(); $view->marketplacePluginNames = array(); if (Marketplace::isMarketplaceEnabled() && $this->marketplacePlugins) { try { $view->marketplacePluginNames = $this->marketplacePlugins->getAvailablePluginNames($themesOnly); $view->pluginsHavingUpdate = $this->marketplacePlugins->getPluginsHavingUpdate(); } catch (Exception $e) { // curl exec connection error (ie. server not connected to internet) } } return $view; }