private function _addToFiles($key, $url, $data = null, $mimeType = 'text/plain')
{
$tempName = tempnam(craft()->getRuntimePath() . '/temp', 'embedded_assets_');
$originalName = basename(parse_url($url, PHP_URL_PATH));
$fileData = is_string($data) ? $data : file_get_contents($url);
file_put_contents($tempName, $fileData);
if (function_exists('finfo_open')) {
EmbeddedAssetsPlugin::log("Setting embedded asset file mime type with `finfo`");
$fileInfo = finfo_open(FILEINFO_MIME);
$mimeType = finfo_file($fileInfo, $tempName);
finfo_close($fileInfo);
} else {
if (function_exists('mime_content_type')) {
EmbeddedAssetsPlugin::log("Setting embedded asset file mime type with `mime_content_type`");
$mimeType = mime_content_type($tempName);
}
}
$_FILES[$key] = array('name' => $originalName, 'type' => $mimeType, 'tmp_name' => $tempName, 'error' => 0, 'size' => strlen($fileData));
}