]> git.mxchange.org Git - friendica.git/blobdiff - src/Core/Console.php
Add search types
[friendica.git] / src / Core / Console.php
index eb6e08057aa24ac94374dcccea321d55b1f17fd1..2893c27b2341e2275b3f2055d84b7e3e4a8b9052 100644 (file)
@@ -2,10 +2,12 @@
 
 namespace Friendica\Core;
 
+use Friendica;
+
 /**
  * Description of Console
  *
- * @author Hypolite Petovan <mrpetovan@gmail.com>
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
  */
 class Console extends \Asika\SimpleConsole\Console
 {
@@ -13,26 +15,13 @@ class Console extends \Asika\SimpleConsole\Console
        protected $helpOptions = [];
        protected $customHelpOptions = ['h', 'help', '?'];
 
-       protected $subConsoles = [
-               'config'                 => __NAMESPACE__ . '\Console\Config',
-               'createdoxygen'          => __NAMESPACE__ . '\Console\CreateDoxygen',
-               'docbloxerrorchecker'    => __NAMESPACE__ . '\Console\DocBloxErrorChecker',
-               'dbstructure'            => __NAMESPACE__ . '\Console\DatabaseStructure',
-               'extract'                => __NAMESPACE__ . '\Console\Extract',
-               'globalcommunityblock'   => __NAMESPACE__ . '\Console\GlobalCommunityBlock',
-               'globalcommunitysilence' => __NAMESPACE__ . '\Console\GlobalCommunitySilence',
-               'maintenance'            => __NAMESPACE__ . '\Console\Maintenance',
-               'php2po'                 => __NAMESPACE__ . '\Console\PhpToPo',
-               'po2php'                 => __NAMESPACE__ . '\Console\PoToPhp',
-               'typo'                   => __NAMESPACE__ . '\Console\Typo',
-       ];
-
        protected function getHelp()
        {
                $help = <<<HELP
 Usage: bin/console [--version] [-h|--help|-?] <command> [<args>] [-v]
 
 Commands:
+       cache                  Manage node cache
        config                 Edit site config
        createdoxygen          Generate Doxygen headers
        dbstructure            Do database updates
@@ -40,11 +29,17 @@ Commands:
        extract                Generate translation string file for the Friendica project (deprecated)
        globalcommunityblock   Block remote profile from interacting with this node
        globalcommunitysilence Silence remote profile from global community page
+       archivecontact         Archive a contact when you know that it isn't existing anymore
        help                   Show help about a command, e.g (bin/console help config)
+       autoinstall            Starts automatic installation of friendica based on values from htconfig.php
        maintenance            Set maintenance mode for this node
+       newpassword            Set a new password for a given user
        php2po                 Generate a messages.po file from a strings.php file
        po2php                 Generate a strings.php file from a messages.po file
        typo                   Checks for parse errors in Friendica files
+       postupdate             Execute pending post update scripts (can last days)
+       serverblock            Manage blocked servers
+       storage                Manage storage backend
 
 Options:
        -h|--help|-? Show help information
@@ -53,6 +48,27 @@ HELP;
                return $help;
        }
 
+       protected $subConsoles = [
+               'cache'                  => Friendica\Console\Cache::class,
+               'config'                 => Friendica\Console\Config::class,
+               'createdoxygen'          => Friendica\Console\CreateDoxygen::class,
+               'docbloxerrorchecker'    => Friendica\Console\DocBloxErrorChecker::class,
+               'dbstructure'            => Friendica\Console\DatabaseStructure::class,
+               'extract'                => Friendica\Console\Extract::class,
+               'globalcommunityblock'   => Friendica\Console\GlobalCommunityBlock::class,
+               'globalcommunitysilence' => Friendica\Console\GlobalCommunitySilence::class,
+               'archivecontact'         => Friendica\Console\ArchiveContact::class,
+               'autoinstall'            => Friendica\Console\AutomaticInstallation::class,
+               'maintenance'            => Friendica\Console\Maintenance::class,
+               'newpassword'            => Friendica\Console\NewPassword::class,
+               'php2po'                 => Friendica\Console\PhpToPo::class,
+               'po2php'                 => Friendica\Console\PoToPhp::class,
+               'typo'                   => Friendica\Console\Typo::class,
+               'postupdate'             => Friendica\Console\PostUpdate::class,
+               'serverblock'            => Friendica\Console\ServerBlock::class,
+               'storage'                => Friendica\Console\Storage::class,
+       ];
+
        protected function doExecute()
        {
                if ($this->getOption('v')) {
@@ -61,7 +77,6 @@ HELP;
                        $this->out('Options: ' . var_export($this->options, true));
                }
 
-               $showHelp = false;
                $subHelp = false;
                $command = null;
 
@@ -71,7 +86,6 @@ HELP;
                        return 0;
                } elseif ((count($this->options) === 0 || $this->getOption($this->customHelpOptions) === true || $this->getOption($this->customHelpOptions) === 1) && count($this->args) === 0
                ) {
-                       $showHelp = true;
                } elseif (count($this->args) >= 2 && $this->getArgument(0) == 'help') {
                        $command = $this->getArgument(1);
                        $subHelp = true;
@@ -111,6 +125,7 @@ HELP;
 
                $className = $this->subConsoles[$command];
 
+               /** @var Console $subconsole */
                $subconsole = new $className($subargs);
 
                foreach ($this->options as $name => $value) {