<?php

namespace brain\utility;

class FileUploader
{
    public static function uploadFile(string $directory, $file)
    {
        $response = [];
        try {
            if (!is_dir($directory)) {
                // Directory does not exist, so lets create it.
                mkdir($directory, 0755, true);
            }
            // $upload = move_uploaded_file($file->getClientFileName(), $directory);
            // $extension = pathinfo($file->getClientFilename(), PATHINFO_EXTENSION);

            // see http://php.net/manual/en/function.random-bytes.php
            // $basename = bin2hex(random_bytes(8));
            // $filename = sprintf("%s.%0.8s", $basename, $extension);

            // echo "**FILE** " . $file->getClientFileName();

            $file->moveTo($directory.'/'.urlencode($file->getClientFileName()));
        } catch (RuntimeException $e) {
            echo 'ERROR '.$e->getMessage();

            // echo "failed to upload image: " . $e->getMessage();
          // throw new Error("Failed to upload image file");
        }
    }
}