public static function saveClone($fileName, $directory = '', $fileTypes = [])
{
$fileInfo = pathinfo($fileName);
if (substr($directory, 0, -1) != '/') {
$directory .= '/';
}
$extension = $fileInfo['extension'];
$newFileName = md5(rand(1111, 9999) . time());
// In case we don't want that file type
if (!empty($fileTypes)) {
if (!in_array($extension, $fileTypes)) {
throw new Exception('Incorrect file type', 1);
}
}
Storage::disk(Config::get('quarx.storage-location', 'local'))->put($directory . $newFileName . '.' . $extension, file_get_contents($fileName));
return ['original' => basename($fileName), 'name' => $directory . $newFileName . '.' . $extension];
}