Untitled
unknown
plain_text
2 years ago
3.6 kB
7
Indexable
const corsProxy = "https://cors-anywhere.herokuapp.com/"; const endpoint = "https://api.deezer.com"; const RAP_PLAYLIST_ID = "2021626162"; const playlistIds = [RAP_PLAYLIST_ID, "4676814864", "8074584322", "11153531204"]; const playlistRapBtn = document.getElementById("playlistRap"); const playlistRockBtn = document.getElementById("playlistRock"); const playlistRnbBtn = document.getElementById("playlistRnb"); const playlistPopularBtn = document.getElementById("playlistPopular"); playlistRapBtn.addEventListener("click", function () { getPlaylist(RAP_PLAYLIST_ID); }); playlistRockBtn.addEventListener("click", function () { getPlaylist(8074584322); }); playlistRnbBtn.addEventListener("click", function () { getPlaylist(2021626162).then((r) => { console.log(r); const numberOfTracks = 10; const randomTracks = getRandomTracks(numberOfTracks, r.tracks); console.log("randomTracks : ", randomTracks); localStorage.setItem("randomTracks", JSON.stringify(randomTracks)); const receivedTracks = localStorage.getItem("randomTracks"); console.log("receivedTracks ----> ", JSON.parse(receivedTracks)); }); }); playlistPopularBtn.addEventListener("click", function () { getPlaylist(11153531204); }); document.getElementById("playlistRap").addEventListener( "click", function () { console.log("click on rap button"); window.location.href = "quizz_rap.html"; }, false, ); document.getElementById("playlistRock").addEventListener("click", function () { window.location.href = "quizz_rock.html"; }); /* document.getElementById("playlistRnb").addEventListener("click", function () { window.location.href = "quizz_rnb.html"; }); */ document.getElementById("playlistPopular").addEventListener("click", function () { window.location.href = "quizz_popular.html"; }); async function getPlaylists() { try { const promises = playlistIds.map(async (id) => { const response = await fetch(`${endpoint}/playlist/${id}`); const data = await response.json(); return data; }); const playlists = await Promise.all(promises); return playlists; } catch (error) { console.error(error); } } async function getPlaylist(id) { try { const response = await fetch(`${corsProxy}${endpoint}/playlist/${id}`); const data = await response.json(); return data; } catch (error) { console.error(error); } } function getRandomInt(max) { return Math.floor(Math.random() * max); } function getRandomTracks (numberOfTracks, tracks) { const chosenTracks = []; let i = 0; while (i < numberOfTracks) { const randIndex = getRandomInt(tracks.data.length); const chosenTrack = tracks.data[randIndex]; if (chosenTracks.length === 0) { chosenTracks.push(chosenTrack); i++; } else if (chosenTracks.length && !chosenTracks.map(function(c) { return c.id}).includes(chosenTrack.id)) { chosenTracks.push(chosenTrack); i++; } } return chosenTracks; }; const titleWidgetElement = document.querySelector('[data-testid="widget-player-content-title"]'); titleWidgetElement.style.display = "none"; const subtitleWidgetElement = document.querySelector( '[data-testid="widget-player-content-subtitle"]', ); subtitleWidgetElement.style.display = "none"; const imgWidgetElement = document.querySelector('[data-testid="widget-player-cover-image"]'); imgWidgetElement.style.display = "none";
Editor is loading...