aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern Schiessle <bjoern@schiessle.org>2021-09-08 23:43:17 +0200
committerBjoern Schiessle <bjoern@schiessle.org>2021-10-06 22:17:50 +0200
commit664bd5802f19c8e0768b64a6f66713d95a9aaab5 (patch)
tree97a8cf85eac2db545986387b91ee67cd8e521342
parent9a569ff387f0f74af4b5423c1c1180a1d01fa7bd (diff)
downloadnextcloud-server-664bd5802f19c8e0768b64a6f66713d95a9aaab5.tar.gz
nextcloud-server-664bd5802f19c8e0768b64a6f66713d95a9aaab5.zip
add 'supported'-label to all supported apps, also if they are not downloaded yet
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
-rw-r--r--apps/settings/lib/Controller/AppSettingsController.php5
-rw-r--r--lib/private/legacy/OC_App.php16
2 files changed, 18 insertions, 3 deletions
diff --git a/apps/settings/lib/Controller/AppSettingsController.php b/apps/settings/lib/Controller/AppSettingsController.php
index 78326c2e25a..5ed25ec2e2a 100644
--- a/apps/settings/lib/Controller/AppSettingsController.php
+++ b/apps/settings/lib/Controller/AppSettingsController.php
@@ -204,6 +204,7 @@ class AppSettingsController extends Controller {
}
$apps = $this->getAppsForCategory('');
+ $supportedApps = $appClass->getSupportedApps();
foreach ($apps as $app) {
$app['appstore'] = true;
if (!array_key_exists($app['id'], $this->allApps)) {
@@ -211,6 +212,10 @@ class AppSettingsController extends Controller {
} else {
$this->allApps[$app['id']] = array_merge($app, $this->allApps[$app['id']]);
}
+
+ if (in_array($app['id'], $supportedApps)) {
+ $this->allApps[$app['id']]['level'] = \OC_App::supportedApp;
+ }
}
// add bundle information
diff --git a/lib/private/legacy/OC_App.php b/lib/private/legacy/OC_App.php
index 811703570a2..101523fcfe7 100644
--- a/lib/private/legacy/OC_App.php
+++ b/lib/private/legacy/OC_App.php
@@ -774,6 +774,18 @@ class OC_App {
}
/**
+ * List all supported apps
+ *
+ * @return array
+ */
+ public function getSupportedApps(): array {
+ /** @var \OCP\Support\Subscription\IRegistry $subscriptionRegistry */
+ $subscriptionRegistry = \OC::$server->query(\OCP\Support\Subscription\IRegistry::class);
+ $supportedApps = $subscriptionRegistry->delegateGetSupportedApps();
+ return $supportedApps;
+ }
+
+ /**
* List all apps, this is used in apps.php
*
* @return array
@@ -787,9 +799,7 @@ class OC_App {
$appList = [];
$langCode = \OC::$server->getL10N('core')->getLanguageCode();
$urlGenerator = \OC::$server->getURLGenerator();
- /** @var \OCP\Support\Subscription\IRegistry $subscriptionRegistry */
- $subscriptionRegistry = \OC::$server->query(\OCP\Support\Subscription\IRegistry::class);
- $supportedApps = $subscriptionRegistry->delegateGetSupportedApps();
+ $supportedApps = $this->getSupportedApps();
foreach ($installedApps as $app) {
if (array_search($app, $blacklist) === false) {