function hook_file_move
Respond to a file that has been moved.
Parameters
\Drupal\file\FileInterface $file: The updated file entity after the move.
\Drupal\file\FileInterface $source: The original file entity before the move.
See also
\Drupal\file\FileRepositoryInterface::move()
Related topics
- Hooks
- Define functions that alter the behavior of Drupal core.
1 invocation of hook_file_move()
- FileRepository::move in core/
modules/ file/ src/ FileRepository.php
File
-
core/
modules/ file/ file.api.php, line 98
Code
function hook_file_move(FileInterface $file, FileInterface $source) {
// Make sure that the file name starts with the owner's user name.
if (!str_starts_with($file->getFilename(), $file->getOwner()->name)) {
$file->setFilename($file->getOwner()->name . '_' . $file->getFilename());
$file->save();
\Drupal::logger('file')->notice('Moved file %source has been renamed to %destination', [
'%source' => $source->filename,
'%destination' => $file->getFilename(),
]);
}
}