audio.currentTime = 0;
audio.play();
+ var pfp = document.getElementById("player-pfp")
+ pfp.style.display = "inline-block";
+ pfp.src = `/pfp/${songData.userid}`
+
var title = document.getElementById("player-title");
title.textContent = songData.title;
artist.href = `/users/${songData.username}`;
artist.hidden = false;
+ var collabs = document.getElementById("player-collabs");
+ collabs.textContent = "";
+
+ var collaborators = songData.collaborators;
+ for (i = 0; i < collaborators.length; i ++) {
+ if (collaborators[i].startsWith("@")) {
+ var collabname = collaborators[i].substr(1, collaborators[i].length - 1);
+ var link = document.createElement("a");
+ link.href = `/users/${collabname}`;
+ link.classList.add("profile-link")
+ link.textContent = collabname;
+ collabs.appendChild(link);
+ }
+ else {
+ var name = document.createElement("span");
+ name.textContent = " " + collaborators[i];
+ collabs.appendChild(name);
+ }
+ }
+
+ //collabs.textContent = songData.collaborators.join(", ")
+
+
if ("mediaSession" in navigator) {
navigator.mediaSession.metadata = new MediaMetadata({
title: songData.title,
<div class="player-container" id="player-container">
<div class="player" id="player" hidden>
<div class="player-info">
- <!-- TODO: Show song title, artist -->
+ <img id="player-pfp" class="small-pfp" src="" onerror="this.style.display = 'none'">
<span id="player-title">Not Playing</span>
<span id="player-info-sep" hidden>-</span>
<a id="player-artist" class="profile-link" hidden></a>
+ <span id="player-collabs"></span>
</div>
<div class="player-controls">
<button onclick="songPrevious()" class="player-button">
NOW
-- PFP in song list
-- Additional song info in player (collabs, description, tags, pfp)
- Dark mode/site color customization
- YouTube importer
- Albums?
LATER
+- Show song info for song in player (description, tags)
- Song/User Search
- Song sorter for song lists
- Song downloads