playlist unique au compte connecté

This commit is contained in:
2024-06-12 18:17:31 +02:00
parent 43921099be
commit 4638bc989c
7 changed files with 72 additions and 55 deletions

View File

@@ -42,24 +42,26 @@ class Model_music extends CI_Model {
return $query->result();
}
public function getPlaylist(){
public function getPlaylist($mail){
$query = $this->db->query(
"SELECT playlist.id, playlist.name
FROM playlist
FROM playlist NATURAL JOIN Login
where playlist.mail = ?
Group by playlist.id
"
",
array($mail)
);
return $query->result();
}
public function deletePlaylist($playlist_id){
public function deletePlaylist($playlist_id, $mail){
$this->db->query(
"DELETE FROM SongPlaylist WHERE id = ?", array($playlist_id)
"DELETE FROM SongPlaylist WHERE id = ?" , array($playlist_id)
);
// Ensuite, supprimer l'enregistrement dans playlist
$this->db->query(
"DELETE FROM playlist WHERE id = ?", array($playlist_id)
"DELETE FROM playlist WHERE id = ? AND playlist.mail = ?", array($playlist_id, $mail)
);
}
@@ -71,11 +73,12 @@ class Model_music extends CI_Model {
);
}
public function createPlaylist($name_playlist){
public function createPlaylist($name_playlist, $mail){
$name_playlist_escaped = $this->db->escape($name_playlist);
$query = $this->db->query(
"INSERT INTO playlist (name) VALUES ($name_playlist_escaped);
"
"INSERT INTO playlist (name, mail) VALUES (?, ?);
",
array($name_playlist_escaped, $mail)
);
}
@@ -217,27 +220,28 @@ class Model_music extends CI_Model {
}
}
public function duplicatePlaylist($playlist_id){
// Récupérer les informations de la playlist à dupliquer
$playlist = $this->db->get_where('playlist', array('id' => $playlist_id))->row();
// Créer une nouvelle entrée pour la playlist avec les mêmes informations
$data = array(
'name' => $playlist->name . ' (Copy)',
);
$this->db->insert('playlist', $data);
// Récupérer l'ID de la nouvelle playlist
$new_playlist_id = $this->db->insert_id();
// Dupliquer les chansons de la playlist originale dans la nouvelle playlist
$this->db->query(
"INSERT INTO SongPlaylist (id, name)
SELECT ?, name
FROM SongPlaylist
WHERE id = ?",
array($new_playlist_id, $playlist_id));
public function duplicatePlaylist($playlist_id, $mail){
// Récupérer les informations de la playlist à dupliquer
$playlist = $this->db->get_where('playlist', array('id' => $playlist_id))->row();
// Créer une nouvelle entrée pour la playlist avec les mêmes informations
$data = array(
'name' => $playlist->name . ' (Copy)',
'mail' => $mail
);
$this->db->insert('playlist', $data);
// Récupérer l'ID de la nouvelle playlist
$new_playlist_id = $this->db->insert_id();
// Dupliquer les chansons de la playlist originale dans la nouvelle playlist
$this->db->query(
"INSERT INTO SongPlaylist (id, name)
SELECT ?, name
FROM SongPlaylist
WHERE id = ?",
array($new_playlist_id, $playlist_id));
}
}