53 lines
1.7 KiB
PHP
53 lines
1.7 KiB
PHP
<?php
|
|
|
|
// controllers/MovieController.php
|
|
|
|
require_once __DIR__ . '/../models/Movie.php';
|
|
|
|
class MovieController {
|
|
private $movieModel;
|
|
|
|
public function __construct($db) {
|
|
$this->movieModel = new Movie($db);
|
|
}
|
|
|
|
public function add($data) {
|
|
// Validation basique
|
|
if (!isset($data['tmdb_id'], $data['title'])) {
|
|
http_response_code(400);
|
|
echo json_encode(["error" => "Données manquantes"]);
|
|
return;
|
|
}
|
|
|
|
$res = $this->movieModel->add($data['user_id'], $data['tmdb_id'], $data['title'], $data['poster_path'] ?? null, $data['media_type'] ?? 'film');
|
|
echo json_encode(["success" => $res]);
|
|
}
|
|
|
|
public function share($data) {
|
|
if (!isset($data['movie_id'])) {
|
|
http_response_code(400);
|
|
echo json_encode(["error" => "ID du film manquant"]);
|
|
return;
|
|
}
|
|
$res = $this->movieModel->share($data['movie_id'], $data['user_id']);
|
|
echo json_encode(["success" => $res]);
|
|
}
|
|
|
|
public function getLists($data) {
|
|
// 1. On ignore le partner_id du token (qui est périmé).
|
|
// On va chercher l'ID du partenaire actuel dans la base de données.
|
|
$stmt = $this->db->prepare("SELECT partner_id FROM users WHERE id = ?");
|
|
$stmt->execute([$data['user_id']]);
|
|
$realPartnerId = $stmt->fetchColumn() ?: null;
|
|
|
|
// 2. On appelle le modèle avec la VRAIE valeur
|
|
$lists = $this->movieModel->getLists($data['user_id'], $realPartnerId);
|
|
|
|
// 3. On renvoie le tout
|
|
echo json_encode([
|
|
"success" => true,
|
|
"partner_id" => $realPartnerId, // Pour que ton JS sache aussi qui c'est
|
|
"lists" => $lists
|
|
]);
|
|
}
|
|
} |