From 552aadef47097ec8992cd285c0ca1965f0cbccf3 Mon Sep 17 00:00:00 2001 From: ricardo Date: Tue, 30 Jun 2015 16:13:30 -0400 Subject: [PATCH] 0017667: The command "processmaker help OPTION" shows PHP warnings if the option doesn't exist SOLVED al ejecutar el comando processmaker help con una opcion que no existia daba un error que no era entendible para el usuario se soluciono agregando un array que jala todas las opciones y una condicion que al dar cualquier opcion que no este listada dira que no existe --- workflow/engine/classes/class.cli.php | 40 ++++++++++++++++++++------- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/workflow/engine/classes/class.cli.php b/workflow/engine/classes/class.cli.php index 21b0c7077..b26865a09 100755 --- a/workflow/engine/classes/class.cli.php +++ b/workflow/engine/classes/class.cli.php @@ -150,17 +150,36 @@ class CLI $tasks = join( "\n", $tasks ); echo $tasks . "\n\n"; } else { - $valid_args = array (); - foreach (self::$tasks[$taskName]['args'] as $arg => $data) { - $arg = strtoupper( $arg ); - if ($data['multiple']) { - $arg = "$arg..."; - } - if ($data['optional']) { - $arg = "[$arg]"; - } - $valid_args[] = $arg; + $options = array(); + $tasks = array(); + ksort( self::$tasks ); + foreach (self::$tasks as $name => $data) { + $description = explode( "\n", $data['description'] ); + $options[] = "$name"; } + if (!in_array($taskName, $options)) { + echo "\nThe task does not exist \n"; + echo "Use one of the following tasks:\n"; + $tasks = array (); + ksort( self::$tasks ); + foreach (self::$tasks as $name => $data) { + $description = explode( "\n", $data['description'] ); + $tasks[] = " $name"; + } + $tasks = join( "\n", $tasks ); + echo $tasks . "\n\n"; + } else{ + $valid_args = array (); + foreach (self::$tasks[$taskName]['args'] as $arg => $data) { + $arg = strtoupper( $arg ); + if ($data['multiple']) { + $arg = "$arg..."; + } + if ($data['optional']) { + $arg = "[$arg]"; + } + $valid_args[] = $arg; + } $valid_args = join( " ", $valid_args ); $description = explode( "\n", self::$tasks[$taskName]['description'] ); $taskDescription = trim( array_shift( $description ) ); @@ -195,6 +214,7 @@ EOT; } echo $message . "\n"; } + } } /**