Compare commits

..

No commits in common. "a8bc4fd92e35604235ce344f53b5c02c9a69472c" and "792b9c875f1aefc83eda48b2d9fa9b66bf748b85" have entirely different histories.

2 changed files with 11 additions and 54 deletions

View File

@ -1,40 +0,0 @@
<?php
include_once __DIR__ . "/logging.php";
/**
* An example CORS-compliant method. It will allow any GET, POST, or OPTIONS requests from any
* origin.
*
* In a production environment, you probably want to be more restrictive, but this gives you
* the general idea of what is involved. For the nitty-gritty low-down, read:
*
* - https://developer.mozilla.org/en/HTTP_access_control
* - https://fetch.spec.whatwg.org/#http-cors-protocol
*
*/
function cors() {
// Allow from any origin
if (isset($_SERVER['HTTP_ORIGIN'])) {
log_print($_SERVER['HTTP_ORIGIN']);
// Decide if the origin in $_SERVER['HTTP_ORIGIN'] is one
// you want to allow, and if so:
#if ($_SERVER['HTTP_ORIGIN'] !== 'http://app1.localhost') return;
header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Max-Age: 86400'); // cache for 1 day
}
// Access-Control headers are received during OPTIONS requests
if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {
if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
// may also be using PUT, PATCH, HEAD etc
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");
if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");
exit(0);
}
}
?>

View File

@ -1,7 +1,5 @@
<?php <?php
include_once __DIR__ . "/logging.php"; include_once __DIR__ . "/logging.php";
include_once __DIR__ . "/cors.php";
cors();
define("ROOT_URL", "http://localhost/"); define("ROOT_URL", "http://localhost/");
define("ROOT_DIR", "/var/www/localhost/"); define("ROOT_DIR", "/var/www/localhost/");
@ -26,6 +24,8 @@ define("VIDEO_EXTENSIONS", [
define("FILE_EXTENSIONS", array_merge(IMAGE_EXTENSIONS, VIDEO_EXTENSIONS)); define("FILE_EXTENSIONS", array_merge(IMAGE_EXTENSIONS, VIDEO_EXTENSIONS));
main();
function main(): void { function main(): void {
$data = json_decode(file_get_contents('php://input'), true); $data = json_decode(file_get_contents('php://input'), true);
$array = []; $array = [];
@ -42,17 +42,15 @@ function main(): void {
$is_dir = is_dir(ROOT_DIR.IMG_DIR.$path); $is_dir = is_dir(ROOT_DIR.IMG_DIR.$path);
if (!$is_dir && !is_valid_file_type($file)) continue; if (!$is_dir && !is_valid_file_type($file)) continue;
$url = ROOT_URL.IMG_DIR.$path;
$thumbnail_url = null;
if (!$is_dir) {
$thumbnail_url = create_thumbnail($category, $file);
}
$file_item = []; $file_item = [];
$file_item["is_dir"] = $is_dir; $file_item["is_dir"] = $is_dir;
$file_item["url"] = $url; if ($is_dir) {
$file_item["thumbnail_url"] = $thumbnail_url; $file_item["url"] = ROOT_URL.IMG_DIR.$path;
$file_item["thumbnail_url"] = null;
} else {
$file_item["url"] = ROOT_URL.IMG_DIR.$path;
$file_item["thumbnail_url"] = create_thumbnail($category, $file);
}
array_push($array, $file_item); array_push($array, $file_item);
} }
@ -69,7 +67,7 @@ function create_thumbnail(string $category, string $file): string | null {
$thumbnail_file = $thumbnail_directory.$file; $thumbnail_file = $thumbnail_directory.$file;
if (file_exists($thumbnail_file)) { if (file_exists($thumbnail_file)) {
log_print("$thumbnail_file exists, skipping generation"); log_print("$thumbnail_file exists, skipping gneeration");
goto return_thumbnail; goto return_thumbnail;
} }
@ -110,6 +108,5 @@ function is_image_file_type(string $filename): bool {
} }
return false; return false;
} }
main();
?> ?>