getConnection(); function yn(string $k): string { return (isset($_POST[$k]) && $_POST[$k] === 'Y') ? 'Y' : 'N'; } $ccEmail = trim($_POST['event_notify_email'] ?? ''); $reminderH = max(1, min(168, (int) ($_POST['event_reminder_hours'] ?? 24))); $offerH = max(1, min(336, (int) ($_POST['event_offer_expiry_hours'] ?? 24))); try { // Individua la riga singola di configurazione $idption = (int) $pdo->query("SELECT idption FROM `option` ORDER BY idption ASC LIMIT 1")->fetchColumn(); $sql = "UPDATE `option` SET event_notify_email = :cc_email, event_cc_booking = :cc_booking, event_cc_promotion = :cc_promotion, event_cc_user_cancel = :cc_user_cancel, event_cc_event_cancel = :cc_event_cancel, event_cc_reminder = :cc_reminder, event_reminder_enabled = :rem_enabled, event_reminder_hours = :rem_hours, event_offer_expiry_hours = :offer_hours WHERE idption = :idption"; $pdo->prepare($sql)->execute([ ':cc_email' => $ccEmail !== '' ? $ccEmail : null, ':cc_booking' => yn('event_cc_booking'), ':cc_promotion' => yn('event_cc_promotion'), ':cc_user_cancel' => yn('event_cc_user_cancel'), ':cc_event_cancel' => yn('event_cc_event_cancel'), ':cc_reminder' => yn('event_cc_reminder'), ':rem_enabled' => yn('event_reminder_enabled'), ':rem_hours' => $reminderH, ':offer_hours' => $offerH, ':idption' => $idption, ]); header('Location: event_options.php?message=success'); exit(); } catch (Throwable $ex) { error_log('[event_options_save] ' . $ex->getMessage()); header('Location: event_options.php?message=error'); exit(); }