-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.php
More file actions
59 lines (49 loc) · 1.77 KB
/
index.php
File metadata and controls
59 lines (49 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json");
$SUPABASE_URL = "https://prfkhjuujnheztwhwmcd.supabase.co";
$SUPABASE_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InByZmtoanV1am5oZXp0d2h3bWNkIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDE4MDk2NjIsImV4cCI6MjA1NzM4NTY2Mn0.j92nEtB5mUORV5VlCpLsTbJNinSykjnpaX0R1cnZQXc";
function fetchFromSupabase($table, $query = '') {
global $SUPABASE_URL, $SUPABASE_KEY;
$url = "$SUPABASE_URL/rest/v1/$table$query";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"apikey: $SUPABASE_KEY",
"Authorization: Bearer $SUPABASE_KEY",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
http_response_code(500);
echo json_encode(["error" => curl_error($ch)]);
curl_close($ch);
exit;
}
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status >= 200 && $status < 300) {
echo $response;
} else {
http_response_code($status);
echo json_encode(["error" => "Supabase error: $response"]);
}
}
$request_uri = $_SERVER['REQUEST_URI'];
if (strpos($request_uri, '/publications') !== false) {
fetchFromSupabase("publications", "?select=*&order=id.asc&limit=10");
}
else if (strpos($request_uri, '/projects') !== false) {
fetchFromSupabase("projects", "?select=*");
}
else if (strpos($request_uri, '/collabs') !== false) {
fetchFromSupabase("collabs", "?select=*");
}
else if (strpos($request_uri, '/team') !== false) {
fetchFromSupabase("team", "?select=*");
}
else {
http_response_code(404);
echo json_encode(["error" => "Route not found"]);
}
?>