123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- <?php
- // Comment if you don't want to allow posts from other domains
- header('Access-Control-Allow-Origin: *');
- // Allow the following methods to access this file
- header('Access-Control-Allow-Methods: OPTIONS, GET, DELETE, POST, HEAD, PATCH');
- // Allow the following headers in preflight
- header('Access-Control-Allow-Headers: content-type, upload-length, upload-offset, upload-name');
- // Allow the following headers in response
- header('Access-Control-Expose-Headers: upload-offset');
- // Load our configuration for this server
- require_once ('config.php');
- require ("./util/upload_media.php");
- require ("./util/read_write_functions.php");
- if ($_SERVER['REQUEST_METHOD'] === 'POST')
- {
- $files = $_FILES["filepond"];
- $imageName = null;
- $id = null;
- function saveImagesToTempLocation($uploadedFile)
- {
- global $imageName;
- global $id;
- $imageUniqueId = null;
- // check that there were no errors while uploading file
- if (isset($uploadedFile) && $uploadedFile['error'] === UPLOAD_ERR_OK)
- {
- $imageName = uploadImage($uploadedFile, UPLOAD_DIR);
- if ($imageName)
- {
- $filePointer = UPLOAD_DIR . $imageName;
- $arrayDBStore = readJsonFile();
- $id = uniqid();
- $newImageInfo = ["id" => $id, "name" => $imageName, "date" => time() ];
- array_push($arrayDBStore, $newImageInfo);
- writeJsonFile($arrayDBStore);
- }
- }
- return $id;
- }
- $structuredFiles = [];
- if (isset($files))
- {
- foreach ($files["name"] as $filename)
- {
- $structuredFiles[] = ["name" => $filename];
- }
- foreach ($files["type"] as $index => $filetype)
- {
- $structuredFiles[$index]["type"] = $filetype;
- }
- foreach ($files["tmp_name"] as $index => $file_tmp_name)
- {
- $structuredFiles[$index]["tmp_name"] = $file_tmp_name;
- }
- foreach ($files["error"] as $index => $file_error)
- {
- $structuredFiles[$index]["error"] = $file_error;
- }
- foreach ($files["size"] as $index => $file_size)
- {
- $structuredFiles[$index]["size"] = $file_size;
- }
- }
- $uniqueImgID = null;
- if (count($structuredFiles))
- {
- foreach ($structuredFiles as $structuredFile)
- {
- $uniqueImgID = saveImagesToTempLocation($structuredFile);
- }
- }
- $response = [];
- if ($uniqueImgID)
- {
- $response["status"] = "success";
- $response["key"] = $uniqueImgID;
- $response["msg"] = null;
- $response["files"] = json_encode($structuredFiles);
- http_response_code(200);
- }
- else
- {
- $response["status"] = "error";
- $response["key"] = null;
- $response["msg"] = "An error occured while uploading image";
- $response["files"] = json_encode($structuredFiles);
- http_response_code(400);
- }
- header('Content-Type: application/json');
- echo json_encode($response);
- exit();
- }
- else
- {
- exit();
- }
- ?>
|