PageSourceSearch

https://gv-lastfm-playground.vercel.app/js/TopListener.js

js gv-lastfm-playground.vercel.app collected 2026-10-03 07:02:34 UTC 2,815 bytes, 90 lines download raw bytes

1export const renderTopListener = () => {
2  let topListenerArtist = dummyData.top_100_listener.artist;
3  let topListenerAlbum = dummyData.top_100_listener.album;
4  let topListenerTrack = dummyData.top_100_listener.track;
5
6  if (topListenerArtist) {
7    document.querySelector(
8      "#introTopListenerArtistRank"
9    ).innerHTML = `<b>${getOrdinal(
10      topListenerArtist.rank
11    )}</b> top listener of this`;
12    document.querySelector(
13      "#topListenerArtistRank"
14    ).innerHTML = `You ranked #${topListenerArtist.rank} on Last.fm`;
15    document.querySelector(
16      "#topListenerArtistScrobbles"
17    ).innerHTML = `${topListenerArtist.scrobbles} scrobbles`;
18    document.querySelector("#topListenerArtistName").innerHTML =
19      topListenerArtist.name;
20
21    document
22      .querySelector("#topListenerArtistImage")
23      .setAttribute(
24        "src",
25        getImageUrl(topListenerArtist, null, null, "no_artist_fallback.jpg")
26      );
27  }
28
29  if (topListenerAlbum) {
30    document.querySelector(
31      "#introTopListenerAlbumtRank"
32    ).innerHTML = `You were the <b>${getOrdinal(
33      topListenerAlbum.rank
34    )}</b> top listener of this Album...`;
35    document.querySelector(
36      "#topListenerAlbumRank"
37    ).innerHTML = `You ranked #${topListenerAlbum.rank} on Last.fm`;
38    document.querySelector(
39      "#topListenerAlbumScrobbles"
40    ).innerHTML = `${topListenerAlbum.scrobbles} scrobbles`;
41    document.querySelector("#topListenerAlbumName").innerHTML =
42      topListenerAlbum.name;
43
44    document.querySelector("#topListenerAlbumArtistName").innerHTML =
45      topListenerAlbum.artist.name;
46
47    document
48      .querySelector("#topListenerAlbumImage")
49      .setAttribute(
50        "src",
51        getImageUrl(
52          topListenerAlbum,
53          topListenerAlbum.artist,
54          null,
55          "no_album_fallback.jpg"
56        )
57      );
58  }
59
60  if (topListenerTrack) {
61    document.querySelector(
62      "#introTopListenerTrackRank"
63    ).innerHTML = `You were the <b>${getOrdinal(
64      topListenerTrack.rank
65    )}</b> top listener of this Track...`;
66    document.querySelector(
67      "#topListenerTrackRank"
68    ).innerHTML = `You ranked #${topListenerTrack.rank} on Last.fm`;
69    document.querySelector(
70      "#topListenerTrackScrobbles"
71    ).innerHTML = `${topListenerTrack.scrobbles} scrobbles`;
72    document.querySelector("#topListenerTrackName").innerHTML =
73      topListenerTrack.name;
74
75    document.querySelector("#topListenerTrackArtistName").innerHTML =
76      topListenerTrack.artist.name;
77
78    document
79      .querySelector("#topListenerTrackImage")
80      .setAttribute(
81        "src",
82        getImageUrl(
83          topListenerTrack.album,
84          topListenerTrack.primary_album,
85          topListenerTrack.artist,
86          "no_track_fallback.jpg"
87        )
88      );
89  }
90};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.