diff --git a/codeigniter/application/controllers/Artistes.php b/codeigniter/application/controllers/Artistes.php index 8ef3be6..2985626 100644 --- a/codeigniter/application/controllers/Artistes.php +++ b/codeigniter/application/controllers/Artistes.php @@ -47,6 +47,5 @@ class Artistes extends CI_Controller { ]); $this->load->view('layout/footer'); } - } diff --git a/codeigniter/application/controllers/Playlist.php b/codeigniter/application/controllers/Playlist.php index 215e7a5..dd3f219 100644 --- a/codeigniter/application/controllers/Playlist.php +++ b/codeigniter/application/controllers/Playlist.php @@ -122,5 +122,26 @@ public function choix_playlist($albumId) { } redirect('playlist/view/' . $playlistId); } + + public function generate(){ + $this->load->view('layout/header'); + $this->load->view('playlist_generate'); + $this->load->view('layout/footer'); + } + + public function generate_random(){ + $numSongs = (int)$this->input->post('numSongs'); + $playlistName = $this->input->post('playlistName'); + $userId = $this->session->userdata('user_id'); + + if ($numSongs > 0 && !empty($playlistName)) { + $playlistId = $this->model_music->generate_random_playlist($numSongs, $playlistName, $userId); + redirect('playlist/view/' . $playlistId); + } else { + echo "Erreur : Veuillez entrer un nombre de chansons valide et un nom de playlist."; + } + } + + } ?> diff --git a/codeigniter/application/views/artistes_list.php b/codeigniter/application/views/artistes_list.php index 3d3e959..2197253 100644 --- a/codeigniter/application/views/artistes_list.php +++ b/codeigniter/application/views/artistes_list.php @@ -18,7 +18,7 @@ </form> <?php if(isset($is_search) && $is_search): ?> - <form action="<?= site_url('Albums'); ?>" method="get" class="back-form"> + <form action="<?= site_url('Artistes'); ?>" method="get" class="back-form"> <button type="submit" class="back-button">Retour à la liste complète</button> </form> <?php endif; ?> diff --git a/codeigniter/application/views/playlist_generate.php b/codeigniter/application/views/playlist_generate.php new file mode 100644 index 0000000..587fd2e --- /dev/null +++ b/codeigniter/application/views/playlist_generate.php @@ -0,0 +1,9 @@ +<h5>Générer une Playlist Aléatoire</h5> + +<form action="<?= site_url('playlist/generate_random'); ?>" method="post" class="generate-playlist-form"> + <input type="text" name="playlistName" placeholder="Nom de la playlist" required> + <input type="number" name="numSongs" placeholder="Nombre de chansons" required> + <button type="submit">Générer</button> +</form> + +<a href="<?= site_url('playlist'); ?>" class="btn btn-secondary">Retour aux playlists</a> diff --git a/codeigniter/application/views/playlist_list.php b/codeigniter/application/views/playlist_list.php index f1cea33..d84f91d 100644 --- a/codeigniter/application/views/playlist_list.php +++ b/codeigniter/application/views/playlist_list.php @@ -6,6 +6,10 @@ <button type="submit">Créer</button> </form> +<form action="<?= site_url('playlist/generate'); ?>" method="get" class="generate-playlist-form"> + <button type="submit">Générer une Playlist</button> +</form> + <!-- Affichez les playlist que nous avons --> <section class="playlists"> <?php foreach($playlists as $playlist): ?> @@ -15,7 +19,7 @@ <?= anchor("playlist/view/{$playlist->id}", "{$playlist->name}"); ?> </header> <!-- Bouton pour supprimer la playlist --> - <form action="<?= site_url('playlist/delete/' . $playlist->id); ?>" method="post" style="display:inline;"> + <form action="<?= site_url('playlist/delete/' . $playlist->id); ?>" method="post" class="btn-supp" style="display:inline;"> <button type="submit">Supprimer</button> </form> </article> diff --git a/codeigniter/application/views/playlist_view.php b/codeigniter/application/views/playlist_view.php index 3d18d25..2aa8ec8 100644 --- a/codeigniter/application/views/playlist_view.php +++ b/codeigniter/application/views/playlist_view.php @@ -7,34 +7,13 @@ <button type="submit">Rechercher et Ajouter</button> </form> -<!-- Section pour afficher les résultats de la recherche --> -<?php if (!empty($searchResults)): ?> - <section class="search-results"> - <h5>Résultats de la recherche :</h5> - <ul> - <?php foreach($searchResults as $song): ?> - <li> - <?= $song->name; ?> - <!-- Formulaire pour ajouter la chanson à la playlist --> - <form action="<?= site_url('playlist/add_song'); ?>" method="post" style="display:inline;"> - <input type="hidden" name="playlistId" value="<?= $playlistId; ?>"> - <input type="hidden" name="songId" value="<?= $song->id; ?>"> - <button type="submit">Ajouter</button> - </form> - </li> - <?php endforeach; ?> - </ul> - </section> - <p>Test</p> -<?php endif; ?> - <!-- Section pour afficher les chansons de son playlist --> <?php if (!empty($songs)): ?> <section class="current-songs"> <h5>Chansons actuelles :</h5> <ul> <?php foreach($songs as $song): ?> - <li> + <li class="play"> <?= $song->name; ?> <!-- Formulaire pour supprimer la chanson de la playlist --> <form action="<?= site_url('playlist/remove_song'); ?>" method="post" style="display:inline;"> diff --git a/codeigniter/assets/style.css b/codeigniter/assets/style.css index c3f7ee8..01a71ed 100644 --- a/codeigniter/assets/style.css +++ b/codeigniter/assets/style.css @@ -18,7 +18,7 @@ section.list img { text-overflow: ellipsis; display: grid; grid-template-columns: 200px 5px auto; - grid-template-rows: auto; + grid-template-rows: auto auto; justify-content: space-between; } @@ -210,8 +210,36 @@ form.search-form { margin-left: -200px; } +form.create-playlist-form { + width: 40%; + margin: 0 auto; +} +form.add-song-form { + width: 40%; + margin: 0 auto; +} +form.generate-playlist-form { + width: 40%; + margin: 0 auto; +} + +section.playlists { + display: flex; + justify-content: left; + flex-wrap: wrap; + gap: 100px; + margin-top: 50px; +} + +.btn-supp { + width: 30%; +} + +.btn.btn-secondary { +margin-left: 50px; +} /* bouton ajouter sur les albums et musique */ .ajout {