From: Marcin Haba Date: Thu, 9 Aug 2018 19:54:44 +0000 (+0200) Subject: baculum: Add support for .api 2 command in bconsole module X-Git-Tag: Release-9.2.1~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=be21b2a1cd536a2f0c3b4b0d66a5845c492d9af2;p=thirdparty%2Fbacula.git baculum: Add support for .api 2 command in bconsole module --- diff --git a/gui/baculum/protected/API/Class/Bconsole.php b/gui/baculum/protected/API/Class/Bconsole.php index c3433aa87..c5a0b6b81 100644 --- a/gui/baculum/protected/API/Class/Bconsole.php +++ b/gui/baculum/protected/API/Class/Bconsole.php @@ -30,6 +30,8 @@ class Bconsole extends APIModule { const BCONSOLE_COMMAND_PATTERN = "%s%s -c %s %s 2>&1 < $output, 'exitcode' => (integer)$exitcode); } - public function bconsoleCommand($director, array $command, $user = null) { + public function bconsoleCommand($director, array $command, $api = false) { if (count($this->config) > 0 && $this->config['enabled'] !== '1') { throw new BConsoleException( BconsoleError::MSG_ERROR_BCONSOLE_DISABLED, @@ -152,7 +156,7 @@ class Bconsole extends APIModule { } $base_command = count($command) > 0 ? $command[0] : null; if($this->isCommandValid($base_command) === true) { - $result = $this->execCommand($director, $command, $user); + $result = $this->execCommand($director, $command, $api); } else { throw new BConsoleException( BconsoleError::MSG_ERROR_INVALID_COMMAND, @@ -162,7 +166,7 @@ class Bconsole extends APIModule { return $result; } - private function execCommand($director, array $command, $user) { + private function execCommand($director, array $command, $api = false) { $cmd = ''; $result = null; if(!is_null($director) && $this->isValidDirector($director) === false) { @@ -174,8 +178,9 @@ class Bconsole extends APIModule { $dir = is_null($director) ? '': '-D ' . $director; $sudo = ($this->getUseSudo() === true) ? self::SUDO . ' ' : ''; $bconsole_command = implode(' ', $command); + $pattern = ($api === true) ? self::BCONSOLE_API_COMMAND_PATTERN : self::BCONSOLE_COMMAND_PATTERN; $cmd = sprintf( - self::BCONSOLE_COMMAND_PATTERN, + $pattern, $sudo, self::getCmdPath(), self::getCfgPath(),