Merge pull request #6786 from nupplaphil/issue/6758-console_storage

Fix handling table name during storage move
This commit is contained in:
Hypolite Petovan 2019-03-01 16:53:55 -05:00 committed by GitHub
commit 50a6058f66
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 4 deletions

View file

@ -112,19 +112,21 @@ HELP;
protected function do_move()
{
$table = null;
$tables = null;
if (count($this->args) < 1 || count($this->args) > 2) {
throw new CommandArgsException('Invalid arguments');
}
if (count($this->args) == 2) {
$table = strtolower($this->args[1]);
if (!in_array($table, ['photo', 'attach'])) {
throw new CommandArgsException('Invalid table');
}
$tables = [$table];
}
$current = StorageManager::getBackend();
$r = StorageManager::move($current);
$r = StorageManager::move($current, $tables);
$this->out(sprintf('Moved %d files', $r));
}
}

View file

@ -110,8 +110,8 @@ class StorageManager
* Copy existing data to destination storage and delete from source.
* This method cannot move to legacy in-table `data` field.
*
* @param string $dest Destination storage class name
* @param array $tables Tables to look in for resources. Optional, defaults to ['photo', 'attach']
* @param string $dest Destination storage class name
* @param array|null $tables Tables to look in for resources. Optional, defaults to ['photo', 'attach']
*
* @throws \Exception
* @return int Number of moved resources