34968-vm/api/save_location.php
Flatlogic Bot 7a0a2165fc V12
2025-10-15 14:58:19 +00:00

44 lines
1.2 KiB
PHP

<?php
session_start();
header('Content-Type: application/json');
// Define the service area bounds for Majuro
const MAJURO_BOUNDS = [
'minLat' => 7.05,
'maxLat' => 7.15,
'minLng' => 171.17,
'maxLng' => 171.39
];
function isWithinMajuro($lat, $lng) {
return $lat >= MAJURO_BOUNDS['minLat'] && $lat <= MAJURO_BOUNDS['maxLat'] &&
$lng >= MAJURO_BOUNDS['minLng'] && $lng <= MAJURO_BOUNDS['maxLng'];
}
$data = json_decode(file_get_contents('php://input'), true);
if (isset($data['lat']) && isset($data['lng'])) {
$lat = filter_var($data['lat'], FILTER_VALIDATE_FLOAT);
$lng = filter_var($data['lng'], FILTER_VALIDATE_FLOAT);
if ($lat === false || $lng === false) {
echo json_encode(['success' => false, 'message' => 'Invalid coordinates provided.']);
exit;
}
if (!isWithinMajuro($lat, $lng)) {
echo json_encode(['success' => false, 'message' => 'The selected location is outside our service area.']);
exit;
}
$_SESSION['delivery_location'] = [
'lat' => $lat,
'lng' => $lng
];
echo json_encode(['success' => true, 'message' => 'Location saved.']);
} else {
echo json_encode(['success' => false, 'message' => 'No coordinates provided.']);
}
?>