Index: t3lib/class.t3lib_cli.php
===================================================================
--- t3lib/class.t3lib_cli.php	(revision 8742)
+++ t3lib/class.t3lib_cli.php	(revision )
@@ -1,29 +1,29 @@
 <?php
 /***************************************************************
-*  Copyright notice
-*
-*  (c) 2006-2010 Kasper Skårhøj (kasperYYYY@typo3.com)
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
+ *  Copyright notice
+ *
+ *  (c) 2006-2010 Kasper Skårhøj (kasperYYYY@typo3.com)
+ *  All rights reserved
+ *
+ *  This script is part of the TYPO3 project. The TYPO3 project is
+ *  free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  The GNU General Public License can be found at
+ *  http://www.gnu.org/copyleft/gpl.html.
+ *  A copy is found in the textfile GPL.txt and important notices to the license
+ *  from the author is found in LICENSE.txt distributed with these scripts.
+ *
+ *
+ *  This script is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  This copyright notice MUST APPEAR in all copies of the script!
+ ***************************************************************/
 /**
  * Contains base class for TYPO3 cli scripts
  *
@@ -37,14 +37,14 @@
  *
  *
  *   60: class t3lib_cli
- *   83:     function t3lib_cli()
+ *   83:	 function t3lib_cli()
- *   96:     function cli_getArg($option,$argv)
+ *   96:	 function cli_getArg($option,$argv)
- *  112:     function cli_getArgIndex()
+ *  112:	 function cli_getArgIndex()
- *  131:     function cli_keyboardInput()
+ *  131:	 function cli_keyboardInput()
- *  142:     function cli_keyboardInput_yes()
+ *  142:	 function cli_keyboardInput_yes()
- *  154:     function cli_echo($string='',$force=FALSE)
+ *  154:	 function cli_echo($string='',$force=FALSE)
- *  169:     function cli_help()
+ *  169:	 function cli_help()
- *  207:     function cli_indent($str,$indent)
+ *  207:	 function cli_indent($str,$indent)
  *
  * TOTAL FUNCTIONS: 8
  * (This index is automatically created/updated by the extension "extdeveval")
@@ -61,21 +61,21 @@
  */
 class t3lib_cli {
 
-	var $cli_args = array();			// Command line arguments, exploded into key => value-array pairs
+	var $cli_args = array(); // Command line arguments, exploded into key => value-array pairs
 	var $cli_options = array(
-		array('-s','Silent operation, will only output errors and important messages.'),
+		array('-s', 'Silent operation, will only output errors and important messages.'),
-		array('--silent','Same as -s'),
+		array('--silent', 'Same as -s'),
-		array('-ss','Super silent, will not even output errors or important messages.'),
+		array('-ss', 'Super silent, will not even output errors or important messages.'),
 	);
 	var $cli_help = array(
-			'name' => 'CLI base class (overwrite this...)',
-			'synopsis' => '###OPTIONS###',
-			'description' => 'Class with basic functionality for CLI scripts (overwrite this...)',
-			'examples' => 'Give examples...',
-			'options' => '',
-			'license' => 'GNU GPL - free software!',
-			'author' => '[Author name]',
-		);
+		'name' => 'CLI base class (overwrite this...)',
+		'synopsis' => '###OPTIONS###',
+		'description' => 'Class with basic functionality for CLI scripts (overwrite this...)',
+		'examples' => 'Give examples...',
+		'options' => '',
+		'license' => 'GNU GPL - free software!',
+		'author' => '[Author name]',
+	);
 	var $stdin = NULL;
 
 
@@ -85,7 +85,7 @@
 	 *
 	 * @return	void
 	 */
