ttvdrops/templates/base.html
2026-04-01 04:04:58 +02:00

271 lines
10 KiB
HTML

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="apple-touch-icon"
sizes="180x180"
href="{% static 'apple-touch-icon.png' %}" />
<meta name="apple-mobile-web-app-title" content="TTVDrops" />
<link rel="icon" type="image/x-icon" href="{% static 'favicon.ico' %}" />
<link rel="shortcut icon"
type="image/x-icon"
href="{% static 'favicon.ico' %}" />
<link rel="icon" type="image/svg+xml" href="{% static 'favicon.svg' %}" />
<link rel="icon"
type="image/png"
sizes="96x96"
href="{% static 'favicon-96x96.png' %}" />
<link rel="icon"
type="image/png"
sizes="32x32"
href="{% static 'favicon-32x32.png' %}" />
<link rel="icon"
type="image/png"
sizes="16x16"
href="{% static 'favicon-16x16.png' %}" />
<link rel="manifest" href="{% static 'site.webmanifest' %}" />
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="keywords" content="Twitch, Drops" />
<title>
{% block title %}
ttvdrops
{% endblock title %}
</title>
{% include "includes/meta_tags.html" %}
<!-- Feed discovery links -->
<!-- Read {% url 'core:docs_rss' %} for more details on available feeds -->
<link rel="alternate"
type="application/rss+xml"
title="All campaigns (RSS)"
href="{% url 'core:campaign_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All campaigns (Atom)"
href="{% url 'core:campaign_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All campaigns (Discord)"
href="{% url 'core:campaign_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="Newly added games (RSS)"
href="{% url 'core:game_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added games (Atom)"
href="{% url 'core:game_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added games (Discord)"
href="{% url 'core:game_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="Newly added organizations (RSS)"
href="{% url 'core:organization_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added organizations (Atom)"
href="{% url 'core:organization_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added organizations (Discord)"
href="{% url 'core:organization_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="Newly added reward campaigns (RSS)"
href="{% url 'core:reward_campaign_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added reward campaigns (Atom)"
href="{% url 'core:reward_campaign_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="Newly added reward campaigns (Discord)"
href="{% url 'core:reward_campaign_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="All Kick campaigns (RSS)"
href="{% url 'kick:campaign_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick campaigns (Atom)"
href="{% url 'kick:campaign_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick campaigns (Discord)"
href="{% url 'kick:campaign_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="All Kick games (RSS)"
href="{% url 'kick:game_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick games (Atom)"
href="{% url 'kick:game_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick games (Discord)"
href="{% url 'kick:game_feed_discord' %}" />
<link rel="alternate"
type="application/rss+xml"
title="All Kick organizations (RSS)"
href="{% url 'kick:organization_feed' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick organizations (Atom)"
href="{% url 'kick:organization_feed_atom' %}" />
<link rel="alternate"
type="application/atom+xml"
title="All Kick organizations (Discord)"
href="{% url 'kick:organization_feed_discord' %}" />
{% block extra_head %}
{% endblock extra_head %}
<style>
html {
color-scheme: light dark;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
line-height: 1.4;
padding: 0;
font-size: 115%;
max-width: 75%;
margin: 0 auto;
}
@media (max-width: 900px) {
body {
max-width: 95%;
}
}
table {
width: 100%;
}
th,
td {
padding: 8px;
text-align: left;
vertical-align: middle;
}
th {
background-color: Canvas;
color: CanvasText;
font-weight: bold;
}
tr:nth-child(even) {
background-color: color-mix(in srgb, Canvas 95%, CanvasText 5%);
}
td>img {
display: block;
height: 160px;
width: 160px;
object-fit: cover;
border-radius: 4px;
}
.campaign-benefits {
margin-top: 4px;
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.benefit-item {
display: inline-flex;
align-items: center;
padding: 2px 6px;
background-color: color-mix(in srgb, Canvas 90%, CanvasText 10%);
border-radius: 4px;
font-size: 0.9em;
}
.benefit-item img {
width: 24px !important;
height: 24px !important;
display: inline-block !important;
margin-right: 4px;
border-radius: 2px;
}
</style>
</head>
<body>
<nav>
<a href="{% url 'core:dashboard' %}">Dashboard</a> |
<a href="{% url 'core:docs_rss' %}">RSS</a> |
<a href="{% url 'core:debug' %}">Debug</a> |
<a href="{% url 'core:dataset_backups' %}">Dataset</a> |
<a href="https://github.com/sponsors/TheLovinator1">Donate</a> |
<a href="https://github.com/TheLovinator1/ttvdrops">GitHub</a> |
<form action="{% url 'core:search' %}" method="get" style="display: inline">
<input type="search"
name="q"
placeholder="Search..."
value="{{ request.GET.q }}" />
<button type="submit">Search</button>
</form>
<br />
<strong>Twitch</strong>
<a href="{% url 'twitch:dashboard' %}">Dashboard</a> |
<a href="{% url 'twitch:campaign_list' %}">Campaigns</a> |
<a href="{% url 'twitch:reward_campaign_list' %}">Rewards</a> |
<a href="{% url 'twitch:games_grid' %}">Games</a> |
<a href="{% url 'twitch:org_list' %}">Orgs</a> |
<a href="{% url 'twitch:channel_list' %}">Channels</a> |
<a href="{% url 'twitch:badge_list' %}">Badges</a> |
<a href="{% url 'twitch:emote_gallery' %}">Emotes</a> |
<a href="https://www.twitch.tv/drops/inventory">Inventory</a>
<br />
<strong>Kick</strong>
<a href="{% url 'kick:dashboard' %}">Dashboard</a> |
<a href="{% url 'kick:campaign_list' %}">Campaigns</a> |
<a href="{% url 'kick:game_list' %}">Games</a> |
<a href="{% url 'kick:organization_list' %}">Organizations</a>
<br />
<strong>Chzzk</strong>
<a href="{% url 'chzzk:dashboard' %}">Dashboard</a> |
<a href="{% url 'chzzk:campaign_list' %}">Campaigns</a>
<br />
<strong>Other sites</strong>
<a href="#">Steam</a> |
<a href="{% url 'youtube:index' %}">YouTube</a> |
<a href="#">TikTok</a> |
<a href="#">Discord</a>
</nav>
<hr />
{% if messages %}
<ul>
{% for message in messages %}
<li>
{% if message.level == DEFAULT_MESSAGE_LEVELS.ERROR %}Important:{% endif %}
{{ message|linebreaksbr }}
</li>
{% endfor %}
</ul>
{% endif %}
{% block content %}
<!-- Main content will be injected here -->
{% endblock content %}
<footer>
<div style="text-align: center; font-size: 0.9em; color: #6a737d">
<img src="{% static 'toycar_driving_lc.gif' %}"
alt="Animated toy car driving"
width="156"
height="156"
loading="lazy" />
<br />
CC0; Information wants to be free.
<br />
Data retrival possible because of <a href="https://github.com/DevilXD/TwitchDropsMiner">DevilXD/TwitchDropsMiner</a>.
<br />
Data fetched at :01, :16, :31, and :46.
</div>
</footer>
</body>
</html>