/** * Before save hook * * @param Model $m * * @return void */ function beforeSave($m) { // if new record, then choose volume and generate name if (!$m->loaded()) { // volume $m->set('filestore_volume_id', $m->getAvailableVolumeID()); // generate random original_filename in case you import file contents as string if (!$m['original_filename']) { $m->set('original_filename', mt_rand()); } // generate filename (with relative path) $m->set('filename', $m->generateFilename()); } // perform import itself if ($m->import_mode) { $m->performImport(); } }