Add image upload support, file handling improvements, and OpenAI integration

- Introduced `uploadRoute` to handle image uploads with MIME type validation and size restrictions.
- Added `upload_store` class for managing file storage and generating presigned URLs for upload/download.
- Enhanced file server to differentiate between PDFs and uploaded files, supporting dynamic content delivery.
- Integrated OpenAI module for License Plate Recognition (LPR), including API configuration and schema validation.
- Updated core structure with new interfaces (`minio_uploads_i`, `openai_i`) and classes (`openai`, `upload_store`).
- Adjusted `index.php` and file routes to support dynamic MIME checks and direct link generation.
This commit is contained in:
Jeppe Bundgaard
2025-08-18 16:50:30 +02:00
parent 841062bfca
commit a0fd41fba1
14 changed files with 777 additions and 26 deletions
@@ -4,8 +4,10 @@ namespace routes;
use classes\authentication;
use classes\image_processor;
use classes\openai;
use classes\response;
use classes\router;
use classes\upload_store;
use objects\logs_o;
use traits\route_t;
@@ -39,10 +41,13 @@ class moduleScannerRoute
$response->error('Base64 image is required.');}
$image_processor = new image_processor();
$image_processor->set_image_base64($base64_image);
$response->success([
//'ocr' => $image_processor->process_ocr(),
'base64_image' => $base64_image
]);
$uploads = new upload_store();
$object_name = $uploads->storeTempImageFromBase64(
$base64_image
);
$openai = new openai();
//$response->success('CU61297');
$response->success($openai->lpr($object_name));
},
[
'modules_scanner_lpr' => 'License Plate Recognition',