-	function t3lib_cli()	{
+	function t3lib_cli() {
 			// Loads the cli_args array with command line arguments
 		$this->cli_args = $this->cli_getArgIndex();
 	}
@@ -98,12 +98,12 @@
 	 * @param	array		Input argv array
 	 * @return	array		Output argv array with all options AFTER the found option.
 	 */
-	function cli_getArgArray($option,$argv)	{
+	function cli_getArgArray($option, $argv) {
-		while (count($argv) && strcmp($argv[0],$option))	{
+		while (count($argv) && strcmp($argv[0], $option)) {
 			array_shift($argv);
 		}
 
-		if (!strcmp($argv[0],$option))	{
+		if (!strcmp($argv[0], $option)) {
 			array_shift($argv);
 			return count($argv) ? $argv : array('');
 		}
@@ -115,7 +115,7 @@
 	 * @param	string		Option string, eg. "-s"
 	 * @return	boolean		TRUE if option found
 	 */
-	function cli_isArg($option)	{
+	function cli_isArg($option) {
 		return isset($this->cli_args[$option]);
 	}
 
@@ -126,7 +126,7 @@
 	 * @param	integer		Value index, default is 0 (zero) = the first one...
 	 * @return	boolean		TRUE if option found
 	 */
-	function cli_argValue($option,$idx=0)	{
+	function cli_argValue($option, $idx = 0) {
 		return is_array($this->cli_args[$option]) ? $this->cli_args[$option][$idx] : '';
 	}
 
@@ -137,24 +137,25 @@
 	 *
 	 * @return	array
 	 */
-	function cli_getArgIndex()	{
+	function cli_getArgIndex() {
 		$cli_options = array();
 		$index = '_DEFAULT';
-		foreach($_SERVER['argv'] as $token)	{
+		foreach ($_SERVER['argv'] as $token) {
-			if ($token{0}==='-' && !t3lib_div::testInt($token{1}))	{	// Options starting with a number is invalid - they could be negative values... !
+			if ($token{0} === '-' && !t3lib_div::testInt($token{1})) { // Options starting with a number is invalid - they could be negative values... !
-				list($index,$opt) = explode('=',$token,2);
+				list($index, $opt) = explode('=', $token, 2);
-				if (isset($cli_options[$index]))	{
+				if (isset($cli_options[$index])) {
-					echo 'ERROR: Option '.$index.' was used twice!'.LF;
+					echo 'ERROR: Option ' . $index . ' was used twice!' . LF;
 					exit;
 				}
 				$cli_options[$index] = array();
-				if (isset($opt))	{
+				if (isset($opt)) {
 					$cli_options[$index][] = $opt;
 				}
 			} else {
 				$cli_options[$index][] = $token;
 			}
 		}
+
 		return $cli_options;
 	}
 
@@ -166,24 +167,24 @@
 		unset($cli_args_copy['_DEFAULT']);
 		$allOptions = array();
 
-		foreach($this->cli_options as $cfg)	{
+		foreach ($this->cli_options as $cfg) {
 			$allOptions[] = $cfg[0];
-			$argSplit = t3lib_div::trimExplode(' ',$cfg[0],1);
+			$argSplit = t3lib_div::trimExplode(' ', $cfg[0], 1);
-			if (isset($cli_args_copy[$argSplit[0]]))	{
+			if (isset($cli_args_copy[$argSplit[0]])) {
 
-				foreach($argSplit as $i => $v)	{
+				foreach ($argSplit as $i => $v) {
-					$ii=$i;
+					$ii = $i;
-					if ($i>0)	{
+					if ($i > 0) {
-						if (!isset($cli_args_copy[$argSplit[0]][$i-1]) && $v{0}!='[')	{	// Using "[]" around a paramter makes it optional
+						if (!isset($cli_args_copy[$argSplit[0]][$i - 1]) && $v{0} != '[') { // Using "[]" around a paramter makes it optional
-							echo 'ERROR: Option "'.$argSplit[0].'" requires a value ("'.$v.'") on position '.$i.LF;
+							echo 'ERROR: Option "' . $argSplit[0] . '" requires a value ("' . $v . '") on position ' . $i . LF;
 							exit;
 						}
 					}
 				}
 
 				$ii++;
-				if (isset($cli_args_copy[$argSplit[0]][$ii-1]))	{
+				if (isset($cli_args_copy[$argSplit[0]][$ii - 1])) {
-					echo 'ERROR: Option "'.$argSplit[0].'" does not support a value on position '.$ii.LF;
+					echo 'ERROR: Option "' . $argSplit[0] . '" does not support a value on position ' . $ii . LF;
 					exit;
 				}
 
@@ -191,8 +192,8 @@
 			}
 		}
 
-		if (count($cli_args_copy))	{
+		if (count($cli_args_copy)) {
-			echo wordwrap('ERROR: Option '.implode(',',array_keys($cli_args_copy)).' was unknown to this script!'.LF.'(Options are: '.implode(', ',$allOptions).')'.LF);
+			echo wordwrap('ERROR: Option ' . implode(',', array_keys($cli_args_copy)) . ' was unknown to this script!' . LF . '(Options are: ' . implode(', ', $allOptions) . ')' . LF);
 			exit;
 		}
 	}
@@ -202,14 +203,15 @@
 	 *
 	 * @return	string
 	 */
-	function cli_keyboardInput()	{
+	function cli_keyboardInput() {
 
 			// Have to open the stdin stream only ONCE! otherwise I cannot read multiple lines from it... :
-		if (!$this->stdin)	{
+		if (!$this->stdin) {
 			$this->stdin = fopen('php://stdin', 'r');
 		}
 
-		while (FALSE == ($line = fgets($this->stdin,1000)))	{}
+		while (FALSE == ($line = fgets($this->stdin, 1000))) {
+		}
 
 		return trim($line);
 	}
@@ -220,9 +222,10 @@
 	 * @param	string		String to ask before...
 	 * @return	boolean		TRUE if "y" or "yes" is the input (case insensitive)
 	 */
-	function cli_keyboardInput_yes($msg='')	{
+	function cli_keyboardInput_yes($msg = '') {
-		echo $msg.' (Yes/No + return): ';	// ONLY makes sense to echo it out since we are awaiting keyboard input - that cannot be silenced...
+		echo $msg . ' (Yes/No + return): '; // ONLY makes sense to echo it out since we are awaiting keyboard input - that cannot be silenced...
+
-		return t3lib_div::inList('y,yes',strtolower($this->cli_keyboardInput()));
+		return t3lib_div::inList('y,yes', strtolower($this->cli_keyboardInput()));
 	}
 
 	/**
@@ -232,12 +235,18 @@
 	 * @param	boolean		If string should be written even if -s is set (-ss will subdue it!)
 	 * @return	boolean		Returns TRUE if string was outputted.
 	 */
-	function cli_echo($string='',$force=FALSE)	{
+	function cli_echo($string = '', $force = FALSE) {
 		if (isset($this->cli_args['-ss'])) {
 			// Nothing to do...
 		} elseif (isset($this->cli_args['-s']) || isset($this->cli_args['--silent'])) {
-			if ($force)	{ echo $string; return TRUE; }
-		} else { echo $string; return TRUE; }
+			if ($force) {
+				echo $string;
+				return TRUE;
+			}
+		} else {
+			echo $string;
+			return TRUE;
+		}
 
 		return FALSE;
 	}
@@ -247,33 +256,35 @@
 	 *
 	 * @return	void
 	 */
-	function cli_help()	{
+	function cli_help() {
-		foreach($this->cli_help as $key => $value)	{
+		foreach ($this->cli_help as $key => $value) {
-			$this->cli_echo(strtoupper($key).":\n");
+			$this->cli_echo(strtoupper($key) . ":\n");
-			switch($key) {
+			switch ($key) {
 				case 'synopsis':
 					$optStr = '';
-					foreach ($this->cli_options as $v)	{
+					foreach ($this->cli_options as $v) {
-						$optStr.=' ['.$v[0].']';
+						$optStr .= ' [' . $v[0] . ']';
 					}
-					$this->cli_echo($this->cli_indent(str_replace('###OPTIONS###',trim($optStr),$value),4)."\n\n");
+					$this->cli_echo($this->cli_indent(str_replace('###OPTIONS###', trim($optStr), $value), 4) . "\n\n");
-				break;
+					break;
 				case 'options':
-					$this->cli_echo($this->cli_indent($value,4).LF);
+					$this->cli_echo($this->cli_indent($value, 4) . LF);
 
 					$maxLen = 0;
-					foreach ($this->cli_options as $v)	{
+					foreach ($this->cli_options as $v) {
-						if (strlen($v[0])>$maxLen)	$maxLen=strlen($v[0]);
+						if (strlen($v[0]) > $maxLen) {
+							$maxLen = strlen($v[0]);
-					}
+						}
+					}
 
-					foreach ($this->cli_options as $v)	{
+					foreach ($this->cli_options as $v) {
-						$this->cli_echo($v[0].substr($this->cli_indent(rtrim($v[1].LF.$v[2]),$maxLen+4),strlen($v[0])).LF);
+						$this->cli_echo($v[0] . substr($this->cli_indent(rtrim($v[1] . LF . $v[2]), $maxLen + 4), strlen($v[0])) . LF);
 					}
 					$this->cli_echo(LF);
-				break;
+					break;
 				default:
-					$this->cli_echo($this->cli_indent($value,4)."\n\n");
+					$this->cli_echo($this->cli_indent($value, 4) . "\n\n");
-				break;
+					break;
 			}
 		}
 	}
@@ -285,13 +296,14 @@
 	 * @param	integer		Number of space chars to indent.
 	 * @return	string		Result
 	 */
-	function cli_indent($str,$indent)	{
+	function cli_indent($str, $indent) {
-		$lines = explode(LF,wordwrap($str,75-$indent));
+		$lines = explode(LF, wordwrap($str, 75 - $indent));
-		$indentStr = str_pad('',$indent,' ');
+		$indentStr = str_pad('', $indent, ' ');
-		foreach($lines as $k => $v)	{
+		foreach ($lines as $k => $v) {
-			$lines[$k] = $indentStr.$lines[$k];
+			$lines[$k] = $indentStr . $lines[$k];
 		}
+
-		return implode(LF,$lines);
+		return implode(LF, $lines);
 	}
 }
 
