Implement getAvailableAddons

This commit is contained in:
Art4 2025-05-14 07:52:53 +00:00
parent 0599801b37
commit 8b40d65e6c
2 changed files with 38 additions and 1 deletions

View file

@ -62,7 +62,33 @@ final class AddonManagerHelper implements AddonHelper
*/
public function getAvailableAddons(): array
{
return $this->proxy->getAvailableAddons();
$files = glob($this->getAddonPath() . '/*/');
if (!is_array($files)) {
return [];
}
$addons = [];
foreach ($files as $file) {
if (!is_dir($file)) {
continue;
}
$addonId = basename($file);
$addonInfo = $this->getAddonInfo($addonId);
if (
$this->config->get('system', 'show_unsupported_addons')
|| strtolower($addonInfo->getStatus()) !== 'unsupported'
|| $this->isAddonEnabled($addonId)
) {
$addons[] = $addonId;
}
}
return $addons;
}
/**