connect_events();
</script>
<style>
-html { scroll-padding-top: 5em; } /* so anchor jumps pad off sticky header */
body { background-color: {{background_color}}; }
table { width: 100%; }
td, th { vertical-align: top; text-align: left; margin: 0; padding: 0; }
<button id="btn_play" class="btn_if_can_play" onclick="player_command('play')">play</button>
· <span id="player_state" /></span> <a id="a_playing"></a> <span id="playing_tags"></span>
<hr />
-</div>
{% block body %}
{% endblock %}
</body>
{% block body %}
+</div>
+
<table>
<tr>
needed tags: <select id="tags_select" onchange="select_tag()"></select><br />
<span id="tags"></span>
<hr />
+</div>
<p>
known files (shown: <span id="files_count">?</span>):
<button onclick="inject_all();">inject all</button>
{% block css %}
+html { scroll-padding-top: 7.5em; } /* so anchor jumps pad off sticky header */
td.entry_control { width: 6em; }
{% endblock %}
<button onclick="player_command('rebuild')">rebuild</button>
<button onclick="player_command('empty')">empty</button>
<hr />
+</div>
<table id="playlist_rows">
</table>
{% endblock %}
{% block body %}
+</div>
+
<table id="sortable_table">
<tr>
<th><button class="sorter" onclick="sort_by(this, 'name'); ">name</button></th>
<form action="/{{page_names.yt_queries}}" method="POST" />
<input name="query" />
</form>
+</div>
+
<table>
<tr>
<th>retrieved at</th>
{% block body %}
<p>query: {{query}}</p>
+<hr />
+</div>
<table>
{% for video in videos %}
<tr>