<?php
namespace App\Helpers;

use Illuminate\Support\Facades\Storage;
use Ramsey\Uuid\Uuid;

class FileUtil {
    public static function generateUuid(){
        return Uuid::uuid4()->toString().'-' . time();
    }

    public static function saveFile($file, $directory){
        FileUtil::makeDirIfNotExists($directory);
        return $file->storeAs($directory,  Uuid::uuid4()->toString().'-' . time() . '.' . $file->getClientOriginalExtension());
    }
    public static function orientateImage($img, $directory){
        FileUtil::makeDirIfNotExists($directory);
        $image = \Image::make($img);
        $image->orientate();
        $path = $directory . '/' . Uuid::uuid4()->toString() .'-' . time() . '.' . $img->getClientOriginalExtension();
        $image->save(storage_path() . '/app/' . $path);
        return $path;
    }
    public static function makeDirIfNotExists($path){
        if(!Storage::exists($path)) {
            Storage::makeDirectory($path, true);
        }
    }
}
