diff --git a/CodeIgniter-3.1.13/application/controllers/Albums.php b/CodeIgniter-3.1.13/application/controllers/Albums.php
index cc6b8d8..2345a1d 100644
--- a/CodeIgniter-3.1.13/application/controllers/Albums.php
+++ b/CodeIgniter-3.1.13/application/controllers/Albums.php
@@ -6,8 +6,10 @@ class Albums extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->model('model_music');
+ $this->load->model('Model_playlist');
$this->load->helper('url');
$this->load->helper('html');
+ $this->load->library('session');
}
public function index($page = 1){
@@ -22,6 +24,11 @@ class Albums extends CI_Controller {
$albums = $this->model_music->getAlbums($limit, $offset, $order_by, $genre_id, $artist_id);
$total_albums = $this->model_music->get_total_albums($genre_id, $artist_id);
+ if ($this->session->userdata('user_id')) {
+ $user_id = $this->session->userdata('user_id');
+ $data['user_playlists'] = $this->Model_playlist->get_user_playlists($user_id);
+ }
+
$data['total_pages'] = ceil($total_albums / $limit);
$data['current_page'] = $page;
$data['albums'] = $albums;
diff --git a/CodeIgniter-3.1.13/application/controllers/Musiques.php b/CodeIgniter-3.1.13/application/controllers/Musiques.php
index 81ee14c..c43df3c 100644
--- a/CodeIgniter-3.1.13/application/controllers/Musiques.php
+++ b/CodeIgniter-3.1.13/application/controllers/Musiques.php
@@ -6,9 +6,11 @@ class Musiques extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->model('Model_music');
+ $this->load->model('Model_playlist');
$this->load->library('pagination');
$this->load->helper('url');
$this->load->helper('html');
+ $this->load->library('session');
}
public function index($page = 1){
@@ -31,6 +33,11 @@ class Musiques extends CI_Controller {
$genres = $this->Model_music->getGenres();
$artists = $this->Model_music->getArtists();
+ if ($this->session->userdata('user_id')) {
+ $user_id = $this->session->userdata('user_id');
+ $data['user_playlists'] = $this->Model_playlist->get_user_playlists($user_id);
+ }
+
$data['musiques'] = $musiques;
$data['total_pages'] = $total_pages;
$data['current_page'] = $current_page;
diff --git a/CodeIgniter-3.1.13/application/controllers/Playlists.php b/CodeIgniter-3.1.13/application/controllers/Playlists.php
index 34ea4d0..80ca60f 100644
--- a/CodeIgniter-3.1.13/application/controllers/Playlists.php
+++ b/CodeIgniter-3.1.13/application/controllers/Playlists.php
@@ -258,6 +258,25 @@ class Playlists extends CI_Controller {
$this->load->view('layout/footer_dark');
}
}
+
+ public function add_album_to_playlist($album_id, $playlist_id) {
+ // Vérifiez si l'utilisateur est connecté
+ if (!$this->session->userdata('user_id')) {
+ redirect('utilisateur/connexion');
+ }
+
+ // Ajouter toutes les chansons de l'album à la playlist spécifiée
+ $songs = $this->Model_music->get_songs_by_album($album_id);
+ foreach ($songs as $song) {
+ $data = array(
+ 'playlist_id' => $playlist_id,
+ 'song_id' => $song->id
+ );
+ $this->Model_playlist->add_song_to_playlist($data);
+ }
+
+ redirect('playlists/view/' . $playlist_id);
+ }
public function view($playlist_id) {
// Vérifiez si la playlist est accessible à l'utilisateur actuellement connecté
@@ -295,6 +314,23 @@ class Playlists extends CI_Controller {
redirect('erreur/page_non_autorisee');
}
}
+
+ public function add_music_to_playlist($music_id, $playlist_id) {
+ // Vérifiez si l'utilisateur est connecté
+ if (!$this->session->userdata('user_id')) {
+ redirect('utilisateur/connexion');
+ }
+
+ // Ajoutez la musique à la playlist spécifiée
+ $data = array(
+ 'playlist_id' => $playlist_id,
+ 'song_id' => $music_id // Utilisez 'song_id' au lieu de 'music_id'
+ );
+ $this->Model_playlist->add_song_to_playlist($data);
+
+ // Redirigez l'utilisateur vers la vue de la playlist
+ redirect('playlists/view/' . $playlist_id);
+ }
public function add_artist($playlist_id) {
diff --git a/CodeIgniter-3.1.13/application/models/Model_playlist.php b/CodeIgniter-3.1.13/application/models/Model_playlist.php
index 6313011..9a721d3 100644
--- a/CodeIgniter-3.1.13/application/models/Model_playlist.php
+++ b/CodeIgniter-3.1.13/application/models/Model_playlist.php
@@ -54,6 +54,7 @@ class Model_playlist extends CI_Model {
return $this->db->insert('playlist_song', $data);
}
+
public function song_exists_in_playlist($playlist_id, $song_id) {
$this->db->where('playlist_id', $playlist_id);
diff --git a/CodeIgniter-3.1.13/application/views/albums_list.php b/CodeIgniter-3.1.13/application/views/albums_list.php
index 0c73b06..c7d986f 100644
--- a/CodeIgniter-3.1.13/application/views/albums_list.php
+++ b/CodeIgniter-3.1.13/application/views/albums_list.php
@@ -38,6 +38,14 @@
+ session->userdata('user_id')): ?>
+
+
+
@@ -57,3 +65,12 @@