<?php
// salvar_geocalizacao.php — Persiste lat/lng do cliente
require_once __DIR__ . '/auth.php';
require_once __DIR__ . '/functions.php';
requireLogin();

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    header('Location: clientes.php'); exit;
}

$id  = (int)($_POST['id']        ?? 0);
$lat = trim($_POST['latitude']   ?? '');
$lng = trim($_POST['longitude']  ?? '');

if (!$id || !$lat || !$lng) {
    header("Location: cliente_detalhe.php?id=$id&erro=Coordenadas+inválidas"); exit;
}

// Valida que são números
if (!is_numeric($lat) || !is_numeric($lng)) {
    header("Location: geocalizacao.php?id=$id&erro=1"); exit;
}

try {
    $stmt = pdo()->prepare("UPDATE clientes SET latitude = ?, longitude = ? WHERE id = ?");
    $stmt->execute([$lat, $lng, $id]);
    header("Location: cliente_detalhe.php?id=$id&msg=Geolocalização+atualizada+com+sucesso!");
} catch (PDOException $e) {
    header("Location: geocalizacao.php?id=$id&erro=" . urlencode($e->getMessage()));
}
exit;
