function file_entity_file_presave in File Entity (fieldable files) 7.2
Same name and namespace in other branches
- 7.3 file_entity.file.inc \file_entity_file_presave()
- 7 file_entity.module \file_entity_file_presave()
Implements hook_file_presave().
File
- ./
file_entity.file.inc, line 11 - File hooks implemented by the File entity module.
Code
function file_entity_file_presave($file) {
// Always ensure the filemime property is current.
if (!empty($file->original) || empty($file->filemime)) {
$file->filemime = file_get_mimetype($file->uri);
}
// The file type is used as a bundle key, and therefore, must not be NULL.
// It defaults to FILE_TYPE_NONE when loaded via file_load(), but in case
// file_save() is called on a new file object, default it here too.
if (!isset($file->type)) {
$file->type = FILE_TYPE_NONE;
}
// If the file isn't already assigned a real type, determine what type should
// be assigned to it.
if ($file->type === FILE_TYPE_NONE) {
$type = file_get_type($file);
if (isset($type)) {
$file->type = $type;
}
}
field_attach_presave('file', $file);
// Fetch image dimensions.
file_entity_metadata_fetch_image_dimensions($file);
}