From d06ea908538443b14ef6e3abdaaade881f7a69fa Mon Sep 17 00:00:00 2001 From: Felix-Vimalaratnam Date: Mon, 17 Jun 2024 18:43:13 +0200 Subject: [PATCH] =?UTF-8?q?validateur=20valid=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../application/controllers/Albums.php | 2 +- .../application/controllers/Chansons.php | 4 +- .../application/models/Model_music.php | 50 +++++- .../application/views/addAlbumtoplaylist.php | 10 +- .../views/addArtistestoplaylist.php | 8 +- .../application/views/addSongtoplaylist.php | 6 +- .../application/views/albums_list.php | 151 +++++++++--------- .../application/views/albums_view.php | 24 +-- .../application/views/artistes_list.php | 74 ++------- .../application/views/chansons_list.php | 134 ++++++++++------ .../application/views/create_playlist.php | 13 +- .../application/views/create_user.php | 12 +- .../views/deleteSongtoplaylist.php | 11 +- .../application/views/layout/footer.php | 1 - .../application/views/layout/header.php | 71 ++++---- .../application/views/random_Playlist.php | 46 +----- CodeIgniter-3.1.13/assets/script.js | 9 ++ CodeIgniter-3.1.13/assets/style.css | 35 +++- 18 files changed, 348 insertions(+), 313 deletions(-) diff --git a/CodeIgniter-3.1.13/application/controllers/Albums.php b/CodeIgniter-3.1.13/application/controllers/Albums.php index 75414d3..d98ce43 100644 --- a/CodeIgniter-3.1.13/application/controllers/Albums.php +++ b/CodeIgniter-3.1.13/application/controllers/Albums.php @@ -68,7 +68,7 @@ class Albums extends CI_Controller { $playlistId = $this->input->post('playlist_id'); $page = $this->input->get('page'); $this->model_music->AddAlbumtoPlaylist($playlistId,$id); - redirect($page); + redirect(echo $page); } } } diff --git a/CodeIgniter-3.1.13/application/controllers/Chansons.php b/CodeIgniter-3.1.13/application/controllers/Chansons.php index 1a6fdbf..b23eb6e 100644 --- a/CodeIgniter-3.1.13/application/controllers/Chansons.php +++ b/CodeIgniter-3.1.13/application/controllers/Chansons.php @@ -46,7 +46,7 @@ class Chansons extends CI_Controller { if ($this->form_validation->run() == FALSE){ $this->load->view('layout/header'); - $this->load->view('addSongtoplaylist', ["playlists" => $playlists]); + $this->load->view('addSongtoplaylist', ["id" => $id, "playlists" => $playlists]); $this->load->view('layout/footer'); }else{ $playlistId = $this->input->post('playlist_id'); @@ -62,7 +62,7 @@ class Chansons extends CI_Controller { if ($this->form_validation->run() == FALSE){ $this->load->view('layout/header'); - $this->load->view('deleteSongtoplaylist', ["playlists" => $playlists]); + $this->load->view('deleteSongtoplaylist', ["id" => $id, "playlists" => $playlists]); $this->load->view('layout/footer'); }else{ $playlistId = $this->input->post('playlist_id'); diff --git a/CodeIgniter-3.1.13/application/models/Model_music.php b/CodeIgniter-3.1.13/application/models/Model_music.php index 960a949..a9c3149 100644 --- a/CodeIgniter-3.1.13/application/models/Model_music.php +++ b/CodeIgniter-3.1.13/application/models/Model_music.php @@ -118,7 +118,8 @@ class Model_music extends CI_Model { } public function get_filtered_sorted_chansons($genres = [], $artists = [], $years = [], $albums = [], $sort_column = 'id', $sort_order = 'asc', $limit = 100, $offset = 0) { - $this->db->select('track.id as trackId, song.name,song.id,album.year,album.name as albumName, artist.name as artistName, genre.name as genreName'); + $this->db->distinct('song.id'); + $this->db->select('track.id as trackId, song.name,album.year,album.name as albumName, artist.name as artistName, genre.name as genreName'); $this->db->from('song'); $this->db->join('track', 'track.songId = song.id'); $this->db->join('album', 'album.id = track.albumId'); @@ -400,7 +401,52 @@ class Model_music extends CI_Model { if ($result->num_rows() > 0) { return true; } - return $query = false; + return false; + } + + public function SongInThisPlaylist($idtrack,$idplaylist){ + if (!is_array($idtrack)) { + $idtrack = array($idtrack); + } + + // Étape 1: Récupérer l'ID de la chanson à partir de l'un des IDs de piste fournis + $this->db->select('song.id as songId'); + $this->db->from('track'); + $this->db->join('song', 'song.id = track.songId'); + $this->db->where_in('track.id', $idtrack); + $query = $this->db->get(); + + // Vérifier si des résultats ont été trouvés + if ($query->num_rows() == 0) { + return false; // Si aucun résultat trouvé, retourner false + } + + // Récupérer le premier songId correspondant + $result = $query->row(); + $songId = $result->songId; + + // Étape 2: Récupérer tous les IDs de pistes associés à cette chanson + $this->db->select('track.id as trackId'); + $this->db->from('track'); + $this->db->where('track.songId', $songId); + $query = $this->db->get(); + $trackIds = array(); + foreach ($query->result() as $track) { + $trackIds[] = $track->trackId; + } + + // Étape 3: Vérifier si l'une des pistes de cette chanson est dans la playlist + $this->db->select('PlaylistSong.trackid as trackId'); + $this->db->from('PlaylistSong'); + $this->db->where_in('PlaylistSong.trackid', $trackIds); + $this->db->where('PlaylistSong.playlistId',$idplaylist); + $query = $this->db->get(); + + // Si on trouve au moins une piste de cette chanson dans la playlist, retourner true + if ($query->num_rows() > 0) { + return true; + } + return false; } public function TrackidSonginPlaylist($id) { diff --git a/CodeIgniter-3.1.13/application/views/addAlbumtoplaylist.php b/CodeIgniter-3.1.13/application/views/addAlbumtoplaylist.php index 51d6bee..682cb97 100644 --- a/CodeIgniter-3.1.13/application/views/addAlbumtoplaylist.php +++ b/CodeIgniter-3.1.13/application/views/addAlbumtoplaylist.php @@ -1,16 +1,16 @@ -Ajouter un album à une playlist +
Ajouter un album à une playlist
+
Playlists
- -
+
@@ -21,5 +21,3 @@
- - diff --git a/CodeIgniter-3.1.13/application/views/addArtistestoplaylist.php b/CodeIgniter-3.1.13/application/views/addArtistestoplaylist.php index f6f1d9b..2f3b21d 100644 --- a/CodeIgniter-3.1.13/application/views/addArtistestoplaylist.php +++ b/CodeIgniter-3.1.13/application/views/addArtistestoplaylist.php @@ -1,16 +1,15 @@ -Ajouter toutes les musique d'un artiste à une playlist +
Ajouter toutes les musique d'un artiste à une playlist
Playlists
-
@@ -20,6 +19,3 @@
- - - diff --git a/CodeIgniter-3.1.13/application/views/addSongtoplaylist.php b/CodeIgniter-3.1.13/application/views/addSongtoplaylist.php index 14f4653..57b8a92 100644 --- a/CodeIgniter-3.1.13/application/views/addSongtoplaylist.php +++ b/CodeIgniter-3.1.13/application/views/addSongtoplaylist.php @@ -1,4 +1,4 @@ -Ajouter une chanson à une playlist +
Ajouter une chanson à une playlist
Playlists
@@ -10,7 +10,7 @@
"; } ?> \ No newline at end of file diff --git a/CodeIgniter-3.1.13/application/views/chansons_list.php b/CodeIgniter-3.1.13/application/views/chansons_list.php index d785993..cc52adc 100644 --- a/CodeIgniter-3.1.13/application/views/chansons_list.php +++ b/CodeIgniter-3.1.13/application/views/chansons_list.php @@ -1,77 +1,88 @@ - - -
Filter Chansons
-
+
Sort Chansons
-
- - - - - - - - - - +
Chansons list
-= 0; $i--) { } } -foreach($chansons as $chanson){ - echo "
"; - echo "
"; - echo anchor("chansons/view/{$chanson->id}","{$chanson->name}"); - if($this->session->userdata('logged_in')){ - if($this->model_music->SongInPlaylist($chanson->trackId)){ - echo anchor("chansons/deleteSongtoPlaylist/{$chanson->trackId}?page={$url}",""); - } - echo anchor("chansons/addSongtoPlaylist/{$chanson->trackId}?page={$url}",""); - } - echo "
"; - echo ""; - echo ""; - echo "
{$chanson->year} - {$chanson->artistName}
-
"; -} +foreach($chansons_for_current_page as $chanson): ?> +
+
+
+
name; ?>
+ session->userdata('logged_in')): ?> + model_music->SongInPlaylist($chanson->trackId)): ?> + trackId}?page={$url}", ""); ?> + + trackId}?page={$url}", ""); ?> + +
+ + +
year; ?> - artistName; ?>
+
+
+ +
-?> - \ No newline at end of file + + + \ No newline at end of file diff --git a/CodeIgniter-3.1.13/application/views/create_playlist.php b/CodeIgniter-3.1.13/application/views/create_playlist.php index 5d5d5b7..a117d0e 100644 --- a/CodeIgniter-3.1.13/application/views/create_playlist.php +++ b/CodeIgniter-3.1.13/application/views/create_playlist.php @@ -1,14 +1,11 @@ -
- -
- -
- +
+ +
diff --git a/CodeIgniter-3.1.13/application/views/create_user.php b/CodeIgniter-3.1.13/application/views/create_user.php index 7534225..8db0982 100644 --- a/CodeIgniter-3.1.13/application/views/create_user.php +++ b/CodeIgniter-3.1.13/application/views/create_user.php @@ -6,23 +6,23 @@
- +
-
diff --git a/CodeIgniter-3.1.13/application/views/deleteSongtoplaylist.php b/CodeIgniter-3.1.13/application/views/deleteSongtoplaylist.php index 8303164..195f737 100644 --- a/CodeIgniter-3.1.13/application/views/deleteSongtoplaylist.php +++ b/CodeIgniter-3.1.13/application/views/deleteSongtoplaylist.php @@ -1,4 +1,4 @@ -Supprimer une chanson à une playlist +
Supprimer une chanson à une playlist
Playlists
@@ -7,19 +7,18 @@
- +
- +
- - - \ No newline at end of file diff --git a/CodeIgniter-3.1.13/application/views/layout/footer.php b/CodeIgniter-3.1.13/application/views/layout/footer.php index 63bbae9..7fb2bd6 100644 --- a/CodeIgniter-3.1.13/application/views/layout/footer.php +++ b/CodeIgniter-3.1.13/application/views/layout/footer.php @@ -1,3 +1,2 @@ - diff --git a/CodeIgniter-3.1.13/application/views/layout/header.php b/CodeIgniter-3.1.13/application/views/layout/header.php index dd56c15..2f4c50a 100644 --- a/CodeIgniter-3.1.13/application/views/layout/header.php +++ b/CodeIgniter-3.1.13/application/views/layout/header.php @@ -1,40 +1,37 @@ - - - MUSIC APP - + + + MUSIC APP + + + + + + +
+ +
- - - - - -
- diff --git a/CodeIgniter-3.1.13/application/views/random_Playlist.php b/CodeIgniter-3.1.13/application/views/random_Playlist.php index 3cda548..5a66eb1 100644 --- a/CodeIgniter-3.1.13/application/views/random_Playlist.php +++ b/CodeIgniter-3.1.13/application/views/random_Playlist.php @@ -1,42 +1,13 @@ - - -
Différents critères
-
- - - +
+ + +
-