X-Git-Url: https://jfr.im/git/uguu.git/blobdiff_plain/96bb2d3306a6ea6021bc44ed488bc4d8b6cf447e..52053519110d462ed1496362eb577b704444e1db:/src/static/php/upload.php diff --git a/src/static/php/upload.php b/src/static/php/upload.php index 1237ed7..7d73373 100644 --- a/src/static/php/upload.php +++ b/src/static/php/upload.php @@ -1,8 +1,9 @@ + * @copyright Copyright (c) 2022-2023 Go Johansson (nokonoko) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,35 +18,31 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + require_once __DIR__ . '/../vendor/autoload.php'; - function checkConfig() + use Pomf\Uguu\Classes\Upload; + use Pomf\Uguu\Classes\Response; + + function handleFiles(string $outputFormat, array $files):void { - if (!file_exists(__DIR__ . '/../config.json')) { - throw new Exception('Cant read settings file.', 500); - } - try { - $settings = json_decode( - file_get_contents(__DIR__ . '/../config.json'), - true, - ); - if ($settings['PHP_ERRORS']) { - error_reporting(E_ALL); - ini_set('display_errors', 1); - } + $upload = new Upload($outputFormat); + $files = $upload->reFiles($files); + $fCount = count($files); + $upload->fingerPrint($fCount); + $res = []; + $i = 0; + while ($i < $fCount) { + $res[] = $upload->uploadFile(); + $i++; } - catch (Exception) { - throw new Exception('Cant populate settings.', 500); + if (!empty($res)) { + $upload->send($res); } } - checkConfig(); - require_once __DIR__ . '/../vendor/autoload.php'; - - use Pomf\Uguu\Classes\UploadGateway; - - try { - (new UploadGateway())->handleFile($_GET['output'], $_FILES['files']); - } - catch (Exception $e) { - throw new Exception($e->getMessage(), 500); + $response = new Response('json'); + $resType = (isset($_GET['output']) and !empty($_GET['output'])) ? strtolower(preg_replace('/[^a-zA-Z]/', '', $_GET['output'])) : 'json'; + if (!isset($_FILES['files']) or empty($_FILES['files'])) { + $response->error(400, 'No input file(s)'); } + handleFiles($resType, $_FILES['files']); \ No newline at end of file