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;
}