'error', 'message' => 'Access denied: Your IP is not authorized to modify records.' ]); exit; } $id = $_POST['id']; // Fetch the current state of currently_watching $stmt = $conn->prepare("SELECT name, year, currently_watching FROM anime_list WHERE id = :id"); $stmt->bindParam(':id', $id, PDO::PARAM_INT); $stmt->execute(); $record = $stmt->fetch(PDO::FETCH_ASSOC); if (!$record) { http_response_code(404); echo json_encode([ 'status' => 'error', 'message' => 'Record not found.' ]); exit; } $anime_name = $record['name']; $anime_year = $record['year']; $currentState = (int)$record['currently_watching']; // Toggle currently_watching $newState = $currentState === 1 ? 0 : 1; $stmt = $conn->prepare("UPDATE anime_list SET currently_watching = :newState WHERE id = :id"); $stmt->bindParam(':newState', $newState, PDO::PARAM_INT); $stmt->bindParam(':id', $id, PDO::PARAM_INT); $stmt->execute(); // Log the action // $action_time = new DateTime('now', new DateTimeZone('GMT+5')); // $action_time_formatted = $action_time->format('Y-m-d H:i:s'); // $ip_address = $_SERVER['REMOTE_ADDR']; // $action_type = $newState === 1 ? 'set_currently_watching' : 'unset_currently_watching'; // $log_stmt = $conn->prepare("INSERT INTO action_logs (action_time, ip_address, anime_name, action_type, year) VALUES (:action_time, :ip_address, :anime_name, :action_type, :anime_year)"); // $log_stmt->bindParam(':action_time', $action_time_formatted); // $log_stmt->bindParam(':ip_address', $ip_address); // $log_stmt->bindParam(':anime_name', $anime_name); // $log_stmt->bindParam(':anime_year', $anime_year); // $log_stmt->bindParam(':action_type', $action_type); // $log_stmt->execute(); echo json_encode(['status' => 'success']);