public function getCoreAndSupportedPlugins()
{
$settings = new \Piwik\Application\Kernel\GlobalSettingsProvider();
$pluginList = new \Piwik\Application\Kernel\PluginList($settings);
$pluginManager = new PluginManager($pluginList);
$disabledPlugins = $pluginList->getCorePluginsDisabledByDefault();
$disabledPlugins[] = 'LoginHttpAuth';
$disabledPlugins[] = 'ExampleVisualization';
$disabledPlugins = array_diff($disabledPlugins, array('DBStats', 'ExampleUI', 'ExampleCommand', 'ExampleSettingsPlugin'));
$plugins = array_filter($pluginManager->readPluginsDirectory(), function ($pluginName) use($disabledPlugins, $pluginManager) {
if (in_array($pluginName, $disabledPlugins)) {
return false;
}
return $pluginManager->isPluginBundledWithCore($pluginName) || $pluginManager->isPluginOfficialAndNotBundledWithCore($pluginName);
});
sort($plugins);
return $plugins;
}