Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
  <script src="https://unpkg.com/adaptr-music-player@latest/dist/adaptr-script.js"></script>
</head>
<body>
  Click on a station to view 20 of its tracks  
  
  <ul id="station-list">
  </ul>
  <div id="track-list-title"></div>
  <ul id="track-list"></ul>
  
  
  
</body>
</html>
 
let stationList = document.getElementById('station-list');
let playPauseButton = document.getElementById('play-pause-button');
let skipButton = document.getElementById('skip-button');
let stopButton = document.getElementById('stop-button');
let player = new Adaptr.Player('adaptr', 'adaptr');
player.initialize()
  .then(({ stations }) => {
    // player successfully initialized.
    let items = stations.map((station) => {
      return '<li data-name="' + station.name + '">' + station.name + '</li>';
    });
    stationList.innerHTML = items.join('');
    document.getElementById('station-list').addEventListener('click', (event) => {
      if (event.target.dataset.name) {
        const name = event.target.dataset.name;
        
        document.getElementById('track-list-title').innerHTML = name;
        
        player.fetchAudioFilesInStation(name, 0, 20)
          .then((pageOfAudioFiles) => {
            let items = pageOfAudioFiles.audioFiles.map((audioFile) => {
              return '<li>' + audioFile.track.title + ' by ' + audioFile.artist.name + '</li>';
            })
            
            document.getElementById('track-list').innerHTML = items.join('');
          })
      }
    }, true);
  })
  .catch((e) => {
  console.log("error", e);
    // player unsuccessfully initialized, likely due to licensing
    // restrictions. No music is available for playback.
    document.getElementById('warning').innerHTML = 'Sorry, music is not available in your area.';
  });
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers