Archipelago/WebHost/templates/tracker.html

105 lines
4.6 KiB
HTML

{% extends 'layout.html' %}
{% block head %}
<meta http-equiv="refresh" content="60">
<title>Multiworld Tracker for Room {{ room.id }}</title>
<link rel="stylesheet" type="text/css"
href="https://cdn.datatables.net/v/bs4/jq-3.3.1/dt-1.10.21/fh-3.1.7/datatables.min.css"/>
<script type="text/javascript"
src="https://cdn.datatables.net/v/bs4/jq-3.3.1/dt-1.10.21/fh-3.1.7/datatables.min.js"></script>
<script>
$(document).ready(function () {
var tables = $(".table").DataTable({
"paging": false,
"ordering": true,
"info": false,
"fixedHeader": true,
"dom": "t"
});
$('#searchbox').keyup(function () {
tables.search($(this).val()).draw();
})
})
</script>
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename="static.css") }}"/>
{% endblock %}
{% block body %}
<input id="searchbox" class="form-control" type="text" placeholder="Search">
{% for team, players in inventory.items() %}
<table class="table table-striped table-bordered table-hover table-sm">
<thead class="thead-dark">
<tr>
<th>#</th>
<th>Name</th>
{% for name in tracking_names %}
{% if name in icons %}
<th style="text-align: center"><img height="32" width="32" style="object-fit: contain"
src="{{ icons[name] }}"
alt="{{ name|e }}"></th>
{% else %}
<th>{{ name|e }}</th>
{% endif %}
{% endfor %}
</tr>
</thead>
<tbody>
{% for player, items in players.items() %}
<tr>
<td class="table-info">{{ loop.index }}</td>
<td class="table-info">{{ player_names[(team, loop.index)] }}</td>
{% for id in tracking_ids %}
{% if items[id] %}
<td style="text-align: center" class="table-success">
{% if id in multi_items %}{{ items[id] }}{% else %}✔️{% endif %}</td>
{% else %}
<td></td>
{% endif %}
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
{% endfor %}
{% for team, players in checks_done.items() %}
<table class="table table-striped table-bordered table-hover table-sm">
<thead class="thead-dark">
<tr>
<th>#</th>
<th>Name</th>
{% for area in ordered_areas %}
{% if area in icons %}
<th style="text-align: center"><img height="32" width="32" style="object-fit: contain"
src="{{ icons[area] }}"
alt="{{ area }}"></th>
{% else %}
<th>{{ area }}</th>
{% endif %}
{% endfor %}
<th>Last Activity (UTC)</th>
</tr>
</thead>
<tbody>
{% for player, checks in players.items() %}
<tr>
<td class="table-info">{{ loop.index }}</td>
<td class="table-info">{{ player_names[(team, loop.index)]|e }}</td>
{% for area in ordered_areas %}
{% set checks_done = checks[area] %}
{% set checks_total = checks_in_area[area] %}
{% if checks_done == checks_total %}
<td style="text-align: center" class="table-success">
{{ checks_done }}/{{ checks_total }}</td>
{% else %}
<td style="text-align: center">{{ checks_done }}/{{ checks_total }}</td>
{% endif %}
{% endfor %}
{% if activity_timers[(team, player)] %}
<td class="table-info">{{ activity_timers[(team, player)].isoformat(sep=" ", timespec='minutes') }}</td>
{% else %}
<td class="table-warning">No activity</td>{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
{% endfor %}
{% endblock %}