80 lines
2.8 KiB
PHP
80 lines
2.8 KiB
PHP
<?php
|
|
header("Content-Type: application/json");
|
|
include('config.php');
|
|
include('modules/GetRecipes.php');
|
|
|
|
// Holen des Endpunkts und der Methode
|
|
$request_method = $_SERVER['REQUEST_METHOD'];
|
|
$uri = explode('/', trim($_SERVER['REQUEST_URI'], '/'));
|
|
$endpoint = isset($uri[0]) ? $uri[0] : null;
|
|
$id = isset($uri[1]) ? $uri[1] : null;
|
|
|
|
// Wenn kein Endpunkt angegeben ist, Fehler zurückgeben
|
|
if (!$endpoint) {
|
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
|
exit;
|
|
}
|
|
|
|
switch ($request_method) {
|
|
case 'GET':
|
|
if ($endpoint === 'GetRecipes') {
|
|
if ($id) {
|
|
// Einzelnes Gerät abrufen
|
|
$recipe = get_recipes_by_id($id);
|
|
if ($recipe) {
|
|
echo json_encode($recipe);
|
|
} else {
|
|
echo json_encode(["error" => "Rezept nicht gefunden"]);
|
|
}
|
|
} else {
|
|
// Alle Geräte abrufen
|
|
$recipes = get_all_recipes();
|
|
echo json_encode($recipes);
|
|
}
|
|
} else {
|
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
|
}
|
|
break;
|
|
|
|
/* case 'POST':
|
|
if ($endpoint === 'AddDevice' && $_SERVER['CONTENT_TYPE'] === 'application/json') {
|
|
$input = json_decode(file_get_contents('php://input'), true);
|
|
if (isset($input['imei'], $input['phone_number'], $input['gps_position'], $input['battery_level'])) {
|
|
$id = add_device($input['imei'], $input['phone_number'], $input['gps_position'], $input['battery_level']);
|
|
echo json_encode(["message" => "Gerät hinzugefügt", "id" => $id]);
|
|
} else {
|
|
echo json_encode(["error" => "Ungültige Eingabedaten"]);
|
|
}
|
|
} else {
|
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
|
}
|
|
break;
|
|
|
|
case 'PUT':
|
|
if ($endpoint === 'UpdateDevice' && $id && $_SERVER['CONTENT_TYPE'] === 'application/json') {
|
|
$input = json_decode(file_get_contents('php://input'), true);
|
|
if (isset($input['gps_position'], $input['battery_level'])) {
|
|
update_device($id, $input['gps_position'], $input['battery_level']);
|
|
echo json_encode(["message" => "Gerät aktualisiert"]);
|
|
} else {
|
|
echo json_encode(["error" => "Ungültige Eingabedaten"]);
|
|
}
|
|
} else {
|
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
|
}
|
|
break;
|
|
|
|
case 'DELETE':
|
|
if ($endpoint === 'DeleteDevice' && $id) {
|
|
delete_device($id);
|
|
echo json_encode(["message" => "Gerät gelöscht"]);
|
|
} else {
|
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
|
}
|
|
break; */
|
|
|
|
default:
|
|
echo json_encode(["error" => "Ungültige HTTP-Methode"]);
|
|
break;
|
|
}
|