btrtracks/public/index.html

128 lines
4.6 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="index.css">
<title>Music Server</title>
</head>
<body>
<div class="container">
<div class="inline-flex">
<div class="dropdown" id="playlist-select">
<div class="dropdown-button" data-value="all">All Tracks</div>
<div class="dropdown-content">
<div data-value="all">All Tracks</div>
<div data-value="queue">Queue</div>
<div data-value="options">Options</div>
</div>
</div>
<input type="text" id="search" placeholder="Search" class="flex-row">
<span class="btn-clear" id="search-clear"></span>
</div>
<div class="table-container flex-row">
<table width="100%">
<tbody id="ttable">
<tr>
<th class="small">#</th>
<th>Track</th>
<th>Artist</th>
<th>Album</th>
<th class="small">Year</th>
<th class="small">Duration</th>
</tr>
</tbody>
</table>
</div>
<div class="pages flex-row">
<div class="paging btn" id="jump-first"><<</div>
<div class="paging btn inner" id="jump-prev"><</div>
<div class="paging bg" id="pagenum">0 / 0</div>
<div class="paging btn inner" id="jump-next">></div>
<div class="paging btn" id="jump-last">>></div>
</div>
<div class="player flex-row">
<div class="inline-flex">
<div id="queue" class="queue-tag" style="display: none;">Queue</div>
<div class="playing-bar">
<span id="playing">Nothing playing</span>
<canvas id="visualizer" height="40"></canvas>
</div>
</div>
<audio id="player"></audio>
<div class="player-controls">
<span class="prev-btn flex-col icon" id="player-prev"></span>
<span class="play-btn flex-col icon" id="player-play"></span>
<span class="next-btn flex-col icon" id="player-next"></span>
<span class="timestamp flex-col" id="player-ts">0:00 / 0:00</span>
<div class="seek-bar seek-container flex-col grow" id="player-seekbar">
<div class="seek-inner"></div>
</div>
<div class="volume flex-col">
<span class="mute-btn flex-col icon" id="player-mute"></span>
<div class="volume-bar seek-container flex-col" id="player-volbar">
<div class="seek-inner"></div>
</div>
</div>
</div>
</div>
</div>
<div class="ctx-menu" id="menu" style="display: none;">
<ul>
<li><a class="ctx-item" data-action="play">Play Track</a></li>
<li><a class="ctx-item" data-action="queue">Queue Track</a></li>
<li><a class="ctx-item" data-action="download">Download</a></li>
</ul>
</div>
<div class="sidebar background" id="options-drop">
<div class="sidebar drop sb-abs"></div>
<div class="sidebar bar sb-abs">
<h2>Options</h2>
<div class="sidebar content" id="options">
<div class="separator">Playback</div>
<div class="option checkbox">
<label for="st-autoplay">Automatically play next track</label>
<input type="checkbox" id="st-autoplay" name="autoplay">
</div>
<div class="separator">Search</div>
<div class="option checkbox">
<label for="st-streamable">Include streamable tracks in searches (experimental)</label>
<input type="checkbox" id="st-streamable" name="streamable">
</div>
<div class="separator">Sorting</div>
<div class="option checkbox">
<label for="st-trackids" title="Shows track number in album instead when unchecked">Show track IDs</label>
<input type="checkbox" id="st-trackids" name="trackids">
</div>
<div class="option">
<label for="st-sortby">Sort tracks by</label>
<select id="st-sortby" name="sortby">
<option value="id">Track ID</option>
<option value="title">Title</option>
<option value="artist">Artist</option>
<option value="album">Album</option>
<option value="year">Year</option>
<option value="file">File name</option>
</select>
</div>
<div class="option">
<label for="st-sortdir">Sort direction</label>
<select id="st-sortdir" name="sortdir">
<option value="asc">Ascending order</option>
<option value="desc">Descending order</option>
</select>
</div>
<div class="separator">User</div>
<div class="option">
<label id="logged-in"></label>
<a href="user/logout">Log out</a>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="index.js"></script>
<script type="text/javascript" src="player.js"></script>
<script type="text/javascript" src="visuals.js"></script>
</body>
</html>