function hook_file_move

7.x system.api.php hook_file_move($file, $source)
8.x file.api.php hook_file_move(Drupal\file\FileInterface $file, Drupal\file\FileInterface $source)

Respond to a file that has been moved.

Parameters

$file: The updated file object after the move.

$source: The original file object before the move.

See also

file_move()

Related topics

3 functions implement hook_file_move()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

file_test_file_move in drupal/modules/simpletest/tests/file_test.module
Implements hook_file_move().
image_file_move in drupal/modules/image/image.module
Implements hook_file_move().
user_file_move in drupal/modules/user/user.module
Implements hook_file_move().
1 invocation of hook_file_move()
file_move in drupal/includes/file.inc
Moves a file to a new location and update the file's database entry.

File

drupal/modules/system/system.api.php, line 2934
Hooks provided by Drupal core and the System module.

Code

function hook_file_move($file, $source) {
  $file_user = user_load($file->uid);
  // Make sure that the file name starts with the owner's user name.
  if (strpos($file->filename, $file_user->name) !== 0) {
    $file->filename = $file_user->name . '_' . $file->filename;
    $file->save();

    watchdog('file', t('Moved file %source has been renamed to %destination', array('%source' => $source->filename, '%destination' => $file->filename)));
  }
}