a.song-list-button img {
image-rendering: pixelated;
- width: 24px;
+ width: 32px;
}
div.song-details {
flex-direction: column;
gap: 5px;
align-items: left;
- margin: 5px;
+}
+
+div.song-description {
+ margin: 10px;
+}
+
+div.song-tags {
+ margin: 10px;
}
[hidden] {
/* Song Player */
#scroll-padding {
- height: 110px;
+ height: 160px;
}
-div.player {
+div.player-container {
position: fixed;
max-width: 700px;
margin: auto;
- margin: 10px;
- padding: 10px;
- box-shadow: 0px 0px 20px 0px;
- border-radius: 10px;
bottom: 0;
left: 0;
right: 0;
- height: 100px;
+}
+
+div.player {
+ margin: 10px;
+ box-shadow: 0px 0px 20px 0px;
+ border-radius: 10px;
+ min-height: 100px;
/*border-top: 3px solid;*/
background: var(--yellow);
}
justify-content: center;
align-items: center;
gap: 10px;
+ padding: 10px;
}
div.player-controls {
align-items: center;
gap: 10px;
height: 50%;
+ padding: 10px;
}
a.player-button {
a.player-button img {
image-rendering: pixelated;
- width: 24px;
+ width: 32px;
}
#player-position {
display: inline-block;
position: relative;
width: 50%;
- height: 100%;
+ height: 32px;
}
#player-position-bar {
display: inline-block;
background-color: var(--purple);
left: 100;
- top: 23px;
+ top: 14px;
width: 100%;
height: 4px;
}
display: inline-block;
visibility: hidden;
background-color: var(--pink);
- top: 15px;
+ top: 6px;
width: 20px;
height: 20px;
border-radius: 50%;
<div id="scroll-padding"></div>
<!-- Song Player -->
- <div class="player" id="player" hidden>
- <div class="player-info">
- <!-- TODO: Show song title, artist -->
- <span id="player-title">Not Playing</span>
- <span id="player-info-sep" hidden>-</span>
- <a id="player-artist" hidden></a>
- </div>
- <div class="player-controls">
- <a href="javascript:songPrevious()" class="player-button">
- <img src="/static/lsp_btn_prev.gif" alt="Previous">
- </a>
- <a href="javascript:songPlayPause()" class="player-button">
- <img src="/static/lsp_btn_play.gif" alt="Play">
- </a>
- <a href="javascript:songNext()" class="player-button">
- <img src="/static/lsp_btn_next.gif" alt="Next">
- </a>
- <div id="player-position">
- <span id="player-position-bar"></span>
- <span id="player-position-dot"></span>
+ <div class="player-container" id="player-container">
+ <div class="player" id="player" hidden>
+ <div class="player-info">
+ <!-- TODO: Show song title, artist -->
+ <span id="player-title">Not Playing</span>
+ <span id="player-info-sep" hidden>-</span>
+ <a id="player-artist" hidden></a>
+ </div>
+ <div class="player-controls">
+ <a href="javascript:songPrevious()" class="player-button">
+ <img src="/static/lsp_btn_prev.gif" alt="Previous">
+ </a>
+ <a href="javascript:songPlayPause()" class="player-button">
+ <img src="/static/lsp_btn_pause.gif" alt="Play" id="play-pause-button">
+ </a>
+ <a href="javascript:songNext()" class="player-button">
+ <img src="/static/lsp_btn_next.gif" alt="Next">
+ </a>
+ <div id="player-position">
+ <span id="player-position-bar"></span>
+ <span id="player-position-dot"></span>
+ </div>
+ <span class="player-time" id="player-current-time">0:00</span>
+ <span class="player-time-sep">/</span>
+ <span class="player-time" id="player-total-time">0:00</span>
+ <audio id="player-audio"></audio>
</div>
- <span class="player-time" id="player-current-time">0:00</span>
- <span class="player-time-sep">/</span>
- <span class="player-time" id="player-total-time">0:00</span>
- <audio id="player-audio"></audio>
- <!-- TODO: Volume control -->
</div>
</div>
</body>
</div>
<div class="song-buttons">
- <!-- Details Button -->
- <a href="#" onclick="return showDetails(event)" class="song-list-button">
- <img src="/static/lsp_btn_show.gif" alt="Show Details">
- </a>
-
<!-- Owner-Specific Buttons (Edit/Delete) -->
{% if session["userid"] == song.userid %}
<a href="/edit-song?songid={{ song.songid }}" class="song-list-button">
</a>
{% endif %}
+ <!-- Details Button -->
+ <a href="#" onclick="return showDetails(event)" class="song-list-button">
+ <img src="/static/lsp_btn_show.gif" alt="Show Details">
+ </a>
+
<!-- Play Button -->
<a href="#" onclick="return play(event)" class="song-list-button">
<img src="/static/lsp_btn_play.gif" alt="Play">
<div class="song-details" hidden>
<!-- Song Description -->
+ {% if song.description %}
<div class="song-description">{{ song.description }}</div>
+ {% endif %}
<!-- Song Tags -->
<div class="song-tags">
if (child.hidden) {
// Show details
child.hidden = false;
- event.target.textContent = "Hide Details"
+ event.target.alt = "Hide Details";
+ event.target.src = "/static/lsp_btn_hide.gif";
}
else {
// Hide details
child.hidden = true;
- event.target.textContent = "Show Details"
+ event.target.alt = "Show Details";
+ event.target.src = "/static/lsp_btn_show.gif";
}
}
}