diff options
author | Robin Appelman <icewind@owncloud.com> | 2013-11-25 17:34:16 +0100 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2013-11-25 17:34:16 +0100 |
commit | abe63bd329e1180173e249f6edbe440a289d809f (patch) | |
tree | 7735ed6172b572fcee0433b86268d2aa66f913bd /core/command | |
parent | fc1d897ea5d0b6f702f3c649637f5a83693d1ac3 (diff) | |
download | nextcloud-server-abe63bd329e1180173e249f6edbe440a289d809f.tar.gz nextcloud-server-abe63bd329e1180173e249f6edbe440a289d809f.zip |
Add occ command to list all apps
Diffstat (limited to 'core/command')
-rw-r--r-- | core/command/app/listapps.php | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/core/command/app/listapps.php b/core/command/app/listapps.php new file mode 100644 index 00000000000..dc471c5453a --- /dev/null +++ b/core/command/app/listapps.php @@ -0,0 +1,47 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Core\Command\App; + +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; + +class ListApps extends Command { + protected function configure() { + $this + ->setName('app:list') + ->setDescription('List all available apps'); + } + + protected function execute(InputInterface $input, OutputInterface $output) { + $apps = \OC_App::getAllApps(); + $enabledApps = array(); + $disabledApps = array(); + + //sort enabled apps above disabled apps + foreach ($apps as $app) { + if (\OC_App::isEnabled($app)) { + $enabledApps[] = $app; + } else { + $disabledApps[] = $app; + } + } + + sort($enabledApps); + sort($disabledApps); + $output->writeln('Enabled:'); + foreach ($enabledApps as $app) { + $output->writeln(' - ' . $app); + } + $output->writeln('Disabled:'); + foreach ($disabledApps as $app) { + $output->writeln(' - ' . $app); + } + } +} |