Add Remove & Mark watched movie

This commit is contained in:
2026-07-11 14:08:44 +02:00
parent 535fe6041b
commit 72d563416b
2 changed files with 35 additions and 4 deletions
+14
View File
@@ -119,6 +119,20 @@ switch ($route) {
} else { http_response_code(405); }
break;
case 'remove-movie':
if ($method === 'POST') {
$data['user_id'] = getAuthenticatedUserId($jwt_secret);
$movieController->remove($data);
} else { http_response_code(405); }
break;
case 'mark-watched':
if ($method === 'POST') {
$data['user_id'] = getAuthenticatedUserId($jwt_secret);
$movieController->markWatched($data);
} else { http_response_code(405); }
break;
default:
http_response_code(404);
echo json_encode(["error" => "Route /" . $route . " non trouvée"]);
+19 -2
View File
@@ -33,7 +33,7 @@ class Movie {
}
return true;
}
}
public function share($movieId, $userId) {
$stmt = $this->db->prepare("UPDATE movies SET is_common = 1 WHERE id = ? AND user_id = ?");
@@ -56,10 +56,27 @@ class Movie {
}
// 3. Commune
$stmt = $this->db->prepare("SELECT * FROM movies WHERE is_common = 1 ORDER BY added_at DESC");
$stmt = $this->db->prepare("
SELECT *
FROM movies
WHERE is_common = 1
GROUP BY tmdb_id
ORDER BY added_at DESC
");
$stmt->execute();
$common = $stmt->fetchAll(PDO::FETCH_ASSOC);
return ["perso" => $perso, "partner" => $partner, "common" => $common];
}
public function remove($movieId, $userId) {
$stmt = $this->db->prepare("DELETE FROM movies WHERE id = ? AND user_id = ?");
return $stmt->execute([$movieId, $userId]);
}
public function markWatched($movieId, $userId) {
// Si tu n'as pas de colonne 'watched', ajoute-la en BDD : ALTER TABLE movies ADD COLUMN watched BOOLEAN DEFAULT 0;
$stmt = $this->db->prepare("UPDATE movies SET watched = 1 WHERE id = ? AND user_id = ?");
return $stmt->execute([$movieId, $userId]);
}
}