private function createPluginsOrThemesView($template, $themesOnly)
{
Piwik::checkUserIsSuperUser();
$view = $this->configureView('@CorePluginsAdmin/' . $template);
$view->updateNonce = Nonce::getNonce(static::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 = \Piwik\Plugins\UsersManager\API::getInstance()->getUsers();
$view->otherUsersCount = count($users) - 1;
$view->themeEnabled = \Piwik\Plugin\Manager::getInstance()->getThemeEnabled()->getPluginName();
$view->pluginNamesHavingSettings = $this->getPluginNamesHavingSettingsForCurrentUser();
$view->isMarketplaceEnabled = CorePluginsAdmin::isMarketplaceEnabled();
$view->isPluginsAdminEnabled = CorePluginsAdmin::isPluginsAdminEnabled();
$view->pluginsHavingUpdate = array();
$view->marketplacePluginNames = array();
if (CorePluginsAdmin::isMarketplaceEnabled()) {
try {
$marketplace = new Marketplace();
$view->marketplacePluginNames = $marketplace->getAvailablePluginNames($themesOnly);
$view->pluginsHavingUpdate = $marketplace->getPluginsHavingUpdate($themesOnly);
} catch (Exception $e) {
// curl exec connection error (ie. server not connected to internet)
}
}
return $view;
}