hook_file_transfer_alter

Definition

hook_file_transfer_alter($file_user, $ip, $fid, $file)
ubercart/docs/hooks.php, line 466

Description

Make changes to a file before it is downloaded by the customer.

Stores, either for customization, copy protection or other reasons, might want to send customized downloads to customers. This hook will allow this to happen. Before a file is opened to be transfered to a customer, this hook will be called to make any altercations to the file that will be used to transfer the download to the customer. This, in effect, will allow a developer to create a new, personalized, file that will get transfered to a customer.

Parameters

$file_user The file_user object (i.e. an object containing a row from the uc_file_users table) that corresponds with the user download being accessed.

$ip The IP address from which the customer is downloading the file

$fid The file id of the file being transfered

$file The file path of the file to be transfered

Return value

The path of the new file to transfer to customer.

Related topics

Namesort iconDescription
HooksAllow modules to interact with the Drupal core.

Code

<?php
function hook_file_transfer_alter($file_user, $ip, $fid, $file) {
  $file_data = file_get_contents($file)." [insert personalized data]"; //for large files this might be too memory intensive
  $new_file = tempnam(file_directory_temp(),'tmp');
  file_put_contents($new_file,$file_data);
  return $new_file;
}
?>