40 lines
1.3 KiB
PHP
40 lines
1.3 KiB
PHP
<?php
|
|
session_start();
|
|
|
|
if (!isset($_SESSION['user_id'])) {
|
|
header("Location: login.php");
|
|
exit();
|
|
}
|
|
|
|
require_once 'db/config.php';
|
|
|
|
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|
$event_id = $_POST['event_id'] ?? null;
|
|
$title = $_POST['title'] ?? '';
|
|
$description = $_POST['description'] ?? '';
|
|
$start_datetime = $_POST['start_datetime'] ?? '';
|
|
$end_datetime = $_POST['end_datetime'] ?? '';
|
|
$event_type_id = $_POST['event_type_id'] ?? null;
|
|
|
|
// For now, we don't support updating recurring events.
|
|
// This will be implemented in the future.
|
|
|
|
if (empty($event_id) || empty($title) || empty($start_datetime) || empty($end_datetime) || empty($event_type_id)) {
|
|
header("Location: calendar.php?error=empty_fields");
|
|
exit();
|
|
}
|
|
|
|
$pdo = db();
|
|
$stmt = $pdo->prepare("UPDATE calendar_events SET title = ?, description = ?, start_datetime = ?, end_datetime = ?, event_type_id = ? WHERE id = ?");
|
|
|
|
try {
|
|
$stmt->execute([$title, $description, $start_datetime, $end_datetime, $event_type_id, $event_id]);
|
|
header("Location: calendar.php");
|
|
exit();
|
|
} catch (PDOException $e) {
|
|
// Handle database error
|
|
error_log($e->getMessage());
|
|
header("Location: calendar.php?error=db_error");
|
|
exit();
|
|
}
|
|
} |