prepare("SELECT * FROM episodes WHERE id = ?"); $stmt->execute([$id]); $episode = $stmt->fetch(); if (!$episode) { header("Location: dashboard.php"); exit; } $error = ''; $success = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $title = $_POST['title'] ?? ''; $description = $_POST['description'] ?? ''; $release_date = $_POST['release_date'] ?? $episode['release_date']; $fileName = $episode['audio_file']; $coverImage = $episode['cover_image']; // Check if new cover image is uploaded if (isset($_FILES['cover_image']) && $_FILES['cover_image']['error'] === 0) { $newCover = uploadImage($_FILES['cover_image']); if ($newCover) { if ($episode['cover_image']) { $oldCoverPath = "../assets/uploads/images/" . $episode['cover_image']; if (file_exists($oldCoverPath)) unlink($oldCoverPath); } $coverImage = $newCover; } } // Check if new audio file is uploaded if (isset($_FILES['audio_file']) && $_FILES['audio_file']['error'] === 0) { $newFileName = uploadAudio($_FILES['audio_file']); if ($newFileName) { // Delete old file $oldFilePath = "../assets/uploads/audio/" . $episode['audio_file']; if (file_exists($oldFilePath)) unlink($oldFilePath); $fileName = $newFileName; } else { $error = "Error uploading new audio file."; } } if (!$error) { $stmt = $pdo->prepare("UPDATE episodes SET title = ?, description = ?, audio_file = ?, cover_image = ?, release_date = ? WHERE id = ?"); if ($stmt->execute([$title, $description, $fileName, $coverImage, $release_date, $id])) { logActivity($_SESSION['admin_id'], 'EPISODE_UPDATE', "Updated episode: $title (ID: $id)"); $success = "Episode updated successfully!"; // Refresh episode data $stmt = $pdo->prepare("SELECT * FROM episodes WHERE id = ?"); $stmt->execute([$id]); $episode = $stmt->fetch(); } else { $error = "Failed to update episode."; } } } ?>